[commit: packages/Cabal] ghc-head: Instead of pruning, make an install plan for the whole environment. (99dc405)
git at git.haskell.org
git at git.haskell.org
Mon Aug 26 23:25:21 CEST 2013
Repository : ssh://git@git.haskell.org/Cabal
On branch : ghc-head
Link : http://git.haskell.org/?p=packages/Cabal.git;a=commit;h=99dc4056e9c09a9517fda5334c1f55814813136a
>---------------------------------------------------------------
commit 99dc4056e9c09a9517fda5334c1f55814813136a
Author: Mikhail Glushenkov <mikhail.glushenkov at gmail.com>
Date: Wed May 15 18:55:41 2013 +0200
Instead of pruning, make an install plan for the whole environment.
Previously, we used a hack for reinstalling reverse dependencies: we created an
install plan for the sandboxed package and the modified add-source deps and then
pruned the sandboxed package from it. This missed those revdeps that the
sandboxed package didn't depend on and also broke the sandboxed package if it
was installed in the sandboxed package DB (see #1229).
This commit replaces that hack with a more principled approach: we create a plan
for the whole environment (all packages installed in the sandbox), constraining
the modified add-source deps to be reinstalled and the already installed
packages to be preferably not.
Fixes #1229.
>---------------------------------------------------------------
99dc4056e9c09a9517fda5334c1f55814813136a
cabal-install/Distribution/Client/Dependency.hs | 44 ++++++-
cabal-install/Distribution/Client/Install.hs | 62 ++++++----
cabal-install/Distribution/Client/Sandbox.hs | 120 ++++++++++++--------
cabal-install/Distribution/Client/Sandbox/Types.hs | 23 +++-
cabal-install/Main.hs | 5 +-
5 files changed, 178 insertions(+), 76 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 99dc4056e9c09a9517fda5334c1f55814813136a
More information about the ghc-commits
mailing list