diff --git a/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs b/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs index 8e8baa78207..d8e075fc112 100644 --- a/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs +++ b/cabal-install/src/Distribution/Client/ProjectConfig/Legacy.hs @@ -228,9 +228,11 @@ instantiateProjectConfigSkeletonWithCompiler os arch impl _flags skel = go $ map projectSkeletonImports :: ProjectConfigSkeleton -> [ProjectConfigPath] projectSkeletonImports = view traverseCondTreeC +-- | Parses a project from its root config file, typically cabal.project. parseProject :: RootConfig -> FilePath -> HttpTransport -> Verbosity -> [ProjectConfigPath] -> ProjectConfigToParse -> IO (ParseResult ProjectConfigSkeleton) parseProject (RootConfig root) = parseProjectSkeleton [] (Importee root) +-- | Parses project configuration recursively, following imports. parseProjectSkeleton :: [Importer] -> Importee -> FilePath -> HttpTransport -> Verbosity -> [ProjectConfigPath] -> ProjectConfigToParse -> IO (ParseResult ProjectConfigSkeleton) parseProjectSkeleton srcImporters srcImportee cacheDir httpTransport verbosity seenImports (ProjectConfigToParse bs) = (sanityWalkPCS False =<<) <$> liftPR (go srcImporters srcImportee []) (ParseUtils.readFields bs)