[Haskell-cafe] Info on dependencies among libs distributed with ghc?
Magnus Therning
magnus at therning.org
Mon Apr 21 09:55:24 UTC 2014
Haha, oups. This is a rather confused answer. I think I started
reading the depency arrows the wrong way about half way through
writing it.
Just disregard the whole thing. I'll attempt a better reply in a new
email instead.
/M
On Mon, Apr 21, 2014 at 11:38:13AM +0200, Magnus Therning wrote:
> On Mon, Apr 21, 2014 at 10:38:51AM +0200, Herbert Valerio Riedel wrote:
> > On 2014-04-21 at 07:35:32 +0200, Magnus Therning wrote:
> >> On Sun, Apr 20, 2014 at 06:01:33PM -0400, Carter Schonwald wrote:
> >>> yup. go crazy :)
> >>
> >> What other packages that are shipped with Ghc can I update without
> >> running into the diamond-dependency problem?
> >>
> >> Package | Safe to update
> >> =================================
> >> Cabal | ✓
> >
> > Problems can arise though, if you install packages which start
> > linking against the newer Cabal package, and then you happen to need
> > to link those together with the 'ghc' package (which currently
> > depends on the Cabal lib bundled with the GHC distro), then you got
> > yourself a diamond-dep problem nevertheless
>
> Yes, that would be exactly the kind of problem that prompted me to ask
> the question. So, in short, it is not safe to upgrade Cabal.
>
> Then I have to say it is rather irritating that there is no way for me
> to safely provide the latest version of cabal-install!
>
> > If that poses no problem to you, many of the packages listed below
> > (except for the wired-in packages, namely: base, ghc-prim,
> > integer-gmp, and template-haskell), could be regarded similarly
> > "safe to update" (more so in a Cabal sandbox)
>
> Unfortunately I'm not talking about a Cabal sandbox, but rather of
> packages in an Arch Linux repository. So the problems caused by my
> actions affect not only me but every user of the repository.
>
> Well, the dependency graph produced by `ghc-pkg dot --global` seems to
> indicate that upgrading a single one of the
> packages-that-comes-with-ghc is akin to wandering into a proper mine
> field. AFAIU I can't upgrade a single package that `ghc` depends on:
>
> "ghc-7.8.2" -> "Cabal-1.18.1.3"
> "ghc-7.8.2" -> "array-0.5.0.0"
> "ghc-7.8.2" -> "base-4.7.0.0"
> "ghc-7.8.2" -> "bin-package-db-0.0.0.0"
> "ghc-7.8.2" -> "bytestring-0.10.4.0"
> "ghc-7.8.2" -> "containers-0.5.5.1"
> "ghc-7.8.2" -> "directory-1.2.1.0"
> "ghc-7.8.2" -> "filepath-1.3.0.2"
> "ghc-7.8.2" -> "hoopl-3.10.0.1"
> "ghc-7.8.2" -> "hpc-0.6.0.1"
> "ghc-7.8.2" -> "process-1.2.0.0"
> "ghc-7.8.2" -> "template-haskell-2.9.0.0"
> "ghc-7.8.2" -> "time-1.4.2"
> "ghc-7.8.2" -> "transformers-0.3.0.0"
> "ghc-7.8.2" -> "unix-2.7.0.1"
>
> On top of that I'd have to re-compile all packages that depend on the
> package I do upgrade. But then all packages come together as
> dependencies of `base`, which is hard-wired which I suppose will make
> it problematic to even recompile the same version.
>
> In short that would mean that none of the packages bundled with Ghc
> are "safe to update". No?
>
> /M
>
> --
> Magnus Therning OpenPGP: 0xAB4DFBA4
> email: magnus at therning.org jabber: magnus at therning.org
> twitter: magthe http://therning.org/magnus
>
> As long as there are ill-defined goals, bizarre bugs, and unrealistic
> schedules, there will be Real Programmers willing to jump in and Solve The
> Problem, saving the documentation for later. Long live Fortran!
> -- Ed Post
--
Magnus Therning OpenPGP: 0xAB4DFBA4
email: magnus at therning.org jabber: magnus at therning.org
twitter: magthe http://therning.org/magnus
What gets measured, gets done.
-- Tom Peters
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20140421/5e6ab734/attachment.sig>
More information about the Haskell-Cafe
mailing list