Safe Haskell | None |
---|---|
Language | Haskell2010 |
Functionality for downloading packages securely for cabal's usage.
- unpackPackages :: (MonadIO m, MonadBaseControl IO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadMask m, MonadLogger m) => EnvOverride -> FilePath -> [String] -> m ()
- unpackPackageIdents :: (MonadBaseControl IO m, MonadIO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadMask m, MonadLogger m) => EnvOverride -> Path Abs Dir -> Maybe (Path Rel Dir) -> Map PackageIdentifier (Maybe GitSHA1) -> m (Map PackageIdentifier (Path Abs Dir))
- fetchPackages :: (MonadIO m, MonadBaseControl IO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadMask m, MonadLogger m) => EnvOverride -> Set PackageIdentifier -> m ()
- resolvePackages :: (MonadIO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadLogger m, MonadBaseControl IO m, MonadCatch m) => EnvOverride -> Map PackageIdentifier (Maybe GitSHA1) -> Set PackageName -> m (Map PackageIdentifier ResolvedPackage)
- resolvePackagesAllowMissing :: (MonadIO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadLogger m, MonadBaseControl IO m, MonadCatch m) => Map PackageIdentifier (Maybe GitSHA1) -> Set PackageName -> m (Set PackageName, Set PackageIdentifier, Map PackageIdentifier ResolvedPackage)
- data ResolvedPackage = ResolvedPackage {
- rpCache :: !PackageCache
- rpIndex :: !PackageIndex
- rpGitSHA1 :: !(Maybe GitSHA1)
- withCabalFiles :: (MonadMask m, MonadIO m, MonadLogger m, MonadReader env m, HasConfig env) => IndexName -> [(PackageIdentifier, PackageCache, Maybe GitSHA1, a)] -> (PackageIdentifier -> a -> ByteString -> IO b) -> m [b]
- withCabalLoader :: (MonadIO m, MonadReader env m, HasConfig env, MonadLogger m, HasHttpManager env, MonadBaseUnlift IO m, MonadMask m) => EnvOverride -> ((PackageIdentifier -> IO ByteString) -> m a) -> m a
Documentation
:: (MonadIO m, MonadBaseControl IO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadMask m, MonadLogger m) | |
=> EnvOverride | |
-> FilePath | destination |
-> [String] | names or identifiers |
-> m () |
Intended to work for the command line command.
:: (MonadBaseControl IO m, MonadIO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadMask m, MonadLogger m) | |
=> EnvOverride | |
-> Path Abs Dir | unpack directory |
-> Maybe (Path Rel Dir) | the dist rename directory, see: https://github.com/fpco/stack/issues/157 |
-> Map PackageIdentifier (Maybe GitSHA1) | |
-> m (Map PackageIdentifier (Path Abs Dir)) |
Ensure that all of the given package idents are unpacked into the build unpack directory, and return the paths to all of the subdirectories.
fetchPackages :: (MonadIO m, MonadBaseControl IO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadMask m, MonadLogger m) => EnvOverride -> Set PackageIdentifier -> m () Source
Fetch packages into the cache without unpacking
resolvePackages :: (MonadIO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadLogger m, MonadBaseControl IO m, MonadCatch m) => EnvOverride -> Map PackageIdentifier (Maybe GitSHA1) -> Set PackageName -> m (Map PackageIdentifier ResolvedPackage) Source
Resolve a set of package names and identifiers into FetchPackage
values.
resolvePackagesAllowMissing :: (MonadIO m, MonadReader env m, HasHttpManager env, HasConfig env, MonadLogger m, MonadBaseControl IO m, MonadCatch m) => Map PackageIdentifier (Maybe GitSHA1) -> Set PackageName -> m (Set PackageName, Set PackageIdentifier, Map PackageIdentifier ResolvedPackage) Source
data ResolvedPackage Source
ResolvedPackage | |
|
withCabalFiles :: (MonadMask m, MonadIO m, MonadLogger m, MonadReader env m, HasConfig env) => IndexName -> [(PackageIdentifier, PackageCache, Maybe GitSHA1, a)] -> (PackageIdentifier -> a -> ByteString -> IO b) -> m [b] Source
Add the cabal files to a list of idents with their caches.
withCabalLoader :: (MonadIO m, MonadReader env m, HasConfig env, MonadLogger m, HasHttpManager env, MonadBaseUnlift IO m, MonadMask m) => EnvOverride -> ((PackageIdentifier -> IO ByteString) -> m a) -> m a Source
Provide a function which will load up a cabal ByteString
from the
package indices.