stack-0.1.0.0: The Haskell Tool Stack

Safe HaskellNone
LanguageHaskell2010

Stack.Types.BuildPlan

Contents

Description

Shared types for various stackage packages.

Synopsis

Types

data TestState Source

Constructors

ExpectSuccess 
ExpectFailure 
Don'tBuild

when the test suite will pull in things we don't want

newtype Maintainer Source

Constructors

Maintainer 

Fields

unMaintainer :: Text
 

newtype ExeName Source

Name of an executable.

Constructors

ExeName 

Instances

Eq ExeName 
Ord ExeName 
Show ExeName 
IsString ExeName 
Generic ExeName 
Binary ExeName 
Hashable ExeName 
ToJSON ExeName 
FromJSON ExeName 
ToJSON a => ToJSON (Map ExeName a) 
FromJSON a => FromJSON (Map ExeName a) 
type Rep ExeName 

data SimpleDesc Source

A simplified package description that tracks:

  • Package dependencies
  • Build tool dependencies
  • Provided executables

It has fully resolved all conditionals

Constructors

SimpleDesc 

Fields

sdPackages :: Map PackageName DepInfo
 
sdTools :: Map ExeName DepInfo
 
sdProvidedExes :: Set ExeName
 
sdModules :: Set Text

modules exported by the library

data DepInfo Source

Instances

data SnapName Source

The name of an LTS Haskell or Stackage Nightly snapshot.

Constructors

LTS !Int !Int 
Nightly !Day 

data MiniPackageInfo Source

Information on a single package for the MiniBuildPlan.

Constructors

MiniPackageInfo 

Fields

mpiVersion :: !Version
 
mpiFlags :: !(Map FlagName Bool)
 
mpiPackageDeps :: !(Set PackageName)
 
mpiToolDeps :: !(Set ByteString)

Due to ambiguity in Cabal, it is unclear whether this refers to the executable name, the package name, or something else. We have to guess based on what's available, which is why we store this is an unwrapped ByteString.

mpiExes :: !(Set ExeName)

Executables provided by this package

mpiHasLibrary :: !Bool

Is there a library present?

renderSnapName :: SnapName -> Text Source

Convert a SnapName into its short representation, e.g. lts-2.8, nightly-2015-03-05.

parseSnapName :: MonadThrow m => Text -> m SnapName Source

Parse the short representation of a SnapName.