[Nix-dev] Haskell build failures
Mateusz Kowalczyk
fuuzetsu at fuuzetsu.co.uk
Fri Aug 8 21:29:31 CEST 2014
On 08/08/2014 09:19 PM, Peter Simons wrote:
> Hi Daniel,
>
> > Nix includes several versions of GHC, and one of the few cases where
> > we include multiple versions of a Haskell library is when that library
> > ships with GHC or Haskell Platform. Eg, 10 versions of HTTP, 9
> > versions of GLUT.
> >
> > We end up telling Hydra to build every version of the library against
> > every version of GHC, when what we actually want is to pick a library
> > version based on the GHC version. (With maybe some overlap.)
>
> yes, exactly, that is the problem we have. We keep old versions of
> libraries around because we need them to support, say GHC 6.12.3 or an
> old Haskell Platform, but newer compilers cannot build those packages
> any more. Still, Hydra tries to build every single package in
> haskell-packages.nix with the latest compiler. Ideally, Hydra would
> build no Haskell package that has a version number as part of its
> attribute name. For example, Hydra should build HTTP, but not
> HTTP_4000_0_6, HTTP_4000_0_9, HTTP_4000_1_1, and so on.
>
> Furthermore, Hydra builds the Haskell package set in 4 separate copies:
>
> haskellPackages_ghc783_no_profiling
> haskellPackages_ghc783_profiling
> haskellPackages_ghc783
> haskellPackages
>
> This means that every failing package contributes 4 build errors to the
> statistics.
>
> Of course, we have also our fair share of packages that are just plain
> broken. I'm sure many packages that worked with GHC 7.0.4 have
> bit-rotted away by now, but nobody notices because the package is
> obsolete anyway.
>
> Just my 2 cents,
> Peter
>
> _______________________________________________
> nix-dev mailing list
> nix-dev at lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
Can we not add a field to the Haskell expressions that's akin to the
usual ‘platforms’ field? If we know that somePackage_0_1_old doesn't
compile from 7.2 onwards, perhaps we could tell Hydra not to build it
with newer compilers. Seems like it would make a lot of breakage disappear.
--
Mateusz K.
More information about the nix-dev
mailing list