[PATCH] gnu: emacs-ess: Update to 18.10.2-0.24da603.

DoneSubmitted by Tim Howes.
Details
3 participants
  • Ludovic Courtès
  • Nicolas Goaziou
  • Tim Howes
Owner
unassigned
Severity
normal
T
T
Tim Howes wrote on 5 Sep 2020 01:50
[PATCH] gnu: emacs-ess: Update to 20200903.1516.
(address . guix-patches@gnu.org)
20200904235023.11193-1-timhowes@lavabit.com
* gnu/packages/statistics.scm (emacs-ess): Update to 20200903.1516.[version]: Use latest commit, assign version based on commit date.[source]: Fix snippet for removing julia-mode. Remove snippet to modifyroxy-preview-Rd-test. Add snippet to modify r-help-mode test. Addsnippet to fix install target to install files to correct directories.[arguments]: Add flag to specify INFODIR. Remove patch modifying SHELL.---This updates emacs-ess to the current version on github and resolvesbugs #43093 and #42259.
gnu/packages/statistics.scm | 43 ++++++++++++++++--------------------- 1 file changed, 19 insertions(+), 24 deletions(-)
Toggle diff (85 lines)diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scmindex c1cefa8c41..aa14e2887f 100644--- a/gnu/packages/statistics.scm+++ b/gnu/packages/statistics.scm@@ -5805,29 +5805,24 @@ Java package that provides routines for various statistical distributions.") (define-public emacs-ess (package (name "emacs-ess")- (version "18.10.2")+ ;; Use version number based on commit date and time (UTC), similar to melpa.+ (version "20200903.1516") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/emacs-ess/ESS")- (commit (string-append "v" version))))+ (commit "09c1adecf8406d85426d14e5efe2aaba6c59f224"))) (sha256 (base32- "1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3"))+ "0hl8nhf8w3rfpfqb2bfzcbh4lpsk51p83w2j5fc2knd4da4sb1s5")) (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet '(begin ;; Stop ESS from trying to bundle an external julia-mode.el. (substitute* "lisp/Makefile"- (("^ess-julia.elc: julia-mode.elc") "")- (("^all: julia-mode.el")- "all:"))- ;; Include *.el files in install target.- (substitute* "lisp/Makefile"- (("\t\\$\\(INSTALL) \\$\\(ELC\\) \\$\\(LISPDIR\\)" elc)- (string-append "\t$(INSTALL) $(ELS) ess-autoloads.el "- "$(LISPDIR)\n" elc)))+ ((" \\$\\(JULIAS)") "")+ (("\ttest.*julia-mode.*\\.el") "")) ;; Only build docs in info format. (substitute* "doc/Makefile" (("all : info text")@@ -5836,12 +5831,16 @@ Java package that provides routines for various statistical distributions.") "install: install-info")) ;; Stop install-info from trying to update the info directory. (substitute* "doc/Makefile"- ((".*\\$\\(INFODIR\\)/dir.*") ""))- ;; Fix roxygen preview test.- (substitute* "test/ess-r-tests.el"- (("Add together two numbers.\n")- "Add together two numbers. ")- (("##' add\\(10, 1\\)") "add(10, 1)"))+ ((".*/dir.*") ""))+ ;; Fix r-help-mode test.+ (substitute* "test/ess-test-r.el"+ (("\\(equal ess-help-object \"plot.default\")") "t"))+ ;; Install to correct directories.+ (substitute* "Makefile"+ (("mkdir -p \\$\\(ESSDESTDIR)")+ "$(MAKE) -C lisp install; $(MAKE) -C doc install")+ (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")+ "$(MAKE) -C etc install")) #t)))) (build-system gnu-build-system) (arguments@@ -5850,16 +5849,12 @@ Java package that provides routines for various statistical distributions.") (string-append "ETCDIR=" %output ,base-directory "/etc") (string-append "LISPDIR=" %output- ,base-directory))+ ,base-directory)+ (string-append "INFODIR=" %output+ "/share/info")) #:phases (modify-phases %standard-phases (delete 'configure)- (add-before 'build 'more-shebang-patching- (lambda* (#:key inputs #:allow-other-keys)- (substitute* "Makeconf"- (("SHELL = /bin/sh")- (string-append "SHELL = " (which "sh"))))- #t)) (replace 'check (lambda _ (invoke "make" "test")))))))-- 2.28.0
N
N
Nicolas Goaziou wrote on 5 Sep 2020 15:35
(name . Tim Howes via Guix-patches via)(address . guix-patches@gnu.org)
877dt8tkhj.fsf@nicolasgoaziou.fr
Hello,
Tim Howes via Guix-patches via <guix-patches@gnu.org> writes:
Toggle quote (8 lines)> * gnu/packages/statistics.scm (emacs-ess): Update to 20200903.1516.> [version]: Use latest commit, assign version based on commit date.> [source]: Fix snippet for removing julia-mode. Remove snippet to modify> roxy-preview-Rd-test. Add snippet to modify r-help-mode test. Add> snippet to fix install target to install files to correct directories.> [arguments]: Add flag to specify INFODIR. Remove patch modifying> SHELL.
Thank you.
Toggle quote (18 lines)> This updates emacs-ess to the current version on github and resolves> bugs #43093 and #42259.>> gnu/packages/statistics.scm | 43 ++++++++++++++++---------------------> 1 file changed, 19 insertions(+), 24 deletions(-)>> diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm> index c1cefa8c41..aa14e2887f 100644> --- a/gnu/packages/statistics.scm> +++ b/gnu/packages/statistics.scm> @@ -5805,29 +5805,24 @@ Java package that provides routines for various statistical distributions.")> (define-public emacs-ess> (package> (name "emacs-ess")> - (version "18.10.2")> + ;; Use version number based on commit date and time (UTC), similar to melpa.> + (version "20200903.1516")
I don't think this numbering is great because it makes it difficult toswitch to the official one once it is increased. Usually, we adda revision number to the version, see, e.g., emacs-ansi.
Otherwise, LGTM.
Regards,-- Nicolas Goaziou
T
T
Tim Howes wrote on 5 Sep 2020 19:58
(address . 43208@debbugs.gnu.org)
6c878feb-8a41-b22f-366d-01678dbe5676@lavabit.com
Toggle quote (4 lines)> I don't think this numbering is great because it makes it difficult to> switch to the official one once it is increased. Usually, we add> a revision number to the version, see, e.g., emacs-ansi.
That makes sense. It looks like there's actually a planned 20.09 release, so maybe I'll call this revision 0 of 20.09.
https://github.com/emacs-ess/ESS/milestone/3
T
T
Tim Howes wrote on 5 Sep 2020 23:45
[PATCH] gnu: emacs-ess: Update to 20.09.
(address . 43208@debbugs.gnu.org)
20200905214524.17263-1-timhowes@lavabit.com
* gnu/packages/statistics.scm (emacs-ess): Update to 20.09.[version]: Use version-revision-commit for version numbering.[source]: Fix snippet for removing julia-mode. Remove snippet to modifyroxy-preview-Rd-test. Add snippet to modify r-help-mode test. Addsnippet to fix install target to install files to correct directories.[arguments]: Add flag to specify INFODIR. Remove patch modifying SHELL.---This fixes the version numbering to consider this revision 0 of version20.09, similar to how it's done for other emacs packages in guix.
gnu/packages/statistics.scm | 47 +++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 25 deletions(-)
Toggle diff (95 lines)diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scmindex c1cefa8c41..c705c71460 100644--- a/gnu/packages/statistics.scm+++ b/gnu/packages/statistics.scm@@ -5803,31 +5803,28 @@ Java package that provides routines for various statistical distributions.") (license license:gpl2+))) (define-public emacs-ess+ (let ((commit "82cd308ae54a6b918bbceb235e6bf02f53e48e19")+ (version "20.09")+ (revision "0")) (package (name "emacs-ess")- (version "18.10.2")+ (version (git-version version revision commit)) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/emacs-ess/ESS")- (commit (string-append "v" version))))+ (commit commit))) (sha256 (base32- "1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3"))+ "0zw6j8jzrdmy41g6313js7c0xlmc2wmiazx4d4wm6hdvykn8q39k")) (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet '(begin ;; Stop ESS from trying to bundle an external julia-mode.el. (substitute* "lisp/Makefile"- (("^ess-julia.elc: julia-mode.elc") "")- (("^all: julia-mode.el")- "all:"))- ;; Include *.el files in install target.- (substitute* "lisp/Makefile"- (("\t\\$\\(INSTALL) \\$\\(ELC\\) \\$\\(LISPDIR\\)" elc)- (string-append "\t$(INSTALL) $(ELS) ess-autoloads.el "- "$(LISPDIR)\n" elc)))+ ((" \\$\\(JULIAS)") "")+ (("\ttest.*julia-mode.*\\.el") "")) ;; Only build docs in info format. (substitute* "doc/Makefile" (("all : info text")@@ -5836,12 +5833,16 @@ Java package that provides routines for various statistical distributions.") "install: install-info")) ;; Stop install-info from trying to update the info directory. (substitute* "doc/Makefile"- ((".*\\$\\(INFODIR\\)/dir.*") ""))- ;; Fix roxygen preview test.- (substitute* "test/ess-r-tests.el"- (("Add together two numbers.\n")- "Add together two numbers. ")- (("##' add\\(10, 1\\)") "add(10, 1)"))+ ((".*/dir.*") ""))+ ;; Fix r-help-mode test.+ (substitute* "test/ess-test-r.el"+ (("\\(equal ess-help-object \"plot.default\")") "t"))+ ;; Install to correct directories.+ (substitute* "Makefile"+ (("mkdir -p \\$\\(ESSDESTDIR)")+ "$(MAKE) -C lisp install; $(MAKE) -C doc install")+ (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")+ "$(MAKE) -C etc install")) #t)))) (build-system gnu-build-system) (arguments@@ -5850,16 +5851,12 @@ Java package that provides routines for various statistical distributions.") (string-append "ETCDIR=" %output ,base-directory "/etc") (string-append "LISPDIR=" %output- ,base-directory))+ ,base-directory)+ (string-append "INFODIR=" %output+ "/share/info")) #:phases (modify-phases %standard-phases (delete 'configure)- (add-before 'build 'more-shebang-patching- (lambda* (#:key inputs #:allow-other-keys)- (substitute* "Makeconf"- (("SHELL = /bin/sh")- (string-append "SHELL = " (which "sh"))))- #t)) (replace 'check (lambda _ (invoke "make" "test")))))))@@ -5877,4 +5874,4 @@ Java package that provides routines for various statistical distributions.") (description "Emacs Speaks Statistics (ESS) is an add-on package for GNU Emacs. It is designed to support editing of scripts and interaction with various statistical analysis programs such as R, Julia, and JAGS.")- (license license:gpl2+)))+ (license license:gpl2+))))-- 2.28.0
T
T
Tim Howes wrote on 6 Sep 2020 02:57
(address . 43208@debbugs.gnu.org)
d9d83e86-4636-583d-6c0a-5b495681c8b4@lavabit.com
retitle 43208 [PATCH] gnu: emacs-ess: Update to 20.09.thanks
T
T
Tim Howes wrote on 6 Sep 2020 03:00
(address . control@debbugs.gnu.org)
0f9e8a6f-716a-721d-967b-4ee8a8205bdd@lavabit.com
retitle 43208 [PATCH] gnu: emacs-ess: Update to 20.09.thanks
N
N
Nicolas Goaziou wrote on 6 Sep 2020 10:02
(name . Tim Howes via Guix-patches via)(address . guix-patches@gnu.org)
87pn6zs57k.fsf@nicolasgoaziou.fr
Hello,
Tim Howes via Guix-patches via <guix-patches@gnu.org> writes:
Toggle quote (10 lines)> * gnu/packages/statistics.scm (emacs-ess): Update to 20.09.> [version]: Use version-revision-commit for version numbering.> [source]: Fix snippet for removing julia-mode. Remove snippet to modify> roxy-preview-Rd-test. Add snippet to modify r-help-mode test. Add> snippet to fix install target to install files to correct directories.> [arguments]: Add flag to specify INFODIR. Remove patch modifying SHELL.> ---> This fixes the version numbering to consider this revision 0 of version> 20.09, similar to how it's done for other emacs packages in guix.
Thank you.
However, the base version should be 18.10.2, not 20.09, which is notreleased yet.
BTW, when trying to build the package, I get the following failure:
INFO Scraping files for ess-autoloads.el... .../lisp/ess-autoloads.el locked by nixbld@localh... (pid 103): (s, q, p, ?)? Cannot resolve lock conflict in batch mode make[1]: *** [Makefile:62: ess-autoloads.el] Error 255
Can you build the package successfully?
Regards,-- Nicolas Goaziou
T
T
Tim Howes wrote on 8 Sep 2020 21:22
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 43208@debbugs.gnu.org)
47d58bad-6a89-d342-4a16-72c2c5500d6b@lavabit.com
Toggle quote (9 lines)> BTW, when trying to build the package, I get the following failure:> > INFO Scraping files for ess-autoloads.el...> .../lisp/ess-autoloads.el locked by nixbld@localh... (pid 103): (s, q, p, ?)?> Cannot resolve lock conflict in batch mode> make[1]: *** [Makefile:62: ess-autoloads.el] Error 255> > Can you build the package successfully?
It builds successfully sometimes, but fails sporadically due to this file locking issue. It seems like, the way the Makefile is set up, it's trying to build the ess-autoloads target multiple times in parallel, which is causing it to fail if two processes are trying to write to the file at the same time. I'll take a look later to see if I can prevent the problem.
Thanks,Tim
L
L
Ludovic Courtès wrote on 24 Sep 2020 17:20
(name . Tim Howes)(address . timhowes@lavabit.com)
87tuvn6w1o.fsf@gnu.org
Hi Tim & Nicolas,
Any update on this?
Thanks,Ludo’.
Tim Howes <timhowes@lavabit.com> skribis:
Toggle quote (16 lines)>> BTW, when trying to build the package, I get the following failure:>> INFO Scraping files for ess-autoloads.el...>> .../lisp/ess-autoloads.el locked by nixbld@localh... (pid 103): (s, q, p, ?)?>> Cannot resolve lock conflict in batch mode>> make[1]: *** [Makefile:62: ess-autoloads.el] Error 255>> Can you build the package successfully?>> It builds successfully sometimes, but fails sporadically due to this> file locking issue. It seems like, the way the Makefile is set up,> it's trying to build the ess-autoloads target multiple times in> parallel, which is causing it to fail if two processes are trying to> write to the file at the same time. I'll take a look later to see if I> can prevent the problem.>> Thanks,> Tim
T
T
Tim Howes wrote on 26 Sep 2020 11:40
[PATCH v3] gnu: emacs-ess: Update to 18.10.2-0.24da603.
(address . 43208@debbugs.gnu.org)
20200926094038.52041-1-timhowes@lavabit.com
* gnu/packages/statistics.scm (emacs-ess): Update to 18.10.2-0.24da603.[version]: Use version-revision-commit for version numbering.[source]: Fix snippet for removing julia-mode. Remove snippet to modifyroxy-preview-Rd-test. Add snippet to modify r-help-mode test. Addsnippet to fix install target to install files to correct directories.Correct Makefile so that ess-autoloads.el is not built twice.[arguments]: Add flag to specify INFODIR. Remove patch modifying SHELL.[license]: License is now GPLv3+.---
I corrected part of the Makefile that was causing ess-autoloads.el to bebuilt twice, which I think was causing the file locking issue. Thisshould now build reliably. I also selected a slightly older commit ofESS to avoid this bug:https://github.com/emacs-ess/ESS/issues/987#issuecomment-590822386
gnu/packages/statistics.scm | 51 +++++++++++++++++++------------------ 1 file changed, 26 insertions(+), 25 deletions(-)
Toggle diff (99 lines)diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scmindex 03a63e6ba1..b78ed4e6f5 100644--- a/gnu/packages/statistics.scm+++ b/gnu/packages/statistics.scm@@ -5784,31 +5784,28 @@ Java package that provides routines for various statistical distributions.") (license license:gpl2+))) (define-public emacs-ess+ (let ((commit "24da603184ce39246611dd5b8602e769d7ebd5bf")+ (version "18.10.2")+ (revision "0")) (package (name "emacs-ess")- (version "18.10.2")+ (version (git-version version revision commit)) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/emacs-ess/ESS")- (commit (string-append "v" version))))+ (commit commit))) (sha256 (base32- "1yq41l2bicwjrc0b731iic20cpcnz6ppigri1jn621qv2qv22vy3"))+ "0j98lv07nzwzd54d4dgcfz01wy5gj48m0mnirxzh5r45ik2myh1r")) (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet '(begin ;; Stop ESS from trying to bundle an external julia-mode.el. (substitute* "lisp/Makefile"- (("^ess-julia.elc: julia-mode.elc") "")- (("^all: julia-mode.el")- "all:"))- ;; Include *.el files in install target.- (substitute* "lisp/Makefile"- (("\t\\$\\(INSTALL) \\$\\(ELC\\) \\$\\(LISPDIR\\)" elc)- (string-append "\t$(INSTALL) $(ELS) ess-autoloads.el "- "$(LISPDIR)\n" elc)))+ ((" \\$\\(JULIAS)") "")+ (("\ttest.*julia-mode.*\\.el") "")) ;; Only build docs in info format. (substitute* "doc/Makefile" (("all : info text")@@ -5817,12 +5814,20 @@ Java package that provides routines for various statistical distributions.") "install: install-info")) ;; Stop install-info from trying to update the info directory. (substitute* "doc/Makefile"- ((".*\\$\\(INFODIR\\)/dir.*") ""))- ;; Fix roxygen preview test.- (substitute* "test/ess-r-tests.el"- (("Add together two numbers.\n")- "Add together two numbers. ")- (("##' add\\(10, 1\\)") "add(10, 1)"))+ ((".*/dir.*") ""))+ ;; Fix r-help-mode test.+ (substitute* "test/ess-test-r.el"+ (("\\(equal ess-help-object \"plot.default\")") "t"))+ ;; Avoid generating ess-autoloads.el twice.+ (substitute* "Makefile"+ (("all: lisp doc etc autoloads")+ "all: lisp doc etc"))+ ;; Install to correct directories.+ (substitute* "Makefile"+ (("mkdir -p \\$\\(ESSDESTDIR)")+ "$(MAKE) -C lisp install; $(MAKE) -C doc install")+ (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")+ "$(MAKE) -C etc install")) #t)))) (build-system gnu-build-system) (arguments@@ -5831,16 +5836,12 @@ Java package that provides routines for various statistical distributions.") (string-append "ETCDIR=" %output ,base-directory "/etc") (string-append "LISPDIR=" %output- ,base-directory))+ ,base-directory)+ (string-append "INFODIR=" %output+ "/share/info")) #:phases (modify-phases %standard-phases (delete 'configure)- (add-before 'build 'more-shebang-patching- (lambda* (#:key inputs #:allow-other-keys)- (substitute* "Makeconf"- (("SHELL = /bin/sh")- (string-append "SHELL = " (which "sh"))))- #t)) (replace 'check (lambda _ (invoke "make" "test")))))))@@ -5858,4 +5859,4 @@ Java package that provides routines for various statistical distributions.") (description "Emacs Speaks Statistics (ESS) is an add-on package for GNU Emacs. It is designed to support editing of scripts and interaction with various statistical analysis programs such as R, Julia, and JAGS.")- (license license:gpl2+)))+ (license license:gpl3+))))-- 2.28.0
T
T
Tim Howes wrote on 26 Sep 2020 11:42
Re: [bug#43208] [PATCH] gnu: emacs-ess: Update to 20.09.
(address . control@debbugs.gnu.org)
0c107c98-fcd4-8262-0494-406ae47c16ed@lavabit.com
retitle 43208 [PATCH] gnu: emacs-ess: Update to 18.10.2-0.24da603.thanks
N
N
Nicolas Goaziou wrote on 26 Sep 2020 13:02
Re: [PATCH v3] gnu: emacs-ess: Update to 18.10.2-0.24da603.
(name . Tim Howes)(address . timhowes@lavabit.com)
87k0wg6bsg.fsf@nicolasgoaziou.fr
Hello,
Tim Howes <timhowes@lavabit.com> writes:
Toggle quote (3 lines)> * gnu/packages/statistics.scm (emacs-ess): Update to> 18.10.2-0.24da603.
I added a small comment explaining why we provide an unstable version,and applied your patch. Thank you.
Regards,-- Nicolas Goaziou
Closed
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send email to 43208@debbugs.gnu.org