guix-devel
[Top][All Lists]
Advanced

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

Re: propagating inputs in ghc-* packages


From: Ricardo Wurmus
Subject: Re: propagating inputs in ghc-* packages
Date: Sat, 01 Oct 2016 09:45:21 +0200
User-agent: mu4e 0.9.16; emacs 25.1.1

Federico Beffa <address@hidden> writes:

> Ricardo Wurmus <address@hidden> writes:
>
>> Hi Guix,
>>
>> I’m in the middle of upgrading our Haskell packages.  (Actually, I’m
>> just yak shaving.  I need “pandoc-citeproc” for “r-knitr”…)
>>
>> I noticed that upgrading Haskell packages is a pain in the neck because
>> of propagated inputs.  It seems that not all packages have fully
>> declared dependencies and just work accidentally because of propagated
>> inputs of a related package.  This also makes upgrades more difficult
>> because I can get substitutes from Hydra that depend on older versions
>> of some Haskell packages.
>>
>> It looks like Haskell binaries actually embed references to other
>> Haskell packages, so I’m not sure we actually need to propagate anything
>> at all.  Could someone please confirm this?
>
> From what I recall, binary executables include references to packages,
> but libraries do not.  So, at least at the time I wrote the first
> version of the haskell-build-system, propagated inputs seemed to be
> necessary for packages providing libraries, but not for ones providing
> applications.

Thanks for this comment.  With Eric Bavier’s patch this seems no longer
necessary.  I’ve already rebuilt a lot of Haskell packages without any
propagation (and some added inputs), and I’ve got working libraries and
executables.  I’m still rebuilding remaining Haskell packages but I’m
now convinced that propagation is no longer needed with the current
version of the build system.

I’m preparing a patch to remove propagation from all Haskell packages.
Now the question is only whether to do this all in one patch or in one
patch per package… :)

~~ Ricardo




reply via email to

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