| License | BSD-3-Clause |
|---|---|
| Safe Haskell | None |
| Language | GHC2024 |
Stack.DependencyGraph
Description
Module exporting a function to create a pruned dependency graph given
a DotOpts value.
Synopsis
- createPrunedDependencyGraph :: DotOpts -> RIO Runner (ActualCompiler, Set PackageName, DependencyGraph)
- resolveDependencies :: (Applicative m, Monad m) => Maybe Int -> DependencyGraph -> (PackageName -> m (Set PackageName, DotPayload)) -> m DependencyGraph
- pruneGraph :: (Foldable f, Foldable g, Eq a) => f PackageName -> g PackageName -> Map PackageName (Set PackageName, a) -> Map PackageName (Set PackageName, a)
Documentation
createPrunedDependencyGraph :: DotOpts -> RIO Runner (ActualCompiler, Set PackageName, DependencyGraph) Source #
Create the dependency graph and also prune it as specified in the dot options. Returns a set of local names and a map from package names to dependencies.
resolveDependencies :: (Applicative m, Monad m) => Maybe Int -> DependencyGraph -> (PackageName -> m (Set PackageName, DotPayload)) -> m DependencyGraph Source #
Resolve the dependency graph up to (Just depth) or until fixpoint is reached
pruneGraph :: (Foldable f, Foldable g, Eq a) => f PackageName -> g PackageName -> Map PackageName (Set PackageName, a) -> Map PackageName (Set PackageName, a) Source #
pruneGraph dontPrune toPrune graph prunes all packages in graph with a
name in toPrune and removes resulting orphans unless they are in
dontPrune