* "git describe" in version of info file with "make info_git_describe" @ 2011-06-02 14:11 Michael Brand 2011-06-02 14:47 ` Bernt Hansen 0 siblings, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-06-02 14:11 UTC (permalink / raw) To: Bernt Hansen; +Cc: Org Mode Hi Bernt, hi all I appreciate that org-version adds the output of "git describe" to the org-version string if we are running from a git repository. Thanks to Bernt et al: http://thread.gmane.org/gmane.emacs.orgmode/16620 Now I suggest the same for the info file by using the new target "make info_git_describe" instead of "make info" for all who are running from a git repository and are not building a release. I am about to finish a patch for this but before posting it would like to know the reason for "(subst-char-in-string ?- ?. git-version t)" in org-version here: http://orgmode.org/w/?p=org-mode.git;a=blob;f=lisp/org.el;h=1ca03f48d86fac71837079f7c3219cb295a9c795;hb=HEAD#l217 Can I remove this substitution of "release_7.5-350-g3433" -> "release_7.5.350.g3433" from org-version in my patch or should "make info_git_describe" do the same and why? Michael ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-06-02 14:11 "git describe" in version of info file with "make info_git_describe" Michael Brand @ 2011-06-02 14:47 ` Bernt Hansen 2011-06-02 15:05 ` Michael Brand 0 siblings, 1 reply; 15+ messages in thread From: Bernt Hansen @ 2011-06-02 14:47 UTC (permalink / raw) To: Michael Brand; +Cc: Org Mode Michael Brand <michael.ch.brand@gmail.com> writes: > Hi Bernt, hi all > > I appreciate that org-version adds the output of "git describe" to the > org-version string if we are running > from a git repository. Thanks to Bernt et al: > http://thread.gmane.org/gmane.emacs.orgmode/16620 > > Now I suggest the same for the info file by using the new target "make > info_git_describe" instead of "make info" for all who are running from > a git repository and are not building a release. I am about to finish > a patch for this but before posting it would like to know the reason > for "(subst-char-in-string ?- ?. git-version t)" in org-version here: > http://orgmode.org/w/?p=org-mode.git;a=blob;f=lisp/org.el;h=1ca03f48d86fac71837079f7c3219cb295a9c795;hb=HEAD#l217 > > Can I remove this substitution of "release_7.5-350-g3433" -> > "release_7.5.350.g3433" from org-version in my patch or should "make > info_git_describe" do the same and why? Hi Michael, This was purely cosmetic. I didn't like the look of the mixed '.' and '-' in the version number originally. I think the two reported version numbers should be consistent between the org-version function and the documentation version function you are proposing. If you want to remove the substitution please also do so in the org-version code so the reported numbers are consistent. Regards, -- Bernt ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-06-02 14:47 ` Bernt Hansen @ 2011-06-02 15:05 ` Michael Brand 2011-06-02 19:36 ` Michael Brand 0 siblings, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-06-02 15:05 UTC (permalink / raw) To: Bernt Hansen; +Cc: Org Mode On Thu, Jun 2, 2011 at 16:47, Bernt Hansen <bernt@norang.ca> wrote: > Michael Brand <michael.ch.brand@gmail.com> writes: >> Can I remove this substitution of "release_7.5-350-g3433" -> >> "release_7.5.350.g3433" from org-version in my patch or should "make >> info_git_describe" do the same and why? > > Hi Michael, > > This was purely cosmetic. I didn't like the look of the mixed '.' and > '-' in the version number originally. ... and '_' ... :-) > I think the two reported version > numbers should be consistent between the org-version function and the > documentation version function you are proposing. > > If you want to remove the substitution please also do so in the > org-version code so the reported numbers are consistent. Since I would like to give the more often used "git describe" precedence I will make org-version and "make info_git_describe" consistent with git. The ".dirty" postfix of org-version I will leave untouched in org-version of course and support also in "make info_git_describe". Michael ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-06-02 15:05 ` Michael Brand @ 2011-06-02 19:36 ` Michael Brand 2011-10-16 19:12 ` Michael Brand 0 siblings, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-06-02 19:36 UTC (permalink / raw) To: Org Mode; +Cc: Bernt Hansen [-- Attachment #1: Type: text/plain, Size: 416 bytes --] The patch is ready and attached. Michael On Thu, Jun 2, 2011 at 17:05, Michael Brand <michael.ch.brand@gmail.com> wrote: [...] > Since I would like to give the more often used "git describe" > precedence I will make org-version and "make info_git_describe" > consistent with git. The ".dirty" postfix of org-version I will leave > untouched in org-version of course and support also in "make > info_git_describe". [-- Attachment #2: 0001-Use-git-describe-in-version-of-info-file-with-make-i.patch --] [-- Type: application/octet-stream, Size: 5182 bytes --] From cc5e0cdac8a9c50e8fc7eca6a9cb83eea52ef091 Mon Sep 17 00:00:00 2001 From: Michael Brand <michael.ch.brand@gmail.com> Date: Thu, 2 Jun 2011 21:32:09 +0200 Subject: [PATCH] Use git describe in version of info file with make info_git_describe * Makefile (info_git_describe): New target. (release): Remove "-a" that has become idle already before from command "UTILITIES/set-version.pl". (fixrelease): Remove command "UTILITIES/set-version.pl -o $(TAG)" that has become idle already before. * UTILITIES/set-version.pl (org-texi): New option "--org.texi [<optional_file>]". * org.el (org-version): Consistent with "git describe". The new Makefile target info_git_describe builds doc/org like the target "info" but reflects the output of the command "git describe" in the version, similar to the Org mode function org-version. --- Makefile | 13 +++++++++++-- UTILITIES/set-version.pl | 35 +++++++++++++++++++++++++---------- lisp/org.el | 1 - 3 files changed, 36 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index 239ab2e..15b408d 100644 --- a/Makefile +++ b/Makefile @@ -281,6 +281,16 @@ html_guide: doc/orgguide.texi info: doc/org +# The following target builds doc/org like the target "info" but +# reflects the output of the command "git describe" in the version, +# similar to the Org mode function org-version +info_git_describe: TAG=$(shell git describe --abbrev=4 HEAD)$(shell \ + test "`git diff-index --name-only HEAD --`" && printf '.dirty') +info_git_describe: doc/org.texi + cp doc/org.texi /tmp + UTILITIES/set-version.pl '$(TAG)' --org.texi /tmp/org.texi + $(MAKEINFO) --no-split /tmp/org.texi -o doc/org + pdf: doc/org.pdf doc/orgguide.pdf card: doc/orgcard.pdf doc/orgcard_letter.pdf doc/orgcard.txt @@ -316,7 +326,7 @@ release: git push -f origin maint git checkout master git merge -s ours maint - UTILITIES/set-version.pl -a $(TAG) + UTILITIES/set-version.pl $(TAG) git commit -a -m "Update website to show $(TAG) as current release" git push @@ -344,7 +354,6 @@ fixrelease: git push -f origin maint git checkout master git merge -s ours maint - UTILITIES/set-version.pl -o $(TAG) git commit -a -m "Update website to show $(TAG) as current release" git push diff --git a/UTILITIES/set-version.pl b/UTILITIES/set-version.pl index ed185ea..47d439b 100755 --- a/UTILITIES/set-version.pl +++ b/UTILITIES/set-version.pl @@ -1,43 +1,58 @@ #!/usr/bin/perl $version = $ARGV[0]; -if ($version eq "--all" or $version eq "-a") { + +# if no further option is present then default to "all" +if (not $ARGV[1]) { $all = 1; - $version = $ARGV[1] } -if ($version eq "--only" or $version eq "-o") { - $only = 1; - $version = $ARGV[1] +# parse option "--org.texi [<optional_file>]" +# (only simple parsing since no more than one option supported yet) +if ($ARGV[1] eq "--org.texi") { + $org_texi_opt = 1; + if ($ARGV[2]) { + $org_texi_file = "$ARGV[2]"; + } } die "No version given" unless $version=~/\S/; $date = `date "+%B %Y"`; chomp $date; $year = `date "+%Y"` ; chomp $year; -print STDERR "Changing version to \"$version\" and date to \"$date\" in all relevant files\n" ; - -if (not $only) { +print STDERR "Changing version to \"$version\" and date to \"$date\" in the following files:\n" ; +if ($all) { print STDERR join("\n",glob("lisp/*.el")),"\n"; $cmd = qq{s/^(;; Version:)\\s+(\\S+)[ \t]*\$/\$1 $version/;s/^(\\(defconst org-version )"(\\S+)"/\$1"$version"/}; $c1 = "perl -pi -e '$cmd' lisp/*.el"; system($c1); +} - print STDERR "doc/org.texi\n"; +if ($all or $org_texi_opt) { + if (not "$org_texi_file") { + $org_texi_file = "doc/org.texi"; + } + print STDERR "$org_texi_file\n"; $cmd = qq{s/^(\\\@set VERSION)\\s+(\\S+)[ \t]*\$/\$1 $version/;s/^(\\\@set DATE)\\s+(.*)\$/\$1 $date/;}; - $c1 = "perl -pi -e '$cmd' doc/org.texi"; + $c1 = "perl -pi -e '$cmd' '$org_texi_file'"; system($c1); +} +if ($all) { print STDERR "doc/orgguide.texi\n"; $cmd = qq{s/^(\\\@set VERSION)\\s+(\\S+)[ \t]*\$/\$1 $version/;s/^(\\\@set DATE)\\s+(.*)\$/\$1 $date/;}; $c1 = "perl -pi -e '$cmd' doc/orgguide.texi"; system($c1); +} +if ($all) { print STDERR "doc/orgcard.tex\n"; $cmd = qq{s/^\\\\def\\\\orgversionnumber\\{\\S+\\}/\\\\def\\\\orgversionnumber{$version}/;s/\\\\def\\\\versionyear\\{\\S+\\}/\\\\def\\\\versionyear{$year}/;s/\\\\def\\\\year\\{\\S+\\}/\\\\def\\\\year{$year}/;}; $c1 = "perl -pi -e '$cmd' doc/orgcard.tex"; system($c1); +} +if ($all) { print STDERR "README_DIST\n"; $cmd = qq{s/^(The version of this release is:)\\s+(\\S+)[ \t]*\$/\$1 $version/;}; $c1 = "perl -pi -e '$cmd' README_DIST"; diff --git a/lisp/org.el b/lisp/org.el index 1ca03f4..6c20705 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -214,7 +214,6 @@ With prefix arg HERE, insert it at point." (with-current-buffer "*Shell Command Output*" (goto-char (point-min)) (setq git-version (buffer-substring (point) (point-at-eol)))) - (subst-char-in-string ?- ?. git-version t) (when (string-match "\\S-" (shell-command-to-string "git diff-index --name-only HEAD --")) -- 1.7.4.2 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-06-02 19:36 ` Michael Brand @ 2011-10-16 19:12 ` Michael Brand 2011-10-21 14:44 ` Carsten Dominik 0 siblings, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-10-16 19:12 UTC (permalink / raw) To: Org Mode; +Cc: Bernt Hansen [-- Attachment #1: Type: text/plain, Size: 869 bytes --] Hi all I made a new patch replacing the previous, now considering the Makefile targets "target" and "help" introduced meanwhile by Achim Gratz and with a shorter name "info-vg" for the new target for easier typing of the make command. The previous patch attachment had a wrong mime type, could therefore not be caught by patchwork and has not been accepted. Michael On Thu, Jun 2, 2011 at 21:36, Michael Brand <michael.ch.brand@gmail.com> wrote: > The patch is ready and attached. > > On Thu, Jun 2, 2011 at 17:05, Michael Brand <michael.ch.brand@gmail.com> wrote: > [...] >> Since I would like to give the more often used "git describe" >> precedence I will make org-version and "make info_git_describe" >> consistent with git. The ".dirty" postfix of org-version I will leave >> untouched in org-version of course and support also in "make >> info_git_describe". [-- Attachment #2: 0001-Makefile-info-vg-set-info-version-to-git-describe.patch.txt --] [-- Type: text/plain, Size: 5459 bytes --] From 148ddbe2b2bdc45d4e53312669dab207d51d9fd8 Mon Sep 17 00:00:00 2001 From: Michael Brand <michael.ch.brand@gmail.com> Date: Sun, 16 Oct 2011 21:06:35 +0200 Subject: [PATCH] Makefile info-vg: set info version to git describe * Makefile (info-vg): New target. (release): Remove "-a" that has become idle already before from command "UTILITIES/set-version.pl". (fixrelease): Remove command "UTILITIES/set-version.pl -o $(TAG)" that has become idle already before. (targets help): Include new target info-vg. * UTILITIES/set-version.pl (org-texi): New option "--org.texi [<optional_file>]". * org.el (org-version): Output format consistent with "git describe". The new Makefile target info-vg builds the info file doc/org like the target "info" but sets the info version to the output of the command "git describe". --- Makefile | 13 +++++++++++-- UTILITIES/set-version.pl | 35 +++++++++++++++++++++++++---------- lisp/org.el | 1 - 3 files changed, 36 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index 8b9aa4d..30bc578 100644 --- a/Makefile +++ b/Makefile @@ -280,6 +280,15 @@ html_guide: doc/orgguide.texi info: doc/org +# The following target builds the info file doc/org like the target "info" +# but sets the info version to the output of the command "git describe" +info-vg: TAG=$(shell git describe --abbrev=4 HEAD)$(shell \ + test "`git diff-index --name-only HEAD --`" && printf '.dirty') +info-vg: doc/org.texi + cp doc/org.texi /tmp + UTILITIES/set-version.pl '$(TAG)' --org.texi /tmp/org.texi + $(MAKEINFO) --no-split /tmp/org.texi -o doc/org + pdf: doc/org.pdf doc/orgguide.pdf card: doc/orgcard.pdf doc/orgcard_letter.pdf doc/orgcard.txt @@ -315,7 +324,7 @@ release: git push -f origin maint git checkout master git merge -s ours maint - UTILITIES/set-version.pl -a $(TAG) + UTILITIES/set-version.pl $(TAG) git commit -a -m "Update website to show $(TAG) as current release" git push @@ -343,7 +352,6 @@ fixrelease: git push -f origin maint git checkout master git merge -s ours maint - UTILITIES/set-version.pl -o $(TAG) git commit -a -m "Update website to show $(TAG) as current release" git push @@ -521,6 +529,7 @@ targets help: @echo "" @echo "make doc - make all documentation" @echo "make info - make Info documentation" + @echo "make info-vg - make Info doc, set info version to git describe" @echo "make html - make HTML documentation" @echo "make pdf - make pdf documentation" @echo "make card - make refcards documentation" diff --git a/UTILITIES/set-version.pl b/UTILITIES/set-version.pl index ed185ea..47d439b 100755 --- a/UTILITIES/set-version.pl +++ b/UTILITIES/set-version.pl @@ -1,43 +1,58 @@ #!/usr/bin/perl $version = $ARGV[0]; -if ($version eq "--all" or $version eq "-a") { + +# if no further option is present then default to "all" +if (not $ARGV[1]) { $all = 1; - $version = $ARGV[1] } -if ($version eq "--only" or $version eq "-o") { - $only = 1; - $version = $ARGV[1] +# parse option "--org.texi [<optional_file>]" +# (only simple parsing since no more than one option supported yet) +if ($ARGV[1] eq "--org.texi") { + $org_texi_opt = 1; + if ($ARGV[2]) { + $org_texi_file = "$ARGV[2]"; + } } die "No version given" unless $version=~/\S/; $date = `date "+%B %Y"`; chomp $date; $year = `date "+%Y"` ; chomp $year; -print STDERR "Changing version to \"$version\" and date to \"$date\" in all relevant files\n" ; - -if (not $only) { +print STDERR "Changing version to \"$version\" and date to \"$date\" in the following files:\n" ; +if ($all) { print STDERR join("\n",glob("lisp/*.el")),"\n"; $cmd = qq{s/^(;; Version:)\\s+(\\S+)[ \t]*\$/\$1 $version/;s/^(\\(defconst org-version )"(\\S+)"/\$1"$version"/}; $c1 = "perl -pi -e '$cmd' lisp/*.el"; system($c1); +} - print STDERR "doc/org.texi\n"; +if ($all or $org_texi_opt) { + if (not "$org_texi_file") { + $org_texi_file = "doc/org.texi"; + } + print STDERR "$org_texi_file\n"; $cmd = qq{s/^(\\\@set VERSION)\\s+(\\S+)[ \t]*\$/\$1 $version/;s/^(\\\@set DATE)\\s+(.*)\$/\$1 $date/;}; - $c1 = "perl -pi -e '$cmd' doc/org.texi"; + $c1 = "perl -pi -e '$cmd' '$org_texi_file'"; system($c1); +} +if ($all) { print STDERR "doc/orgguide.texi\n"; $cmd = qq{s/^(\\\@set VERSION)\\s+(\\S+)[ \t]*\$/\$1 $version/;s/^(\\\@set DATE)\\s+(.*)\$/\$1 $date/;}; $c1 = "perl -pi -e '$cmd' doc/orgguide.texi"; system($c1); +} +if ($all) { print STDERR "doc/orgcard.tex\n"; $cmd = qq{s/^\\\\def\\\\orgversionnumber\\{\\S+\\}/\\\\def\\\\orgversionnumber{$version}/;s/\\\\def\\\\versionyear\\{\\S+\\}/\\\\def\\\\versionyear{$year}/;s/\\\\def\\\\year\\{\\S+\\}/\\\\def\\\\year{$year}/;}; $c1 = "perl -pi -e '$cmd' doc/orgcard.tex"; system($c1); +} +if ($all) { print STDERR "README_DIST\n"; $cmd = qq{s/^(The version of this release is:)\\s+(\\S+)[ \t]*\$/\$1 $version/;}; $c1 = "perl -pi -e '$cmd' README_DIST"; diff --git a/lisp/org.el b/lisp/org.el index 6aba1a2..27c2f2c 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -221,7 +221,6 @@ (defun org-version (&optional here) (with-current-buffer "*Shell Command Output*" (goto-char (point-min)) (setq git-version (buffer-substring (point) (point-at-eol)))) - (subst-char-in-string ?- ?. git-version t) (when (string-match "\\S-" (shell-command-to-string "git diff-index --name-only HEAD --")) -- 1.7.4.2 ^ permalink raw reply related [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-16 19:12 ` Michael Brand @ 2011-10-21 14:44 ` Carsten Dominik 2011-10-21 16:13 ` Bernt Hansen 2011-10-26 16:07 ` Michael Brand 0 siblings, 2 replies; 15+ messages in thread From: Carsten Dominik @ 2011-10-21 14:44 UTC (permalink / raw) To: Michael Brand; +Cc: Bernt Hansen, Org Mode, Bastien Guerry Hi, is there an agreement that this is a good patch? I have not followed the discussion..... - Carsten On Oct 16, 2011, at 9:12 PM, Michael Brand wrote: > Hi all > > I made a new patch replacing the previous, now considering the > Makefile targets "target" and "help" introduced meanwhile by Achim > Gratz and with a shorter name "info-vg" for the new target for easier > typing of the make command. > > The previous patch attachment had a wrong mime type, could therefore > not be caught by patchwork and has not been accepted. > > Michael > > On Thu, Jun 2, 2011 at 21:36, Michael Brand <michael.ch.brand@gmail.com> wrote: >> The patch is ready and attached. >> >> On Thu, Jun 2, 2011 at 17:05, Michael Brand <michael.ch.brand@gmail.com> wrote: >> [...] >>> Since I would like to give the more often used "git describe" >>> precedence I will make org-version and "make info_git_describe" >>> consistent with git. The ".dirty" postfix of org-version I will leave >>> untouched in org-version of course and support also in "make >>> info_git_describe". > <0001-Makefile-info-vg-set-info-version-to-git-describe.patch.txt> - Carsten ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-21 14:44 ` Carsten Dominik @ 2011-10-21 16:13 ` Bernt Hansen 2011-10-23 22:50 ` Bernt Hansen 2011-10-26 16:07 ` Michael Brand 1 sibling, 1 reply; 15+ messages in thread From: Bernt Hansen @ 2011-10-21 16:13 UTC (permalink / raw) To: Carsten Dominik; +Cc: Bastien Guerry, Michael Brand, Org Mode I still have this as a TODO item for review. I'll take a look at it this weekend. -Bernt Carsten Dominik <carsten.dominik@gmail.com> writes: > Hi, > > is there an agreement that this is a good patch? I have not followed the discussion..... > > - Carsten > > On Oct 16, 2011, at 9:12 PM, Michael Brand wrote: > >> Hi all >> >> I made a new patch replacing the previous, now considering the >> Makefile targets "target" and "help" introduced meanwhile by Achim >> Gratz and with a shorter name "info-vg" for the new target for easier >> typing of the make command. >> >> The previous patch attachment had a wrong mime type, could therefore >> not be caught by patchwork and has not been accepted. >> >> Michael >> >> On Thu, Jun 2, 2011 at 21:36, Michael Brand <michael.ch.brand@gmail.com> wrote: >>> The patch is ready and attached. >>> >>> On Thu, Jun 2, 2011 at 17:05, Michael Brand <michael.ch.brand@gmail.com> wrote: >>> [...] >>>> Since I would like to give the more often used "git describe" >>>> precedence I will make org-version and "make info_git_describe" >>>> consistent with git. The ".dirty" postfix of org-version I will leave >>>> untouched in org-version of course and support also in "make >>>> info_git_describe". >> <0001-Makefile-info-vg-set-info-version-to-git-describe.patch.txt> > > - Carsten ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-21 16:13 ` Bernt Hansen @ 2011-10-23 22:50 ` Bernt Hansen 0 siblings, 0 replies; 15+ messages in thread From: Bernt Hansen @ 2011-10-23 22:50 UTC (permalink / raw) To: Carsten Dominik; +Cc: Bastien Guerry, Michael Brand, Org Mode >> On Oct 16, 2011, at 9:12 PM, Michael Brand wrote: >> >>> I made a new patch replacing the previous, now considering the >>> Makefile targets "target" and "help" introduced meanwhile by Achim >>> Gratz and with a shorter name "info-vg" for the new target for easier >>> typing of the make command. >>> >>> The previous patch attachment had a wrong mime type, could therefore >>> not be caught by patchwork and has not been accepted. >>> >>> Michael > Carsten Dominik <carsten.dominik@gmail.com> writes: > >> Hi, >> >> is there an agreement that this is a good patch? I have not followed the discussion..... >> >> - Carsten >> I'm fine with the actual text change for the version number so it matches the git describe command. I'm not sure if all of the make target changes make sense since I don't normally use those. Regards, Bernt ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-21 14:44 ` Carsten Dominik 2011-10-21 16:13 ` Bernt Hansen @ 2011-10-26 16:07 ` Michael Brand 2011-10-26 16:56 ` Achim Gratz 1 sibling, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-10-26 16:07 UTC (permalink / raw) To: Carsten Dominik, Bastien Guerry; +Cc: Bernt Hansen, Org Mode Hi Carsten and Bastien On Fri, Oct 21, 2011 at 16:44, Carsten Dominik <carsten.dominik@gmail.com> wrote: > is there an agreement that this is a good patch? I have not followed the discussion..... Let me summarize: > On Oct 16, 2011, at 9:12 PM, Michael Brand wrote: >> The previous patch attachment had a wrong mime type, could therefore >> not be caught by patchwork and has not been accepted. Only a clarification about "has not been accepted": The first version of my patch has just not been applied, there was no disagreement or reject. The second version was only to get my patch into patchwork at all and to rebase it at the design level. For the change in org-version (substitution of the "-" from the git tag delivered by git describe with "."): As Bernt is the author of this substitution I originally asked him if I could remove it to align with the output of git describe and he agreed. He now has reviewed this part of the second version of my patch and he is fine with it. There has not yet been any review or comment on the changes in the Makefile and in UTILITIES/set-version.pl. I would be happy if these parts could be reviewed too. Michael ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-26 16:07 ` Michael Brand @ 2011-10-26 16:56 ` Achim Gratz 2011-10-27 18:24 ` Michael Brand 0 siblings, 1 reply; 15+ messages in thread From: Achim Gratz @ 2011-10-26 16:56 UTC (permalink / raw) To: emacs-orgmode Michael Brand <michael.ch.brand@gmail.com> writes: > There has not yet been any review or comment on the changes in the > Makefile and in UTILITIES/set-version.pl. I would be happy if these > parts could be reviewed too. The set-version.pl file may be obsolete (perl is still required), there is no version number in the individual lisp files anymore. For installation I've already added a replacement of the version cookie in org.el with git-describe in my own fork of org-mode ([1] - I don't know if you've checked it). It would be easy to do the same for org-texi, albeit before compilation, not only during install. I I agree it would be useful to have the full version recorded in the resulting manual, but you really cannot alter the source file (git status would always be dirty or the version would be wrong, wouldn't it? :-). [1] http://permalink.gmane.org/gmane.emacs.orgmode/44567 Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Factory and User Sound Singles for Waldorf rackAttack: http://Synth.Stromeko.net/Downloads.html#WaldorfSounds ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-26 16:56 ` Achim Gratz @ 2011-10-27 18:24 ` Michael Brand 2011-10-28 9:26 ` Achim Gratz 0 siblings, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-10-27 18:24 UTC (permalink / raw) To: Achim Gratz; +Cc: emacs-orgmode [-- Attachment #1: Type: text/plain, Size: 1772 bytes --] Hi Achim Thank you for your review. On Wed, Oct 26, 2011 at 18:56, Achim Gratz <Stromeko@nexgo.de> wrote: > The set-version.pl file may be obsolete (perl is still required), If set-version.pl would be obsolete my patch would be much shorter and I would use something even more portable than perl to change the version in /tmp/org.texi like the POSIX/SUS ed command, used inline in the Makefile. Would you agree? > there is no version number in the individual lisp files anymore. For > installation I've already added a replacement of the version cookie in > org.el with git-describe in my own fork of org-mode ([1] - I don't know if > you've checked it). It would be easy to do the same for org-texi, > albeit before compilation, not only during install. I can remember some discussion but haven't realized that the outcome is a pending merge. Hence I declare version 2 of my patch as "Changes Requested" on patchwork (can't change this myself) and will rebase it against your changes. > I agree it would be useful to have the full version recorded in the > resulting manual, but you really cannot alter the source file (git > status would always be dirty or the version would be wrong, wouldn't it? > :-). Yes, good point. I was aware of that and therefore for the target "info-vg", doc/org.texi is copied to /tmp/org.texi, altered only there and makeinfo reads from there. And I _added_ the target "info-vg" because implementing the same functionality in the target "info" itself, by either adding an auto-detect whether git describe is available (like org-version does) or using org-version itself, is not an option. One still needs to have the unchanged target "info" to build a release with the info version not possibly influenced by git describe. Michael [-- Attachment #2: Type: text/html, Size: 2110 bytes --] ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-27 18:24 ` Michael Brand @ 2011-10-28 9:26 ` Achim Gratz 2011-10-29 11:40 ` Michael Brand 0 siblings, 1 reply; 15+ messages in thread From: Achim Gratz @ 2011-10-28 9:26 UTC (permalink / raw) To: emacs-orgmode Michael Brand <michael.ch.brand@gmail.com> writes: > If set-version.pl would be obsolete my patch would be much shorter and > I would use something even more portable than perl to change the > version in /tmp/org.texi like the POSIX/SUS ed command, used inline in > the Makefile. Would you agree? I don't know if it is still used by the maintainers for preparing a release. I do know that there are no version numbers in the source files any more, so that part of set-version.pl surely is obsolete. The other parts may become obsolete if whatever is still in used can be moved to make. I've already started to reduce the reliance on perl in my branch, switching to sed where possible. > I can remember some discussion but haven't realized that the outcome > is a pending merge. Hence I declare version 2 of my patch as "Changes > Requested" on patchwork (can't change this myself) and will rebase it > against your changes. Again I don't know if or when this gets merged. I've already used up my TINYCHANGEs and hit an impasse with the FSF papers that I don't know how to resolve... :-( Then again, the build system doesn't really become part of Emacs, but it's up to the maintainers to decide. > Yes, good point. I was aware of that and therefore for the target > "info-vg", doc/org.texi is copied to /tmp/org.texi, altered only there > and makeinfo reads from there. I'd much prefer to inject the version in a different way, not making an altered copy that the build works from. The result is the same, but it doesn't feel OK... so probably the solution should be to get the version injected via some @set in an @include file (that's the recommended way from the Texinfo perspective, anyway) that is produced by make whenever the source file changes. > And I _added_ the target "info-vg" because implementing the same > functionality in the target "info" itself, by either adding an > auto-detect whether git describe is available (like org-version does) > or using org-version itself, is not an option. One still needs to have > the unchanged target "info" to build a release with the info version > not possibly influenced by git describe. I posit that if it's worth to have that (I'd say yes), ``make info´´ should do that, in a way that is compatible with version control. Anyway, I've implemented the requested functionality into my Makefile fork, please test. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Waldorf MIDI Implementation & additional documentation: http://Synth.Stromeko.net/Downloads.html#WaldorfDocs ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-28 9:26 ` Achim Gratz @ 2011-10-29 11:40 ` Michael Brand 2011-10-30 7:01 ` Achim Gratz 0 siblings, 1 reply; 15+ messages in thread From: Michael Brand @ 2011-10-29 11:40 UTC (permalink / raw) To: Achim Gratz; +Cc: emacs-orgmode Hi Achim On Fri, Oct 28, 2011 at 11:26, Achim Gratz <Stromeko@nexgo.de> wrote: > Again I don't know if or when this gets merged. I've already used up my > TINYCHANGEs and hit an impasse with the FSF papers that I don't know how > to resolve... :-( Then again, the build system doesn't really become > part of Emacs, but it's up to the maintainers to decide. I hope that this can be solved and that your Makefile restructuring will be merged into master. > I'd much prefer to inject the version in a different way, not making an > altered copy that the build works from. The result is the same, but it > doesn't feel OK... so probably the solution should be to get the version > injected via some @set in an @include file (that's the recommended way > from the Texinfo perspective, anyway) that is produced by make whenever > the source file changes. I prefer this cleaner solution you have just implemented too of course. >> And I _added_ the target "info-vg" because implementing the same >> functionality in the target "info" itself, by either adding an >> auto-detect whether git describe is available (like org-version does) >> or using org-version itself, is not an option. One still needs to have >> the unchanged target "info" to build a release with the info version >> not possibly influenced by git describe. > > I posit that if it's worth to have that (I'd say yes), ``make info´´ > should do that, in a way that is compatible with version control. Is it possible with your current "make info" to get an info file without git describe for a release like ELPA when made from within a git repo and also for Emacs when building Emacs from a bzr-mirroring git repo? > Anyway, I've implemented the requested functionality into my Makefile > fork, please test. Thank you for this implementation. Since my patch discussed here is now superseded by your branch I thought it would be cleaner to put my comments to the sub-thread "Makefile restructuring" starting here: http://lists.gnu.org/archive/html/emacs-orgmode/2011-07/msg00680.html Michael ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-29 11:40 ` Michael Brand @ 2011-10-30 7:01 ` Achim Gratz 2011-10-30 14:20 ` Michael Brand 0 siblings, 1 reply; 15+ messages in thread From: Achim Gratz @ 2011-10-30 7:01 UTC (permalink / raw) To: emacs-orgmode Michael Brand <michael.ch.brand@gmail.com> writes: > Is it possible with your current "make info" to get an info file > without git describe for a release like ELPA when made from within a > git repo Why should the git-describe info not be part of the ELPA tarball? If there is a good reason not to include it (I think it is useful to know which commit the ELPA archive was built on) one could alter the include file before rolling the tar ball of course. > and also for Emacs when building Emacs from a bzr-mirroring > git repo? Emacs does have its own build system. So there's be two possibilities: a) just copy over git-decribe.texi as is or b) alter it and put in any information that's deemed more appropriate before it gets copied over to bzr. It might even be useful to actually include the information back into the org.texi file to have a single file. Once it is decided how this should be handled, it can all become part of the makefile of course. Please note that the name "git-describe.texi" is only a suggestion and should probably be changed later on to something like "version.texi". >> Anyway, I've implemented the requested functionality into my Makefile >> fork, please test. > > Thank you for this implementation. Since my patch discussed here is > now superseded by your branch I thought it would be cleaner to put my > comments to the sub-thread "Makefile restructuring" starting here: > http://lists.gnu.org/archive/html/emacs-orgmode/2011-07/msg00680.html Thank you. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Factory and User Sound Singles for Waldorf Q+, Q and microQ: http://Synth.Stromeko.net/Downloads.html#WaldorfSounds ^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: "git describe" in version of info file with "make info_git_describe" 2011-10-30 7:01 ` Achim Gratz @ 2011-10-30 14:20 ` Michael Brand 0 siblings, 0 replies; 15+ messages in thread From: Michael Brand @ 2011-10-30 14:20 UTC (permalink / raw) To: Achim Gratz; +Cc: emacs-orgmode Hi Achim On Sun, Oct 30, 2011 at 08:01, Achim Gratz <Stromeko@nexgo.de> wrote: > Why should the git-describe info not be part of the ELPA tarball? If > there is a good reason not to include it (I think it is useful > to know which commit the ELPA archive was built on) one could alter the > include file before rolling the tar ball of course. Now I see. No need for that, I didn't take into account that git describe is not used to _replace_ "7.7" any more as my simpler implementation did but is just _added_. Again the cleaner solution, without the need for different behaviors. Michael ^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2011-10-30 14:20 UTC | newest] Thread overview: 15+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-06-02 14:11 "git describe" in version of info file with "make info_git_describe" Michael Brand 2011-06-02 14:47 ` Bernt Hansen 2011-06-02 15:05 ` Michael Brand 2011-06-02 19:36 ` Michael Brand 2011-10-16 19:12 ` Michael Brand 2011-10-21 14:44 ` Carsten Dominik 2011-10-21 16:13 ` Bernt Hansen 2011-10-23 22:50 ` Bernt Hansen 2011-10-26 16:07 ` Michael Brand 2011-10-26 16:56 ` Achim Gratz 2011-10-27 18:24 ` Michael Brand 2011-10-28 9:26 ` Achim Gratz 2011-10-29 11:40 ` Michael Brand 2011-10-30 7:01 ` Achim Gratz 2011-10-30 14:20 ` Michael Brand
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).