Subject: Re: [bug#55501] [PACTH] emacs-evil fails compilation by emacs-28.1, but upstream has newer commits which should compile
From: Liliana Marie Prikler <[email-masked]>
To: Maze <[email-masked]>, [email-masked]
Date: Wed, 18 May 2022 22:03:17 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

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