diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Config.hs b/cabal-install/src/Network/Hackage/CabalInstall/Config.hs index 8ab871ff83e1d03eff323b6f9ebf9b65be572b75..c4c6851a10da67a5adfcdf0f6b3a1f3ee901aa30 100644 --- a/cabal-install/src/Network/Hackage/CabalInstall/Config.hs +++ b/cabal-install/src/Network/Hackage/CabalInstall/Config.hs @@ -62,13 +62,9 @@ import Network.Hackage.CabalInstall.Types (ConfigFlags (..), PkgInfo (..), Repo( import Network.Hackage.CabalInstall.Utils --- |Name of the packages directory. -packagesDirectoryName :: FilePath -packagesDirectoryName = "packages" - -- | Full path to the packages directory. packagesDirectory :: ConfigFlags -> FilePath -packagesDirectory cfg = configCacheDir cfg </> packagesDirectoryName +packagesDirectory cfg = configCacheDir cfg </> "packages" -- | Full path to the local cache directory for a repository. repoCacheDir :: ConfigFlags -> Repo -> FilePath diff --git a/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs b/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs index c87ab293546ee6e4cb791c90dc5c1bc5b89c92dc..bf6d5a40d2d0bf3acaf928ec459c8d32a9defb8a 100644 --- a/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs +++ b/cabal-install/src/Network/Hackage/CabalInstall/Dependency.hs @@ -149,9 +149,7 @@ getPackages = map worker -- |List all packages which can be fetched. filterFetchables :: [ResolvedPackage] -> [(PackageIdentifier,Repo)] -filterFetchables = mapMaybe worker - where worker dep = do (pkg,repo,_) <- resolvedData dep - return (pkg,repo) +filterFetchables pkgs = [(pkg,repo) | Just (pkg,repo,_) <- map resolvedData pkgs] finalizePackage :: Compiler -> [PackageIdentifier] -- ^ All installed packages @@ -188,7 +186,7 @@ resolveDependenciesAux cfg ps deps Nothing -> resolvedDepToResolvedPkg (dependency dep,Nothing) _ -> rDep return $ map resolve (filter (not . isInstalled ps . dependency) deps) - where + -- |Resolve some dependencies from the known packages while filtering out installed packages. -- The result has been modified to put the dependencies in front of the packages. resolveDependencies :: ConfigFlags