Subject: Re: [bug#79129] [PATCH] build-system: emacs: Fix getting package dependencies.
From: Nicolas Graves <[email-masked]>
To: Ilya Chernyshov <[email-masked]>, [email-masked], Andreas Enge <[email-masked]>, [email-masked]
Date: Thu, 31 Jul 2025 17:41:04 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

I think this is already fixed on the emacs-team branch:
https://codeberg.org/guix/guix/commit/b87a7905495d2d3fe88af76fa45bd18837f40524

The issue is that indeed we probably need to do something to get it
merged quicker, because it's fixes rather than updates.

@Enge could we for instance drop the reproducibility patch on
emacs-team (which I can build locally without issues, but CI doesn't
seem to like it too much), and take precedence over "update" branches.
I feel it's very bad for user experience to have those errors hanging,
and emacs packages are mostly light and not that numerous, so it
shouldn't be too high of a cost on CI.  I don't support selfishness of
one team, but we'll keep having these reports until we fix what's
broken.

Errors are : #603 ; #736 ; #1309 ; #997 ; 
And most likely too : #993 ; #836 ; #1035 ; 

@lilyp, WDYT?

Best regards,
Nicolas

On 2025-07-30 15:30, Ilya Chernyshov wrote:

> Hi. `ensure-package-description' procedure from emacs-build-system.scm
> contains an undefined elisp function `package--prepare-dependencies'. It
> was replaced with `lm--prepare-package-dependencies' after 29.1 release.
> You can see the changes here:
> https://cgit.git.savannah.gnu.org/cgit/emacs.git/commit/?id=bb5399e3cd75450db6db9b3c5829f7bd87ca1308
> From 91d5af8e8883a15601f2a6c1e7c21fba704d1cef Mon Sep 17 00:00:00 2001
> From: Ilya Chernyshov <[email-masked]>
> Date: Wed, 30 Jul 2025 19:45:32 +0500
> Subject: [PATCH] build-system: emacs: Fix getting package dependencies.
>
> * guix/build/emacs-build-system (ensure-package-description): Use
> lm-package-requires to get package dependencies.
> ---
>  guix/build/emacs-build-system.scm | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/guix/build/emacs-build-system.scm b/guix/build/emacs-build-system.scm
> index ffa6d3cbb0..b7f31c7fee 100644
> --- a/guix/build/emacs-build-system.scm
> +++ b/guix/build/emacs-build-system.scm
> @@ -193,11 +193,7 @@ (define %write-pkg-file-form
>                  (and (re-search-forward ,summary-regexp nil t)
>                       (match-string-no-properties 1)))
>                 package--default-summary)
> -           (let ((require-lines (lm-header-multiline "package-requires")))
> -             (and require-lines
> -                  (package--prepare-dependencies
> -                   (package-read-from-string
> -                    (mapconcat 'identity require-lines " ")))))
> +           (lm-package-requires)
>             :kind       'single
>             :url        (lm-homepage)
>             :keywords   (lm-keywords-list)

-- 
Best regards,
Nicolas Graves