diff --git a/Stackage/BuildPlan.hs b/Stackage/BuildPlan.hs index 06a77ea1..d6463a0f 100644 --- a/Stackage/BuildPlan.hs +++ b/Stackage/BuildPlan.hs @@ -1,5 +1,6 @@ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE RecordWildCards #-} +{-# LANGUAGE TypeSynonymInstances #-} module Stackage.BuildPlan ( readBuildPlan , writeBuildPlan diff --git a/Stackage/InstallInfo.hs b/Stackage/InstallInfo.hs index b5a5c432..669ef110 100644 --- a/Stackage/InstallInfo.hs +++ b/Stackage/InstallInfo.hs @@ -5,6 +5,7 @@ module Stackage.InstallInfo ) where import Control.Monad (forM_, unless) +import Data.List (foldl') import qualified Data.Map as Map import qualified Data.Set as Set import Data.Version (showVersion) @@ -23,7 +24,7 @@ dropExcluded :: SelectSettings -> Map PackageName (VersionRange, Maintainer) -> Map PackageName (VersionRange, Maintainer) dropExcluded bs m0 = - Set.foldl' (flip Map.delete) m0 (excludedPackages bs) + foldl' (flip Map.delete) m0 (Set.toList $ excludedPackages bs) getInstallInfo :: SelectSettings -> IO InstallInfo getInstallInfo settings = do diff --git a/Stackage/NarrowDatabase.hs b/Stackage/NarrowDatabase.hs index 40309baa..42b47101 100644 --- a/Stackage/NarrowDatabase.hs +++ b/Stackage/NarrowDatabase.hs @@ -1,6 +1,7 @@ module Stackage.NarrowDatabase where import Control.Monad.Trans.Writer +import Data.List (foldl') import qualified Data.Map as Map import qualified Data.Set as Set import Prelude hiding (pi) @@ -46,7 +47,7 @@ narrowPackageDB settings core (PackageDB pdb) packageSet = , msg ] Right () -> return () - loop result' $ Set.foldl' (addDep users' result' maintainer) toProcess' $ Map.keysSet $ piDeps pi + loop result' $ foldl' (addDep users' result' maintainer) toProcess' $ Map.keys $ piDeps pi addDep users result maintainer toProcess p = case Map.lookup p result of Nothing -> Set.insert (users, p, maintainer) toProcess diff --git a/stackage.cabal b/stackage.cabal index 42d8d517..ff8f44bf 100644 --- a/stackage.cabal +++ b/stackage.cabal @@ -30,7 +30,7 @@ library Stackage.GhcPkg build-depends: base >= 4 && < 5 , containers - , Cabal + , Cabal >= 1.14 , tar >= 0.3 , zlib , bytestring