[PATCH] gnu: emacs-ledger-mode: Update to 4.0.0-0.11e8503.

DoneSubmitted by Kyle Meyer.
Details
3 participants
  • Aleksandr Vityazev
  • Kyle Meyer
  • Maxim Cournoyer
Owner
unassigned
Severity
normal
K
K
Kyle Meyer wrote on 15 May 20:41 +0200
(address . guix-patches@gnu.org)
20220515184114.146101-1-kyle@kyleam.com
With the Emacs 28 update, building emacs-ledger-mode fails with

complete-test.el:29:1: Error: Wrong number of arguments: (3 . 4), 2

This error is not present the latest commit on upstream's master branch.

* gnu/packages/finance.scm (emacs-ledger-mode): Update to 4.0.0-0.11e8503.
---
gnu/packages/finance.scm | 96 +++++++++++++++++++++-------------------
1 file changed, 50 insertions(+), 46 deletions(-)

Toggle diff (125 lines)
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index b5ab051a1f..ed7202b17e 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -26,6 +26,7 @@
 ;;; Copyright © 2021 François J <francois-oss@avalenn.eu>
 ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
 ;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
+;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -395,51 +396,54 @@ (define-public ledger
                     "See src/wcwidth.cc in the distribution.")))))
 
 (define-public emacs-ledger-mode
-  (package
-    (name "emacs-ledger-mode")
-    (version "4.0.0")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/ledger/ledger-mode")
-             (commit (string-append "v" version))))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "1r5rcyxd6d1rqwamzpvqdbkbdf1zbj75aaciqijrklnm59ps244y"))))
-    (build-system emacs-build-system)
-    (arguments
-     `(;; ledger-test.el is needed at runtime (but probably not for a good reason).
-       #:exclude '()
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'patch-path
-           (lambda* (#:key inputs #:allow-other-keys)
-             (let ((ledger (assoc-ref inputs "ledger")))
-               (make-file-writable "ledger-exec.el")
-               (emacs-substitute-variables "ledger-exec.el"
-                 ("ledger-binary-path" (string-append ledger "/bin/ledger"))))
-             #t))
-         (add-after 'build 'build-doc
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((target (string-append (assoc-ref outputs "out")
-                                          "/share/info")))
-               (mkdir-p target)
-               (invoke "makeinfo" "-o" target
-                       "../source/doc/ledger-mode.texi"))
-             #t))
-         (replace 'check
-           (lambda _
-             (with-directory-excursion "../source/test"
-               (invoke "make" "test-batch")))))))
-    (inputs
-     (list ledger))
-    (native-inputs
-     (list texinfo))
-    (home-page "https://ledger-cli.org/")
-    (synopsis "Command-line double-entry accounting program")
-    (description
-     "Ledger is a powerful, double-entry accounting system that is
+  ;; The last release was on Nov 8, 2019 and doesn't build with Emacs 28.
+  (let ((commit "11e850395448ee7012dba16bd6df103f5552ebfb")
+        (revision "0"))
+    (package
+      (name "emacs-ledger-mode")
+      (version (git-version "4.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/ledger/ledger-mode")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0hzky36vrlb7kvpyz4gy3zn01zdlmlx0s58w6ggk5djbcvjc2rfx"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(;; ledger-test.el is needed at runtime (but probably not for a good reason).
+         #:exclude '()
+         #:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'patch-path
+             (lambda* (#:key inputs #:allow-other-keys)
+               (let ((ledger (assoc-ref inputs "ledger")))
+                 (make-file-writable "ledger-exec.el")
+                 (emacs-substitute-variables "ledger-exec.el"
+                   ("ledger-binary-path" (string-append ledger "/bin/ledger"))))
+               #t))
+           (add-after 'build 'build-doc
+             (lambda* (#:key outputs #:allow-other-keys)
+               (let ((target (string-append (assoc-ref outputs "out")
+                                            "/share/info")))
+                 (mkdir-p target)
+                 (invoke "makeinfo" "-o" target
+                         "../source/doc/ledger-mode.texi"))
+               #t))
+           (replace 'check
+             (lambda _
+               (with-directory-excursion "../source/test"
+                 (invoke "make" "test-batch")))))))
+      (inputs
+       (list ledger))
+      (native-inputs
+       (list texinfo))
+      (home-page "https://ledger-cli.org/")
+      (synopsis "Command-line double-entry accounting program")
+      (description
+       "Ledger is a powerful, double-entry accounting system that is
 accessed from the UNIX command-line.  This may put off some users, since
 there is no flashy UI, but for those who want unparalleled reporting
 access to their data there are few alternatives.
@@ -453,7 +457,7 @@ (define-public emacs-ledger-mode
 in ability, and easy to use.
 
 This package provides the Emacs mode.")
-    (license license:gpl2+)))
+      (license license:gpl2+))))
 
 (define-public geierlein
   (package

base-commit: ebb43029506d994bee0c2b890881fd61a0b0c202
-- 
2.36.0
A
A
Aleksandr Vityazev wrote on 16 May 13:04 +0200
[PATCH] gnu: emacs-ledger-mode: Update to 4.0.0-0-11e85039.
(address . 55433@debbugs.gnu.org)
e2a9696a870e9b351772dba5fd15c85e6bf64b6f.1652698616.git.avityazev@posteo.org
Hi, I just went ahead and made changes to the arguments.

* gnu/packages/finance.scm (emacs-ledger-mode): Update to 4.0.0-0-11e85039.
[arguments]: Convert to list of G-Expressions. Use ‘search-input-file’ where possible.
Drop trailing ‘#t’s. While here, respect TESTS? in check phase.

Co-authored-by: Aleksandr Vityazev <avityazev@posteo.org>
---
gnu/packages/finance.scm | 96 +++++++++++++++++++++-------------------
1 file changed, 50 insertions(+), 46 deletions(-)

Toggle diff (129 lines)
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index b5ab051a1f..09b979899d 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -26,6 +26,8 @@
 ;;; Copyright © 2021 François J <francois-oss@avalenn.eu>
 ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
 ;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
+;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
+;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -395,51 +397,53 @@ (define-public ledger
                     "See src/wcwidth.cc in the distribution.")))))
 
 (define-public emacs-ledger-mode
-  (package
-    (name "emacs-ledger-mode")
-    (version "4.0.0")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/ledger/ledger-mode")
-             (commit (string-append "v" version))))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32 "1r5rcyxd6d1rqwamzpvqdbkbdf1zbj75aaciqijrklnm59ps244y"))))
-    (build-system emacs-build-system)
-    (arguments
-     `(;; ledger-test.el is needed at runtime (but probably not for a good reason).
-       #:exclude '()
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'patch-path
-           (lambda* (#:key inputs #:allow-other-keys)
-             (let ((ledger (assoc-ref inputs "ledger")))
-               (make-file-writable "ledger-exec.el")
-               (emacs-substitute-variables "ledger-exec.el"
-                 ("ledger-binary-path" (string-append ledger "/bin/ledger"))))
-             #t))
-         (add-after 'build 'build-doc
-           (lambda* (#:key outputs #:allow-other-keys)
-             (let ((target (string-append (assoc-ref outputs "out")
-                                          "/share/info")))
-               (mkdir-p target)
-               (invoke "makeinfo" "-o" target
-                       "../source/doc/ledger-mode.texi"))
-             #t))
-         (replace 'check
-           (lambda _
-             (with-directory-excursion "../source/test"
-               (invoke "make" "test-batch")))))))
-    (inputs
-     (list ledger))
-    (native-inputs
-     (list texinfo))
-    (home-page "https://ledger-cli.org/")
-    (synopsis "Command-line double-entry accounting program")
-    (description
-     "Ledger is a powerful, double-entry accounting system that is
+  ;; The last release was on Nov 8, 2019 and doesn't build with Emacs 28.
+  (let ((commit "11e850395448ee7012dba16bd6df103f5552ebfb")
+        (revision "0"))
+    (package
+      (name "emacs-ledger-mode")
+      (version (git-version "4.0.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/ledger/ledger-mode")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32 "0hzky36vrlb7kvpyz4gy3zn01zdlmlx0s58w6ggk5djbcvjc2rfx"))))
+      (build-system emacs-build-system)
+      (arguments
+       (list
+        ;; ledger-test.el is needed at runtime (but probably not for a good reason).
+        #:exclude #~'()
+        #:tests? #t
+        #:phases
+        #~(modify-phases %standard-phases
+            (add-after 'unpack 'patch-path
+              (lambda* (#:key inputs #:allow-other-keys)
+                (make-file-writable "ledger-exec.el")
+                (emacs-substitute-variables "ledger-exec.el"
+                  ("ledger-binary-path" (search-input-file inputs "/bin/ledger")))))
+            (add-after 'build 'build-doc
+              (lambda _
+                (let ((target (string-append #$output "/share/info")))
+                  (mkdir-p target)
+                  (invoke "makeinfo" "-o" target
+                          "../source/doc/ledger-mode.texi"))))
+            (replace 'check
+              (lambda* (#:key tests? #:allow-other-keys)
+                (when tests?
+                  (with-directory-excursion "../source/test"
+                    (invoke "make" "test-batch"))))))))
+      (inputs
+       (list ledger))
+      (native-inputs
+       (list texinfo))
+      (home-page "https://ledger-cli.org/")
+      (synopsis "Command-line double-entry accounting program")
+      (description
+       "Ledger is a powerful, double-entry accounting system that is
 accessed from the UNIX command-line.  This may put off some users, since
 there is no flashy UI, but for those who want unparalleled reporting
 access to their data there are few alternatives.
@@ -453,7 +457,7 @@ (define-public emacs-ledger-mode
 in ability, and easy to use.
 
 This package provides the Emacs mode.")
-    (license license:gpl2+)))
+      (license license:gpl2+))))
 
 (define-public geierlein
   (package
-- 
2.36.0



-- 
Best regards, 
Aleksandr Vityazev
M
M
Maxim Cournoyer wrote on 18 May 06:27 +0200
Re: bug#55433: [PATCH] gnu: emacs-ledger-mode: Update to 4.0.0-0.11e8503.
(name . Aleksandr Vityazev)(address . avityazev@posteo.org)(address . 55433-done@debbugs.gnu.org)
87wnej1n3z.fsf_-_@gmail.com
Hello,

Aleksandr Vityazev <avityazev@posteo.org> writes:

Toggle quote (22 lines)
> Hi, I just went ahead and made changes to the arguments.
>
> * gnu/packages/finance.scm (emacs-ledger-mode): Update to 4.0.0-0-11e85039.
> [arguments]: Convert to list of G-Expressions. Use ‘search-input-file’ where possible.
> Drop trailing ‘#t’s. While here, respect TESTS? in check phase.
>
> Co-authored-by: Aleksandr Vityazev <avityazev@posteo.org>
> ---
> gnu/packages/finance.scm | 96 +++++++++++++++++++++-------------------
> 1 file changed, 50 insertions(+), 46 deletions(-)
>
> diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
> index b5ab051a1f..09b979899d 100644
> --- a/gnu/packages/finance.scm
> +++ b/gnu/packages/finance.scm
> @@ -26,6 +26,8 @@
> ;;; Copyright © 2021 François J <francois-oss@avalenn.eu>
> ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
> ;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
> +;;; Copyright © 2022 Kyle Meyer <kyle@kyleam.com>
> +;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>

Nice collaboration here :-)

Applied as 5a2b9fc2e6fe868e838ae3865e4a2d2c22cda91d.

Thanks,

Maxim
Closed
K
K
Kyle Meyer wrote on 19 May 00:19 +0200
(address . 55433@debbugs.gnu.org)
87pmka7ac9.fsf@kyleam.com
On 05/18/22 00:27:44 -0400, Maxim Cournoyer wrote:
Toggle quote (10 lines)
> Hello,
>
> Aleksandr Vityazev <avityazev@posteo.org> writes:
>
>> Hi, I just went ahead and made changes to the arguments.
> [...]
> Nice collaboration here :-)
>
> Applied as 5a2b9fc2e6fe868e838ae3865e4a2d2c22cda91d.

Great, thanks for the improvements, Aleksandr. (And thanks for
reviewing, Maxim.)
?
Your comment

This issue is archived.

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