From 65e9b88bc849e76040ed7947591ea7172cd02db5 Mon Sep 17 00:00:00 2001 From: Herbert Valerio Riedel <hvr@gnu.org> Date: Wed, 9 Apr 2014 22:55:36 +0200 Subject: [PATCH] Add `integer-{gmp,simple}` and `template-haskell` to list of non-upgradables This is related to #667 and similiar issues --- cabal-install/Distribution/Client/Dependency.hs | 3 ++- .../Distribution/Client/Dependency/Modular/Solver.hs | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/cabal-install/Distribution/Client/Dependency.hs b/cabal-install/Distribution/Client/Dependency.hs index b5c6184ed8..f7a2249f4d 100644 --- a/cabal-install/Distribution/Client/Dependency.hs +++ b/cabal-install/Distribution/Client/Dependency.hs @@ -228,7 +228,8 @@ dontUpgradeBasePackage params = extraConstraints = [ PackageConstraintInstalled pkgname | all (/=PackageName "base") (depResolverTargets params) - , pkgname <- [ PackageName "base", PackageName "ghc-prim" ] + , pkgname <- map PackageName [ "base", "ghc-prim", "integer-gmp" + , "integer-simple", "template-haskell" ] , isInstalled pkgname ] -- TODO: the top down resolver chokes on the base constraints -- below when there are no targets and thus no dep on base. diff --git a/cabal-install/Distribution/Client/Dependency/Modular/Solver.hs b/cabal-install/Distribution/Client/Dependency/Modular/Solver.hs index b1cb0e9bf2..0d9308c61f 100644 --- a/cabal-install/Distribution/Client/Dependency/Modular/Solver.hs +++ b/cabal-install/Distribution/Client/Dependency/Modular/Solver.hs @@ -49,6 +49,10 @@ solve sc idx userPrefs userConstraints userGoals = validateTree idx prunePhase = (if avoidReinstalls sc then P.avoidReinstalls (const True) else id) . -- packages that can never be "upgraded": - P.requireInstalled (`elem` [PackageName "base", - PackageName "ghc-prim"]) + P.requireInstalled (`elem` [ PackageName "base" + , PackageName "ghc-prim" + , PackageName "integer-gmp" + , PackageName "integer-simple" + , PackageName "template-haskell" + ]) buildPhase = buildTree idx (independentGoals sc) userGoals -- GitLab