emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#53915: closed (No way of replacing an input in modify-input syntax s


From: GNU bug Tracking System
Subject: bug#53915: closed (No way of replacing an input in modify-input syntax structure but keep all the outputs)
Date: Wed, 16 Mar 2022 14:55:02 +0000

Your message dated Wed, 16 Mar 2022 15:53:49 +0100
with message-id <87k0cuc5j6.fsf@gnu.org>
and subject line Re: bug#53915: No way of replacing an input in modify-input 
syntax structure but keep all the outputs
has caused the debbugs.gnu.org bug report #53915,
regarding No way of replacing an input in modify-input syntax structure but 
keep all the outputs
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
53915: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=53915
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: No way of replacing an input in modify-input syntax structure but keep all the outputs Date: Thu, 10 Feb 2022 10:09:41 +0000
poppler package include glib as a native-input with "bin" output.

If I am doing the following:

(package/inherit poppler
    (native-inputs
        (modify-inputs (package-native-inputs poppler)
            (replace "glib" my-glib))))

poppler's build will fail becuase replace syntax will replace "glib"
package erasing its outputs. I can specify output explicitly by doing
(replace "glib" (my-glib "bin")) in this case, but that makes mass input
modification difficult (e.g. if i want to replace all instances of glib
to my-glib).

That said there is a value in having such behaviour for replace syntax
in case for example if I replace package with my own version that has no
extra outputs, so it would be nice to have both options available.



--- End Message ---
--- Begin Message --- Subject: Re: bug#53915: No way of replacing an input in modify-input syntax structure but keep all the outputs Date: Wed, 16 Mar 2022 15:53:49 +0100 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)
Hi,

Liliana Marie Prikler <liliana.prikler@gmail.com> skribis:

> Am Dienstag, dem 08.03.2022 um 17:11 +0100 schrieb Ludovic Courtès:
>> [...]
>> With the patch below, we get more sensible behavior:
>> 
>> --8<---------------cut here---------------start------------->8---
>> scheme@(guile-user)> (modify-inputs (append $5 $4)
>>                        (replace "glib" xpdf))
>> $8 = (("glib" #<package xpdf@4.03 gnu/packages/pdf.scm:395
>> 7f9b1457c9a0>) ("pkg-config" #<package
>> pkg-config@0.29.2 gnu/packages/pkg-config.scm:36 7f9b13a30580>)
>> ("glib" #<package xpdf@4.03 gnu/packages/pdf.scm:395 7f9b1457c9a0>
>> "bin") ("gobject-introspection" #<package
>> gobject-introspection@1.66.1 gnu/packages/glib.scm:428
>> 7f9b12994e70>))
>> --8<---------------cut here---------------end--------------->8---
>> 
>> If that makes sense to you, I’ll go ahead with this change and adjust
>> documentation accordingly.
> Sounds better than my own suggestion, since it'll keep working the way
> it did even when labels are eventually dropped.

Pushed with tests in 00dfff84c66c5c6aa4853684419a92befe55d4b4.

> If more control is needed, we can always later extend it to support
> (replace ("label" "output") (package output)).  WDYT?

I’d rather not: the goal of ‘modify-inputs’ is to provide an interface
that works as if input labels didn’t exist, with an eye on removing them
entirely in the future:

  https://guix.gnu.org/en/blog/2021/the-big-change/

Regardless, we’ll have to keep an eye on all these corner cases and to
adjust the plan accordingly.

Thanks!

Ludo’.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]