Subject: Re: bug#55545: [PATCH] Get ~emacs-promise~ to build in emacs 28

From: Mathieu Othacehe <[email-masked]>
Date: Sun, 05 Jun 2022 21:14:38 +0200

Hello Andrew,

> -    (source
> -     (origin
> -       (method git-fetch)
> -       (uri (git-reference
> -             (url "https://github.com/chuntaro/emacs-promise")
> -             (commit version)))
> -       (file-name (git-file-name name version))
> -       (sha256
> -        (base32 "1xb34zdbwjvahfhycjphdkm925kgd22dr298c57hwxza4ljc2hxj"))))
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/chuntaro/emacs-promise")
> +                    (commit version)))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "1xb34zdbwjvahfhycjphdkm925kgd22dr298c57hwxza4ljc2hxj"))))

This change is not related to the build fix, it shouldn't be part of
this commit.

>      (build-system emacs-build-system)
> +    (arguments
> +     `(#:phases (modify-phases %standard-phases
> +                  (add-after 'unpack 'patch-obsolete
> +                    (lambda* _
> +                      (substitute* "promise.el"
> +                        (("\\(define-obsolete-function-alias (.*) (.*)\\)" _
> +                          obsolete cur) (format #f
> +                                         "(define-obsolete-function-alias ~a ~a ~a)"
> +                                         obsolete cur "\"2020-01-10\""))))))))

This has been fixed upstream, so you could also update the package to
the latest commit, see how it's done in the emacs-libgit package for
instance.

>      (home-page "https://github.com/chuntaro/emacs-promise")
>      (synopsis "Promises/A+ for Emacs")
> -    (description "This is a simple implementation of Promises/A+.
> +    (description
> +     "This is a simple implementation of Promises/A+.
>  
>  This implementation ports the following Promises/A+ features
>  faithfully.  See @url{https://github.com/then/promise}.
> @@ -30371,7 +30381,8 @@ (define-public emacs-promise
>  @item It supports \"thenable\".
>  @item It supports \"Inheritance of Promise\".
>  @item It supports \"rejection-tracking\".
> -@end itemize\n")
> +@end itemize
> +")
>      (license license:gpl3+)))

Those changes also shouldn't be part of this patch.

Could you please send an update version?

Thanks,

Mathieu