| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Stack.PackageLocation
Description
Deal with downloading, cloning, or whatever else is necessary for
getting a PackageLocation into something Stack can work with.
- resolveSinglePackageLocation :: HasConfig env => Path Abs Dir -> PackageLocation FilePath -> RIO env (Path Abs Dir)
- resolveMultiPackageLocation :: HasConfig env => Path Abs Dir -> PackageLocation Subdirs -> RIO env [(Path Abs Dir, PackageLocation FilePath)]
- parseSingleCabalFile :: forall env. HasConfig env => Path Abs Dir -> Bool -> PackageLocation FilePath -> RIO env LocalPackageView
- parseSingleCabalFileIndex :: forall env. HasConfig env => (PackageIdentifierRevision -> IO ByteString) -> Path Abs Dir -> PackageLocationIndex FilePath -> RIO env GenericPackageDescription
- parseMultiCabalFiles :: forall env. HasConfig env => Path Abs Dir -> Bool -> PackageLocation Subdirs -> RIO env [LocalPackageView]
- parseMultiCabalFilesIndex :: forall env. HasConfig env => (PackageIdentifierRevision -> IO ByteString) -> Path Abs Dir -> PackageLocationIndex Subdirs -> RIO env [(GenericPackageDescription, PackageLocationIndex FilePath)]
Documentation
resolveSinglePackageLocation Source #
Arguments
| :: HasConfig env | |
| => Path Abs Dir | project root |
| -> PackageLocation FilePath | |
| -> RIO env (Path Abs Dir) |
Same as resolveMultiPackageLocation, but works on a
SinglePackageLocation.
resolveMultiPackageLocation Source #
Arguments
| :: HasConfig env | |
| => Path Abs Dir | project root |
| -> PackageLocation Subdirs | |
| -> RIO env [(Path Abs Dir, PackageLocation FilePath)] |
Resolve a PackageLocation into a path, downloading and cloning as necessary.
Returns the updated PackageLocation value with just a single subdir (if relevant).
Arguments
| :: HasConfig env | |
| => Path Abs Dir | project root, used for checking out necessary files |
| -> Bool | print warnings? |
| -> PackageLocation FilePath | |
| -> RIO env LocalPackageView |
parseSingleCabalFileIndex Source #
Arguments
| :: HasConfig env | |
| => (PackageIdentifierRevision -> IO ByteString) | lookup in index |
| -> Path Abs Dir | project root, used for checking out necessary files |
| -> PackageLocationIndex FilePath | |
| -> RIO env GenericPackageDescription |
Parse the cabal files present in the given 'PackageLocationIndex FilePath'.
Arguments
| :: HasConfig env | |
| => Path Abs Dir | project root, used for checking out necessary files |
| -> Bool | print warnings? |
| -> PackageLocation Subdirs | |
| -> RIO env [LocalPackageView] |
Load and parse cabal files into GenericPackageDescriptions
parseMultiCabalFilesIndex Source #
Arguments
| :: HasConfig env | |
| => (PackageIdentifierRevision -> IO ByteString) | |
| -> Path Abs Dir | project root, used for checking out necessary files |
| -> PackageLocationIndex Subdirs | |
| -> RIO env [(GenericPackageDescription, PackageLocationIndex FilePath)] |
parseMultiCabalFiles but supports PLIndex