Safe Haskell | None |
---|---|
Language | Haskell2010 |
Distribution.Client.ProjectPlanOutput
Contents
Synopsis
- writePlanExternalRepresentation :: DistDirLayout -> ElaboratedInstallPlan -> ElaboratedSharedConfig -> IO ()
- data PostBuildProjectStatus = PostBuildProjectStatus {
- packagesDefinitelyUpToDate :: PackageIdSet
- packagesProbablyUpToDate :: PackageIdSet
- packagesOutOfDate :: PackageIdSet
- packagesInvalidByChangedLibDeps :: PackageIdSet
- packagesInvalidByFailedBuild :: PackageIdSet
- packagesLibDepGraph :: Graph (Node UnitId ElaboratedPlanPackage)
- packagesBuildLocal :: PackageIdSet
- packagesBuildInplace :: PackageIdSet
- packagesAlreadyInStore :: PackageIdSet
- updatePostBuildProjectStatus :: Verbosity -> DistDirLayout -> ElaboratedInstallPlan -> BuildStatusMap -> BuildOutcomes -> IO PostBuildProjectStatus
- createPackageEnvironmentAndArgs :: Verbosity -> FilePath -> ElaboratedInstallPlan -> ElaboratedSharedConfig -> PostBuildProjectStatus -> IO ([String], [(String, Maybe String)])
- writePlanGhcEnvironment :: FilePath -> ElaboratedInstallPlan -> ElaboratedSharedConfig -> PostBuildProjectStatus -> IO (Maybe FilePath)
- argsEquivalentOfGhcEnvironmentFile :: Compiler -> DistDirLayout -> ElaboratedInstallPlan -> PostBuildProjectStatus -> [String]
Plan output
writePlanExternalRepresentation :: DistDirLayout -> ElaboratedInstallPlan -> ElaboratedSharedConfig -> IO () Source #
Write out a representation of the elaborated install plan.
This is for the benefit of debugging and external tools like editors.
Project status
Several outputs rely on having a general overview of
data PostBuildProjectStatus Source #
Constructors
PostBuildProjectStatus | |
Fields
|
updatePostBuildProjectStatus :: Verbosity -> DistDirLayout -> ElaboratedInstallPlan -> BuildStatusMap -> BuildOutcomes -> IO PostBuildProjectStatus Source #
createPackageEnvironmentAndArgs :: Verbosity -> FilePath -> ElaboratedInstallPlan -> ElaboratedSharedConfig -> PostBuildProjectStatus -> IO ([String], [(String, Maybe String)]) Source #
Prepare a package environment and args that includes all the library dependencies for a plan.
When running cabal new-exec, we want to set things up so that the compiler can find all the right packages (and nothing else). This function is intended to do that work. It takes a location where it can write files temporarily, in case the compiler wants to learn this information via the filesystem, and returns any environment variable overrides the compiler needs.
The function returns both the arguments you need to pass to the compiler and the environment variables you need to set.