GNU bug report logs - #55501
emacs-evil fails compilation by emacs-28.1, but upstream has newer commits which should compile

Previous Next

Package: guix;

Reported by: Maze <maze <at> pkbd.org>

Date: Wed, 18 May 2022 14:29:02 UTC

Severity: normal

Done: Liliana Marie Prikler <liliana.prikler <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 55501 in the body.
You can then email your comments to 55501 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#55501; Package guix. (Wed, 18 May 2022 14:29:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Maze <maze <at> pkbd.org>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Wed, 18 May 2022 14:29:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Maze <maze <at> pkbd.org>
To: bug-guix <at> gnu.org
Subject: emacs-evil fails compilation by emacs-28.1, but upstream has newer
 commits which should compile
Date: Wed, 18 May 2022 13:58:59 +0800
[Message part 1 (text/plain, inline)]
`guix install emacs-evil` has been failing since a few days.

Very probably because elisp function define-obsolete-function-alias had
a third mandatory argument added by emacs 28.

It looks like guix installs the version 1.14.0 from upstream's git but
it's quite old. Evil 1.14.0 won't guix install and it also won't byte compile
from emacs-28, using its own Makefile. Their latest commit, on the other
hand, can be byte compiled by emacs-28.

I downloaded their repo and looked at the log, it seems evil has a new
version 1.15.0 from a couple weeks ago, only they forgot to tag it in
git. Maybe it's best to use the version which is described as 1.15.0 in
the commit message... or to use their very last commit.

I can't right now no time but I might submit a patch in the other
mailing list in a few hours.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#55501; Package guix. (Wed, 18 May 2022 18:29:01 GMT) Full text and rfc822 format available.

Message #8 received at 55501 <at> debbugs.gnu.org (full text, mbox):

From: Maze <maze <at> pkbd.org>
To: 55501 <at> debbugs.gnu.org
Cc: Maze <maze <at> pkbd.org>
Subject: [bug#55501] [PACTH] emacs-evil fails compilation by emacs-28.1, but
 upstream has newer commits which should compile
Date: Thu, 19 May 2022 01:25:26 +0800
[Message part 1 (text/plain, inline)]
Below a patch for emacs-evil.

Since upstream declared the new version 1.15.0 in a commit message
without creating a tag, I have to git-reference to a commit. I tried to
reproduce the way it's done on other emacs extensions.

Other than this, it should be just bumping the upstream version so that
it gets byte compiled succesfully with emacs 28.

I tested that it builds and installs on a private channel local to my machine.

* gnu/packages/emacs-xyz.scm
  Bump emacs-evil to versions 1.15.0
  So that it can be built by emacs-28
 1 file changed, 33 insertions(+), 36 deletions(-)

diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index c43fa5a..9423441 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -12073,41 +12073,44 @@ news items, openrc and runscripts.")
     (license license:gpl2+)))
 
 (define-public emacs-evil
-  (package
-    (name "emacs-evil")
-    (version "1.14.2")
-    (source
-     (origin
-       (method git-fetch)
-       (uri (git-reference
-             (url "https://github.com/emacs-evil/evil")
-             (commit version)))
-       (file-name (git-file-name name version))
-       (sha256
-        (base32
-         "1mhm1hd6gzxc2vvihh1w1j8f30xp0ssqcxnp8fx22niz04fk5df8"))))
-    (arguments
-     (list
-      #:phases
-      #~(modify-phases %standard-phases
-          (add-before 'check 'fix-test-helpers
-            (lambda _
-              (substitute* "evil-test-helpers.el"
-                (("\\(undo-tree-mode 1\\)") ""))))
-          (add-before 'install 'make-info
-            (lambda _
-              (with-directory-excursion "doc/build/texinfo"
-                (invoke "makeinfo" "--no-split"
-                        "-o" "evil.info" "evil.texi")))))))
-    (build-system emacs-build-system)
-    (native-inputs (list texinfo))
-    (home-page "https://github.com/emacs-evil/evil")
-    (synopsis "Extensible Vi layer for Emacs")
-    (description
-     "Evil is an extensible vi layer for Emacs.  It emulates the
+  (let ((commit "008a6cdb12f15e748979a7d1c2f26c34c84dedbf")
+        (version "1.15.0") ; not tagged upstream, but see commit message
+        (revision "0"))
+    (package
+      (name "emacs-evil")
+      (version (git-version version revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/emacs-evil/evil")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (sha256
+          (base32
+           "1hxhw1rsm0wbrhz85gfabncanijpxd47g5yrdnl3bbm499z1gsvg"))))
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (add-before 'check 'fix-test-helpers
+             (lambda _
+               (substitute* "evil-test-helpers.el"
+                 (("\\(undo-tree-mode 1\\)") ""))
+               #t))
+           (add-before 'install 'make-info
+             (lambda _
+               (with-directory-excursion "doc/build/texinfo"
+                   (invoke "makeinfo" "--no-split"
+                           "-o" "evil.info" "evil.texi")))))))
+      (build-system emacs-build-system)
+      (native-inputs (list texinfo))
+      (home-page "https://github.com/emacs-evil/evil")
+      (synopsis "Extensible Vi layer for Emacs")
+      (description
+       "Evil is an extensible vi layer for Emacs.  It emulates the
 main features of Vim, and provides facilities for writing custom
 extensions.")
-    (license license:gpl3+)))
+      (license license:gpl3+))))
 
 (define-public emacs-evil-collection
   (package
[signature.asc (application/pgp-signature, inline)]

Reply sent to Liliana Marie Prikler <liliana.prikler <at> gmail.com>:
You have taken responsibility. (Wed, 18 May 2022 20:04:02 GMT) Full text and rfc822 format available.

Notification sent to Maze <maze <at> pkbd.org>:
bug acknowledged by developer. (Wed, 18 May 2022 20:04:02 GMT) Full text and rfc822 format available.

Message #13 received at 55501-done <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Maze <maze <at> pkbd.org>, 55501-done <at> debbugs.gnu.org
Subject: Re: [bug#55501] [PACTH] emacs-evil fails compilation by emacs-28.1,
 but upstream has newer commits which should compile
Date: Wed, 18 May 2022 22:03:17 +0200
Applied with some cosmetic changes in commit message and patch itself.

Am Donnerstag, dem 19.05.2022 um 01:25 +0800 schrieb Maze:
> Below a patch for emacs-evil.
> 
> Since upstream declared the new version 1.15.0 in a commit message
> without creating a tag, I have to git-reference to a commit. I tried
> to reproduce the way it's done on other emacs extensions.
> 
> Other than this, it should be just bumping the upstream version so
> that it gets byte compiled succesfully with emacs 28.
> 
> I tested that it builds and installs on a private channel local to my
> machine.
For the record, this should go below the --- line.  Use git format-
patch instead of manually annotating a git diff.

> * gnu/packages/emacs-xyz.scm
>   Bump emacs-evil to versions 1.15.0
>   So that it can be built by emacs-28
>  1 file changed, 33 insertions(+), 36 deletions(-)
YMMV but I adapted this to the actual ChangeLog format.

> diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
> index c43fa5a..9423441 100644
> --- a/gnu/packages/emacs-xyz.scm
> +++ b/gnu/packages/emacs-xyz.scm
> @@ -12073,41 +12073,44 @@ news items, openrc and runscripts.")
>      (license license:gpl2+)))
>  
>  (define-public emacs-evil
> -  (package
> -    (name "emacs-evil")
> -    (version "1.14.2")
> -    (source
> -     (origin
> -       (method git-fetch)
> -       (uri (git-reference
> -             (url "https://github.com/emacs-evil/evil")
> -             (commit version)))
> -       (file-name (git-file-name name version))
> -       (sha256
> -        (base32
> -         "1mhm1hd6gzxc2vvihh1w1j8f30xp0ssqcxnp8fx22niz04fk5df8"))))
> -    (arguments
> -     (list
> -      #:phases
> -      #~(modify-phases %standard-phases
> -          (add-before 'check 'fix-test-helpers
> -            (lambda _
> -              (substitute* "evil-test-helpers.el"
> -                (("\\(undo-tree-mode 1\\)") ""))))
> -          (add-before 'install 'make-info
> -            (lambda _
> -              (with-directory-excursion "doc/build/texinfo"
> -                (invoke "makeinfo" "--no-split"
> -                        "-o" "evil.info" "evil.texi")))))))
> -    (build-system emacs-build-system)
> -    (native-inputs (list texinfo))
> -    (home-page "https://github.com/emacs-evil/evil")
> -    (synopsis "Extensible Vi layer for Emacs")
> -    (description
> -     "Evil is an extensible vi layer for Emacs.  It emulates the
> +  (let ((commit "008a6cdb12f15e748979a7d1c2f26c34c84dedbf")
> +        (version "1.15.0") ; not tagged upstream, but see commit
> message
> +        (revision "0"))
> +    (package
> +      (name "emacs-evil")
> +      (version (git-version version revision commit))
Made it so that version is not inadvertently let-bound.  Expanded
comment.


Cheers




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 16 Jun 2022 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 320 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.