Safe Haskell | None |
---|---|
Language | Haskell2010 |
Pantry.Types
Synopsis
- data PantryConfig = PantryConfig {
- pcPackageIndex :: !PackageIndexConfig
- pcHpackExecutable :: !HpackExecutable
- pcHpackForce :: !Force
- pcRootDir :: !(Path Abs Dir)
- pcStorage :: !Storage
- pcUpdateRef :: !(MVar Bool)
- pcParsedCabalFilesRawImmutable :: !(IORef (Map RawPackageLocationImmutable GenericPackageDescription))
- pcParsedCabalFilesMutable :: !(IORef (Map (Path Abs Dir) (PrintWarnings -> IO GenericPackageDescription, PackageName, Path Abs File)))
- pcConnectionCount :: !Int
- pcCasaConfig :: !(Maybe (CasaRepoPrefix, Int))
- pcSnapshotLocation :: SnapName -> RawSnapshotLocation
- pcGlobalHintsLocation :: WantedCompiler -> GlobalHintsLocation
- data PackageIndexConfig = PackageIndexConfig {}
- data HackageSecurityConfig = HackageSecurityConfig {
- hscKeyIds :: ![Text]
- hscKeyThreshold :: !Int
- hscIgnoreExpiry :: !Bool
- defaultHackageSecurityConfig :: HackageSecurityConfig
- data Storage = Storage {
- withStorage_ :: forall env a. HasLogFunc env => ReaderT SqlBackend (RIO env) a -> RIO env a
- withWriteLock_ :: forall env a. HasLogFunc env => RIO env a -> RIO env a
- class HasPantryConfig env where
- pantryConfigL :: Lens' env PantryConfig
- data BlobKey = BlobKey !SHA256 !FileSize
- data PackageName
- data Version
- data PackageIdentifier = PackageIdentifier {}
- newtype Revision = Revision Word
- data ModuleName
- data CabalFileInfo
- data PrintWarnings
- newtype PackageNameP = PackageNameP {}
- newtype VersionP = VersionP {}
- newtype ModuleNameP = ModuleNameP {}
- data PackageIdentifierRevision = PackageIdentifierRevision !PackageName !Version !CabalFileInfo
- pirForHash :: PackageIdentifier -> BlobKey -> PackageIdentifierRevision
- data FileType
- data BuildFile
- newtype FileSize = FileSize Word
- data TreeEntry = TreeEntry {}
- data SafeFilePath
- unSafeFilePath :: SafeFilePath -> Text
- mkSafeFilePath :: Text -> Maybe SafeFilePath
- safeFilePathToPath :: MonadThrow m => Path Abs Dir -> SafeFilePath -> m (Path Abs File)
- hpackSafeFilePath :: SafeFilePath
- newtype TreeKey = TreeKey BlobKey
- newtype Tree = TreeMap (Map SafeFilePath TreeEntry)
- renderTree :: Tree -> ByteString
- parseTree :: ByteString -> Maybe Tree
- parseTreeM :: MonadThrow m => (BlobKey, ByteString) -> m (TreeKey, Tree)
- data SHA256
- data Unresolved a
- resolvePaths :: MonadIO m => Maybe (Path Abs Dir) -> Unresolved a -> m a
- data Package = Package {}
- data PackageCabal
- data PHpack = PHpack {
- phOriginal :: !TreeEntry
- phGenerated :: !TreeEntry
- phVersion :: !Version
- data RawPackageLocation
- data PackageLocation
- = PLImmutable !PackageLocationImmutable
- | PLMutable !(ResolvedPath Dir)
- toRawPL :: PackageLocation -> RawPackageLocation
- data RawPackageLocationImmutable
- data PackageLocationImmutable
- toRawPLI :: PackageLocationImmutable -> RawPackageLocationImmutable
- data RawArchive = RawArchive {
- raLocation :: !ArchiveLocation
- raHash :: !(Maybe SHA256)
- raSize :: !(Maybe FileSize)
- raSubdir :: !Text
- data Archive = Archive {
- archiveLocation :: !ArchiveLocation
- archiveHash :: !SHA256
- archiveSize :: !FileSize
- archiveSubdir :: !Text
- toRawArchive :: Archive -> RawArchive
- data Repo = Repo {
- repoUrl :: !Text
- repoCommit :: !Text
- repoType :: !RepoType
- repoSubdir :: !Text
- data AggregateRepo = AggregateRepo {
- aRepo :: !SimpleRepo
- aRepoSubdirs :: [(Text, RawPackageMetadata)]
- data SimpleRepo = SimpleRepo {
- sRepoUrl :: !Text
- sRepoCommit :: !Text
- sRepoType :: !RepoType
- toAggregateRepos :: [(Repo, RawPackageMetadata)] -> [AggregateRepo]
- rToSimpleRepo :: Repo -> SimpleRepo
- arToSimpleRepo :: AggregateRepo -> SimpleRepo
- data RepoType
- parsePackageIdentifier :: String -> Maybe PackageIdentifier
- parsePackageName :: String -> Maybe PackageName
- parsePackageNameThrowing :: MonadThrow m => String -> m PackageName
- parseFlagName :: String -> Maybe FlagName
- parseVersion :: String -> Maybe Version
- parseVersionThrowing :: MonadThrow m => String -> m Version
- packageIdentifierString :: PackageIdentifier -> String
- packageNameString :: PackageName -> String
- flagNameString :: FlagName -> String
- versionString :: Version -> String
- moduleNameString :: ModuleName -> String
- data OptionalSubdirs
- = OSSubdirs !(NonEmpty Text)
- | OSPackageMetadata !Text !RawPackageMetadata
- data ArchiveLocation
- = ALUrl !Text
- | ALFilePath !(ResolvedPath File)
- newtype RelFilePath = RelFilePath Text
- newtype CabalString a = CabalString {
- unCabalString :: a
- toCabalStringMap :: Map a v -> Map (CabalString a) v
- unCabalStringMap :: Map (CabalString a) v -> Map a v
- parsePackageIdentifierRevision :: Text -> Either PantryException PackageIdentifierRevision
- data Mismatch a = Mismatch {
- mismatchExpected :: !a
- mismatchActual :: !a
- data PantryException
- = PackageIdentifierRevisionParseFail !Text
- | InvalidCabalFile !(Either RawPackageLocationImmutable (Path Abs File)) !(Maybe Version) ![PError] ![PWarning]
- | TreeWithoutCabalFile !RawPackageLocationImmutable
- | TreeWithMultipleCabalFiles !RawPackageLocationImmutable ![SafeFilePath]
- | MismatchedCabalName !(Path Abs File) !PackageName
- | NoLocalPackageDirFound !(Path Abs Dir)
- | NoCabalFileFound !(Path Abs Dir)
- | MultipleCabalFilesFound !(Path Abs Dir) ![Path Abs File]
- | InvalidWantedCompiler !Text
- | InvalidSnapshotLocation !(Path Abs Dir) !Text
- | InvalidOverrideCompiler !WantedCompiler !WantedCompiler
- | InvalidFilePathSnapshot !Text
- | InvalidSnapshot !RawSnapshotLocation !SomeException
- | InvalidGlobalHintsLocation !(Path Abs Dir) !Text
- | InvalidFilePathGlobalHints !Text
- | MismatchedPackageMetadata !RawPackageLocationImmutable !RawPackageMetadata !(Maybe TreeKey) !PackageIdentifier
- | Non200ResponseStatus !Status
- | InvalidBlobKey !(Mismatch BlobKey)
- | Couldn'tParseSnapshot !RawSnapshotLocation !String
- | WrongCabalFileName !RawPackageLocationImmutable !SafeFilePath !PackageName
- | DownloadInvalidSHA256 !Text !(Mismatch SHA256)
- | DownloadInvalidSize !Text !(Mismatch FileSize)
- | DownloadTooLarge !Text !(Mismatch FileSize)
- | LocalNoArchiveFileFound !(Path Abs File)
- | LocalInvalidSHA256 !(Path Abs File) !(Mismatch SHA256)
- | LocalInvalidSize !(Path Abs File) !(Mismatch FileSize)
- | UnknownArchiveType !ArchiveLocation
- | InvalidTarFileType !ArchiveLocation !FilePath !FileType
- | UnsupportedTarball !ArchiveLocation !Text
- | NoHackageCryptographicHash !PackageIdentifier
- | FailedToCloneRepo !SimpleRepo
- | TreeReferencesMissingBlob !RawPackageLocationImmutable !SafeFilePath !BlobKey
- | CompletePackageMetadataMismatch !RawPackageLocationImmutable !PackageMetadata
- | CRC32Mismatch !ArchiveLocation !FilePath !(Mismatch Word32)
- | UnknownHackagePackage !PackageIdentifierRevision !FuzzyResults
- | CannotCompleteRepoNonSHA1 !Repo
- | MutablePackageLocationFromUrl !Text
- | MismatchedCabalFileForHackage !PackageIdentifierRevision !(Mismatch PackageIdentifier)
- | PackageNameParseFail !Text
- | PackageVersionParseFail !Text
- | InvalidCabalFilePath !(Path Abs File)
- | DuplicatePackageNames !Utf8Builder ![(PackageName, [RawPackageLocationImmutable])]
- | MigrationFailure !Text !(Path Abs File) !SomeException
- | NoCasaConfig
- | InvalidTreeFromCasa !BlobKey !ByteString
- | ParseSnapNameException !Text
- | HpackLibraryException !(Path Abs File) !String
- | HpackExeException !FilePath !(Path Abs Dir) !SomeException
- data FuzzyResults
- = FRNameNotFound ![PackageName]
- | FRVersionNotFound !(NonEmpty PackageIdentifierRevision)
- | FRRevisionNotFound !(NonEmpty PackageIdentifierRevision)
- data ResolvedPath t = ResolvedPath {
- resolvedRelative :: !RelFilePath
- resolvedAbsolute :: !(Path Abs t)
- data HpackExecutable
- = HpackBundled
- | HpackCommand !FilePath
- data WantedCompiler
- snapshotLocation :: HasPantryConfig env => SnapName -> RIO env RawSnapshotLocation
- defaultSnapshotLocation :: SnapName -> RawSnapshotLocation
- globalHintsLocation :: HasPantryConfig env => WantedCompiler -> RIO env GlobalHintsLocation
- defaultGlobalHintsLocation :: WantedCompiler -> GlobalHintsLocation
- data SnapName
- parseSnapName :: MonadThrow m => Text -> m SnapName
- data RawSnapshotLocation
- = RSLCompiler !WantedCompiler
- | RSLUrl !Text !(Maybe BlobKey)
- | RSLFilePath !(ResolvedPath File)
- | RSLSynonym !SnapName
- data SnapshotLocation
- = SLCompiler !WantedCompiler
- | SLUrl !Text !BlobKey
- | SLFilePath !(ResolvedPath File)
- toRawSL :: SnapshotLocation -> RawSnapshotLocation
- parseHackageText :: Text -> Either PantryException (PackageIdentifier, BlobKey)
- parseRawSnapshotLocation :: Text -> Unresolved RawSnapshotLocation
- data RawSnapshotLayer = RawSnapshotLayer {
- rslParent :: !RawSnapshotLocation
- rslCompiler :: !(Maybe WantedCompiler)
- rslLocations :: ![RawPackageLocationImmutable]
- rslDropPackages :: !(Set PackageName)
- rslFlags :: !(Map PackageName (Map FlagName Bool))
- rslHidden :: !(Map PackageName Bool)
- rslGhcOptions :: !(Map PackageName [Text])
- rslPublishTime :: !(Maybe UTCTime)
- data SnapshotLayer = SnapshotLayer {
- slParent :: !SnapshotLocation
- slCompiler :: !(Maybe WantedCompiler)
- slLocations :: ![PackageLocationImmutable]
- slDropPackages :: !(Set PackageName)
- slFlags :: !(Map PackageName (Map FlagName Bool))
- slHidden :: !(Map PackageName Bool)
- slGhcOptions :: !(Map PackageName [Text])
- slPublishTime :: !(Maybe UTCTime)
- toRawSnapshotLayer :: SnapshotLayer -> RawSnapshotLayer
- data RawSnapshot = RawSnapshot {
- rsCompiler :: !WantedCompiler
- rsPackages :: !(Map PackageName RawSnapshotPackage)
- rsDrop :: !(Set PackageName)
- data Snapshot = Snapshot {
- snapshotCompiler :: !WantedCompiler
- snapshotPackages :: !(Map PackageName SnapshotPackage)
- snapshotDrop :: !(Set PackageName)
- data RawSnapshotPackage = RawSnapshotPackage {
- rspLocation :: !RawPackageLocationImmutable
- rspFlags :: !(Map FlagName Bool)
- rspHidden :: !Bool
- rspGhcOptions :: ![Text]
- data SnapshotPackage = SnapshotPackage {
- spLocation :: !PackageLocationImmutable
- spFlags :: !(Map FlagName Bool)
- spHidden :: !Bool
- spGhcOptions :: ![Text]
- data GlobalHintsLocation
- = GHLUrl !Text
- | GHLFilePath !(ResolvedPath File)
- parseGlobalHintsLocation :: Text -> Unresolved GlobalHintsLocation
- parseWantedCompiler :: Text -> Either PantryException WantedCompiler
- data RawPackageMetadata = RawPackageMetadata {
- rpmName :: !(Maybe PackageName)
- rpmVersion :: !(Maybe Version)
- rpmTreeKey :: !(Maybe TreeKey)
- data PackageMetadata = PackageMetadata {
- pmIdent :: !PackageIdentifier
- pmTreeKey :: !TreeKey
- toRawPM :: PackageMetadata -> RawPackageMetadata
- cabalFileName :: PackageName -> SafeFilePath
- newtype SnapshotCacheHash = SnapshotCacheHash {}
- getGlobalHintsFile :: HasPantryConfig env => RIO env (Path Abs File)
- bsToBlobKey :: ByteString -> BlobKey
- warnMissingCabalFile :: HasLogFunc env => RawPackageLocationImmutable -> RIO env ()
- connRDBMS :: SqlBackend -> Text
Documentation
data PantryConfig Source #
Configuration value used by the entire pantry package. Create one using
withPantryConfig
or withPantryConfig'
. See also PantryApp
for a
convenience approach to using pantry.
Since: 0.1.0.0
Constructors
PantryConfig | |
Fields
|
data PackageIndexConfig Source #
Configuration to securely download package metadata and contents. For most
purposes, you'll want to use the default Hackage settings via
defaultPackageIndexConfig
.
NOTE It's highly recommended to only use the official Hackage server or a mirror. See https://github.com/commercialhaskell/stack/issues/4137.
Since: 0.6.0
Constructors
PackageIndexConfig | |
Fields |
Instances
Show PackageIndexConfig Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> PackageIndexConfig -> ShowS show :: PackageIndexConfig -> String showList :: [PackageIndexConfig] -> ShowS | |
FromJSON (WithJSONWarnings PackageIndexConfig) Source # | If the Since: 0.6.0 |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings PackageIndexConfig) parseJSONList :: Value -> Parser [WithJSONWarnings PackageIndexConfig] omittedField :: Maybe (WithJSONWarnings PackageIndexConfig) |
data HackageSecurityConfig Source #
Configuration for Hackage Security to securely download package metadata
and contents. For most purposes, you'll want to use the default Hackage
settings via defaultHackageSecurityConfig
.
NOTE It's highly recommended to only use the official Hackage server or a mirror. See https://github.com/commercialhaskell/stack/issues/4137.
Since: 0.6.0
Constructors
HackageSecurityConfig | |
Fields
|
Instances
Show HackageSecurityConfig Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> HackageSecurityConfig -> ShowS show :: HackageSecurityConfig -> String showList :: [HackageSecurityConfig] -> ShowS | |
FromJSON (WithJSONWarnings HackageSecurityConfig) Source # | If the Since: 0.1.1.0 |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings HackageSecurityConfig) parseJSONList :: Value -> Parser [WithJSONWarnings HackageSecurityConfig] omittedField :: Maybe (WithJSONWarnings HackageSecurityConfig) |
defaultHackageSecurityConfig :: HackageSecurityConfig Source #
Default HackageSecurityConfig
value using the official Hackage server.
The value of the hscIgnoreExpiry
field is True
.
Since: 0.7.0
Represents a SQL database connection.
Constructors
Storage | |
Fields
|
class HasPantryConfig env where Source #
An environment which contains a PantryConfig
.
Since: 0.1.0.0
Methods
pantryConfigL :: Lens' env PantryConfig Source #
Lens to get or set the PantryConfig
Since: 0.1.0.0
A key for looking up a blob, which combines the SHA256 hash of the contents and the file size.
The file size may seem redundant with the hash. However, it is necessary for safely downloading blobs from an untrusted source. See https://www.fpcomplete.com/blog/2018/07/pantry-part-2-trees-keys.
Since: 0.1.0.0
Instances
FromJSON BlobKey Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser BlobKey parseJSONList :: Value -> Parser [BlobKey] omittedField :: Maybe BlobKey | |||||
ToJSON BlobKey Source # | |||||
Defined in Pantry.Types Methods toEncoding :: BlobKey -> Encoding toJSONList :: [BlobKey] -> Value toEncodingList :: [BlobKey] -> Encoding | |||||
Generic BlobKey Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show BlobKey Source # | |||||
NFData BlobKey Source # | |||||
Defined in Pantry.Types | |||||
Eq BlobKey Source # | |||||
Ord BlobKey Source # | |||||
Display BlobKey Source # | |||||
Defined in Pantry.Types | |||||
type Rep BlobKey Source # | |||||
Defined in Pantry.Types type Rep BlobKey = D1 ('MetaData "BlobKey" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "BlobKey" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SHA256) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FileSize))) |
data PackageName #
Instances
Parsec PackageName | |||||
Defined in Distribution.Types.PackageName Methods parsec :: CabalParsing m => m PackageName | |||||
Pretty PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
Structured PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
Data PackageName | |||||
Defined in Distribution.Types.PackageName Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PackageName -> c PackageName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PackageName toConstr :: PackageName -> Constr dataTypeOf :: PackageName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PackageName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PackageName) gmapT :: (forall b. Data b => b -> b) -> PackageName -> PackageName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PackageName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PackageName -> r gmapQ :: (forall d. Data d => d -> u) -> PackageName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> PackageName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> PackageName -> m PackageName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageName -> m PackageName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageName -> m PackageName | |||||
IsString PackageName | |||||
Defined in Distribution.Types.PackageName Methods fromString :: String -> PackageName | |||||
Generic PackageName | |||||
Defined in Distribution.Types.PackageName Associated Types
| |||||
Read PackageName | |||||
Defined in Distribution.Types.PackageName Methods readsPrec :: Int -> ReadS PackageName readList :: ReadS [PackageName] readPrec :: ReadPrec PackageName readListPrec :: ReadPrec [PackageName] | |||||
Show PackageName | |||||
Defined in Distribution.Types.PackageName Methods showsPrec :: Int -> PackageName -> ShowS show :: PackageName -> String showList :: [PackageName] -> ShowS | |||||
Binary PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
NFData PackageName | |||||
Defined in Distribution.Types.PackageName Methods rnf :: PackageName -> () | |||||
Eq PackageName | |||||
Defined in Distribution.Types.PackageName | |||||
Ord PackageName | |||||
Defined in Distribution.Types.PackageName Methods compare :: PackageName -> PackageName -> Ordering (<) :: PackageName -> PackageName -> Bool (<=) :: PackageName -> PackageName -> Bool (>) :: PackageName -> PackageName -> Bool (>=) :: PackageName -> PackageName -> Bool max :: PackageName -> PackageName -> PackageName min :: PackageName -> PackageName -> PackageName | |||||
type Rep PackageName | |||||
Defined in Distribution.Types.PackageName type Rep PackageName = D1 ('MetaData "PackageName" "Distribution.Types.PackageName" "Cabal-syntax-3.10.3.0-4da5" 'True) (C1 ('MetaCons "PackageName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShortText))) |
Instances
Parsec Version | |||||
Defined in Distribution.Types.Version | |||||
Pretty Version | |||||
Defined in Distribution.Types.Version | |||||
Structured Version | |||||
Defined in Distribution.Types.Version | |||||
Data Version | |||||
Defined in Distribution.Types.Version Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Version -> c Version gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Version dataTypeOf :: Version -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Version) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Version) gmapT :: (forall b. Data b => b -> b) -> Version -> Version gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Version -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Version -> r gmapQ :: (forall d. Data d => d -> u) -> Version -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Version -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Version -> m Version gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Version -> m Version gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Version -> m Version | |||||
Generic Version | |||||
Defined in Distribution.Types.Version Associated Types
| |||||
Read Version | |||||
Defined in Distribution.Types.Version | |||||
Show Version | |||||
Binary Version | |||||
NFData Version | |||||
Defined in Distribution.Types.Version | |||||
Eq Version | |||||
Ord Version | |||||
type Rep Version | |||||
Defined in Distribution.Types.Version type Rep Version = D1 ('MetaData "Version" "Distribution.Types.Version" "Cabal-syntax-3.10.3.0-4da5" 'False) (C1 ('MetaCons "PV0" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Word64)) :+: C1 ('MetaCons "PV1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int]))) |
data PackageIdentifier #
Constructors
PackageIdentifier | |
Fields
|
Instances
Package PackageIdentifier | |||||
Defined in Distribution.Package Methods | |||||
Parsec PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods parsec :: CabalParsing m => m PackageIdentifier | |||||
Pretty PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods pretty :: PackageIdentifier -> Doc prettyVersioned :: CabalSpecVersion -> PackageIdentifier -> Doc | |||||
Structured PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods structure :: Proxy PackageIdentifier -> Structure structureHash' :: Tagged PackageIdentifier MD5 | |||||
Data PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PackageIdentifier -> c PackageIdentifier gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PackageIdentifier toConstr :: PackageIdentifier -> Constr dataTypeOf :: PackageIdentifier -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PackageIdentifier) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PackageIdentifier) gmapT :: (forall b. Data b => b -> b) -> PackageIdentifier -> PackageIdentifier gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PackageIdentifier -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PackageIdentifier -> r gmapQ :: (forall d. Data d => d -> u) -> PackageIdentifier -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> PackageIdentifier -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> PackageIdentifier -> m PackageIdentifier gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageIdentifier -> m PackageIdentifier gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PackageIdentifier -> m PackageIdentifier | |||||
Generic PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Associated Types
Methods from :: PackageIdentifier -> Rep PackageIdentifier x to :: Rep PackageIdentifier x -> PackageIdentifier | |||||
Read PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods readsPrec :: Int -> ReadS PackageIdentifier readList :: ReadS [PackageIdentifier] readPrec :: ReadPrec PackageIdentifier readListPrec :: ReadPrec [PackageIdentifier] | |||||
Show PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods showsPrec :: Int -> PackageIdentifier -> ShowS show :: PackageIdentifier -> String showList :: [PackageIdentifier] -> ShowS | |||||
Binary PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods put :: PackageIdentifier -> Put get :: Get PackageIdentifier putList :: [PackageIdentifier] -> Put | |||||
NFData PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods rnf :: PackageIdentifier -> () | |||||
Eq PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods (==) :: PackageIdentifier -> PackageIdentifier -> Bool (/=) :: PackageIdentifier -> PackageIdentifier -> Bool | |||||
Ord PackageIdentifier | |||||
Defined in Distribution.Types.PackageId Methods compare :: PackageIdentifier -> PackageIdentifier -> Ordering (<) :: PackageIdentifier -> PackageIdentifier -> Bool (<=) :: PackageIdentifier -> PackageIdentifier -> Bool (>) :: PackageIdentifier -> PackageIdentifier -> Bool (>=) :: PackageIdentifier -> PackageIdentifier -> Bool max :: PackageIdentifier -> PackageIdentifier -> PackageIdentifier min :: PackageIdentifier -> PackageIdentifier -> PackageIdentifier | |||||
type Rep PackageIdentifier | |||||
Defined in Distribution.Types.PackageId type Rep PackageIdentifier = D1 ('MetaData "PackageIdentifier" "Distribution.Types.PackageId" "Cabal-syntax-3.10.3.0-4da5" 'False) (C1 ('MetaCons "PackageIdentifier" 'PrefixI 'True) (S1 ('MetaSel ('Just "pkgName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PackageName) :*: S1 ('MetaSel ('Just "pkgVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Version))) |
The revision number of a package from Hackage, counting upwards from 0 (the original cabal file).
See caveats on CFIRevision
.
Since: 0.1.0.0
Constructors
Revision Word |
Instances
Data Revision Source # | |||||
Defined in Pantry.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Revision -> c Revision gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Revision toConstr :: Revision -> Constr dataTypeOf :: Revision -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Revision) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Revision) gmapT :: (forall b. Data b => b -> b) -> Revision -> Revision gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Revision -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Revision -> r gmapQ :: (forall d. Data d => d -> u) -> Revision -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Revision -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Revision -> m Revision gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Revision -> m Revision gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Revision -> m Revision | |||||
Generic Revision Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show Revision Source # | |||||
NFData Revision Source # | |||||
Defined in Pantry.Types | |||||
Eq Revision Source # | |||||
Ord Revision Source # | |||||
Hashable Revision Source # | |||||
Defined in Pantry.Types | |||||
PersistField Revision Source # | |||||
Defined in Pantry.Types Methods toPersistValue :: Revision -> PersistValue fromPersistValue :: PersistValue -> Either Text Revision | |||||
PersistFieldSql Revision Source # | |||||
Defined in Pantry.Types | |||||
Display Revision Source # | |||||
Defined in Pantry.Types | |||||
type Rep Revision Source # | |||||
Defined in Pantry.Types type Rep Revision = D1 ('MetaData "Revision" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'True) (C1 ('MetaCons "Revision" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word))) |
data ModuleName #
Instances
Parsec ModuleName | |||||
Defined in Distribution.ModuleName Methods parsec :: CabalParsing m => m ModuleName | |||||
Pretty ModuleName | |||||
Defined in Distribution.ModuleName | |||||
Structured ModuleName | |||||
Defined in Distribution.ModuleName | |||||
Data ModuleName | |||||
Defined in Distribution.ModuleName Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ModuleName -> c ModuleName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ModuleName toConstr :: ModuleName -> Constr dataTypeOf :: ModuleName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ModuleName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ModuleName) gmapT :: (forall b. Data b => b -> b) -> ModuleName -> ModuleName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ModuleName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ModuleName -> r gmapQ :: (forall d. Data d => d -> u) -> ModuleName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ModuleName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName | |||||
IsString ModuleName | |||||
Defined in Distribution.ModuleName Methods fromString :: String -> ModuleName | |||||
Generic ModuleName | |||||
Defined in Distribution.ModuleName Associated Types
| |||||
Read ModuleName | |||||
Defined in Distribution.ModuleName Methods readsPrec :: Int -> ReadS ModuleName readList :: ReadS [ModuleName] readPrec :: ReadPrec ModuleName readListPrec :: ReadPrec [ModuleName] | |||||
Show ModuleName | |||||
Defined in Distribution.ModuleName Methods showsPrec :: Int -> ModuleName -> ShowS show :: ModuleName -> String showList :: [ModuleName] -> ShowS | |||||
Binary ModuleName | |||||
Defined in Distribution.ModuleName | |||||
NFData ModuleName | |||||
Defined in Distribution.ModuleName Methods rnf :: ModuleName -> () | |||||
Eq ModuleName | |||||
Defined in Distribution.ModuleName | |||||
Ord ModuleName | |||||
Defined in Distribution.ModuleName Methods compare :: ModuleName -> ModuleName -> Ordering (<) :: ModuleName -> ModuleName -> Bool (<=) :: ModuleName -> ModuleName -> Bool (>) :: ModuleName -> ModuleName -> Bool (>=) :: ModuleName -> ModuleName -> Bool max :: ModuleName -> ModuleName -> ModuleName min :: ModuleName -> ModuleName -> ModuleName | |||||
Pretty ModuleName | |||||
Defined in Text.PrettyPrint.Leijen.Extended Methods pretty :: ModuleName -> StyleDoc | |||||
ModSubst (Set ModuleName) | |||||
Defined in Distribution.Backpack.ModSubst Methods modSubst :: OpenModuleSubst -> Set ModuleName -> Set ModuleName | |||||
Newtype [(ModuleName, OpenModule)] InstWith | |||||
Defined in Distribution.Types.InstalledPackageInfo.FieldGrammar Methods pack :: [(ModuleName, OpenModule)] -> InstWith unpack :: InstWith -> [(ModuleName, OpenModule)] | |||||
type Rep ModuleName | |||||
Defined in Distribution.ModuleName type Rep ModuleName = D1 ('MetaData "ModuleName" "Distribution.ModuleName" "Cabal-syntax-3.10.3.0-4da5" 'True) (C1 ('MetaCons "ModuleName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShortText))) |
data CabalFileInfo Source #
How to choose a cabal file for a package from Hackage. This is to work with
Hackage cabal file revisions, which makes PackageIdentifier
insufficient
for specifying a package from Hackage.
Since: 0.1.0.0
Constructors
CFILatest | Take the latest revision of the cabal file available. This isn't reproducible at all, but the running assumption (not necessarily true) is that cabal file revisions do not change semantics of the build. Since: 0.1.0.0 |
CFIHash !SHA256 !(Maybe FileSize) | Identify by contents of the cabal file itself. Only reason for
Since: 0.1.0.0 |
CFIRevision !Revision | Identify by revision number, with 0 being the original and
counting upward. This relies on Hackage providing consistent
versioning. Since: 0.1.0.0 |
Instances
Generic CabalFileInfo Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show CabalFileInfo Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> CabalFileInfo -> ShowS show :: CabalFileInfo -> String showList :: [CabalFileInfo] -> ShowS | |||||
NFData CabalFileInfo Source # | |||||
Defined in Pantry.Types Methods rnf :: CabalFileInfo -> () | |||||
Eq CabalFileInfo Source # | |||||
Defined in Pantry.Types | |||||
Ord CabalFileInfo Source # | |||||
Defined in Pantry.Types Methods compare :: CabalFileInfo -> CabalFileInfo -> Ordering (<) :: CabalFileInfo -> CabalFileInfo -> Bool (<=) :: CabalFileInfo -> CabalFileInfo -> Bool (>) :: CabalFileInfo -> CabalFileInfo -> Bool (>=) :: CabalFileInfo -> CabalFileInfo -> Bool max :: CabalFileInfo -> CabalFileInfo -> CabalFileInfo min :: CabalFileInfo -> CabalFileInfo -> CabalFileInfo | |||||
Hashable CabalFileInfo Source # | |||||
Defined in Pantry.Types | |||||
Display CabalFileInfo Source # | |||||
Defined in Pantry.Types | |||||
type Rep CabalFileInfo Source # | |||||
Defined in Pantry.Types type Rep CabalFileInfo = D1 ('MetaData "CabalFileInfo" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "CFILatest" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "CFIHash" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SHA256) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe FileSize))) :+: C1 ('MetaCons "CFIRevision" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Revision)))) |
data PrintWarnings Source #
Should we print warnings when loading a cabal file?
Since: 0.1.0.0
Constructors
YesPrintWarnings | |
NoPrintWarnings |
newtype PackageNameP Source #
Constructors
PackageNameP | |
Fields |
Instances
Constructors
VersionP | |
Fields |
Instances
FromJSON VersionP Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser VersionP parseJSONList :: Value -> Parser [VersionP] omittedField :: Maybe VersionP | |
ToJSON VersionP Source # | |
Defined in Pantry.Types Methods toEncoding :: VersionP -> Encoding toJSONList :: [VersionP] -> Value toEncodingList :: [VersionP] -> Encoding | |
Read VersionP Source # | |
Defined in Pantry.Types | |
Show VersionP Source # | |
NFData VersionP Source # | |
Defined in Pantry.Types | |
Eq VersionP Source # | |
Ord VersionP Source # | |
PersistField VersionP Source # | |
Defined in Pantry.Types Methods toPersistValue :: VersionP -> PersistValue fromPersistValue :: PersistValue -> Either Text VersionP | |
PersistFieldSql VersionP Source # | |
Defined in Pantry.Types | |
Display VersionP Source # | |
Defined in Pantry.Types |
newtype ModuleNameP Source #
Constructors
ModuleNameP | |
Fields |
Instances
Show ModuleNameP Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> ModuleNameP -> ShowS show :: ModuleNameP -> String showList :: [ModuleNameP] -> ShowS | |
NFData ModuleNameP Source # | |
Defined in Pantry.Types Methods rnf :: ModuleNameP -> () | |
Eq ModuleNameP Source # | |
Defined in Pantry.Types | |
Ord ModuleNameP Source # | |
Defined in Pantry.Types Methods compare :: ModuleNameP -> ModuleNameP -> Ordering (<) :: ModuleNameP -> ModuleNameP -> Bool (<=) :: ModuleNameP -> ModuleNameP -> Bool (>) :: ModuleNameP -> ModuleNameP -> Bool (>=) :: ModuleNameP -> ModuleNameP -> Bool max :: ModuleNameP -> ModuleNameP -> ModuleNameP min :: ModuleNameP -> ModuleNameP -> ModuleNameP | |
PersistField ModuleNameP Source # | |
Defined in Pantry.Types Methods toPersistValue :: ModuleNameP -> PersistValue fromPersistValue :: PersistValue -> Either Text ModuleNameP | |
PersistFieldSql ModuleNameP Source # | |
Defined in Pantry.Types Methods sqlType :: Proxy ModuleNameP -> SqlType | |
Display ModuleNameP Source # | |
Defined in Pantry.Types |
data PackageIdentifierRevision Source #
A full specification for a package from Hackage, including the package name, version, and how to load up the correct cabal file revision.
Since: 0.1.0.0
Constructors
PackageIdentifierRevision !PackageName !Version !CabalFileInfo |
Instances
pirForHash :: PackageIdentifier -> BlobKey -> PackageIdentifierRevision Source #
Package identifier and revision with a specified cabal file hash
Since: 0.1.0.0
Constructors
FTNormal | |
FTExecutable |
Instances
Bounded FileType Source # | |
Defined in Pantry.Types | |
Enum FileType Source # | |
Defined in Pantry.Types | |
Show FileType Source # | |
Eq FileType Source # | |
Ord FileType Source # | |
PersistField FileType Source # | |
Defined in Pantry.Types Methods toPersistValue :: FileType -> PersistValue fromPersistValue :: PersistValue -> Either Text FileType | |
PersistFieldSql FileType Source # | |
Defined in Pantry.Types |
Constructors
BFCabal !SafeFilePath !TreeEntry | |
BFHpack !TreeEntry |
File size in bytes
Since: 0.1.0.0
Constructors
FileSize Word |
Instances
FromJSON FileSize Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser FileSize parseJSONList :: Value -> Parser [FileSize] omittedField :: Maybe FileSize | |||||
ToJSON FileSize Source # | |||||
Defined in Pantry.Types Methods toEncoding :: FileSize -> Encoding toJSONList :: [FileSize] -> Value toEncodingList :: [FileSize] -> Encoding | |||||
Generic FileSize Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show FileSize Source # | |||||
NFData FileSize Source # | |||||
Defined in Pantry.Types | |||||
Eq FileSize Source # | |||||
Ord FileSize Source # | |||||
Hashable FileSize Source # | |||||
Defined in Pantry.Types | |||||
PersistField FileSize Source # | |||||
Defined in Pantry.Types Methods toPersistValue :: FileSize -> PersistValue fromPersistValue :: PersistValue -> Either Text FileSize | |||||
PersistFieldSql FileSize Source # | |||||
Defined in Pantry.Types | |||||
Display FileSize Source # | |||||
Defined in Pantry.Types | |||||
type Rep FileSize Source # | |||||
Defined in Pantry.Types type Rep FileSize = D1 ('MetaData "FileSize" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'True) (C1 ('MetaCons "FileSize" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word))) |
data SafeFilePath Source #
Instances
Show SafeFilePath Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> SafeFilePath -> ShowS show :: SafeFilePath -> String showList :: [SafeFilePath] -> ShowS | |
Eq SafeFilePath Source # | |
Defined in Pantry.Types | |
Ord SafeFilePath Source # | |
Defined in Pantry.Types Methods compare :: SafeFilePath -> SafeFilePath -> Ordering (<) :: SafeFilePath -> SafeFilePath -> Bool (<=) :: SafeFilePath -> SafeFilePath -> Bool (>) :: SafeFilePath -> SafeFilePath -> Bool (>=) :: SafeFilePath -> SafeFilePath -> Bool max :: SafeFilePath -> SafeFilePath -> SafeFilePath min :: SafeFilePath -> SafeFilePath -> SafeFilePath | |
PersistField SafeFilePath Source # | |
Defined in Pantry.Types Methods toPersistValue :: SafeFilePath -> PersistValue fromPersistValue :: PersistValue -> Either Text SafeFilePath | |
PersistFieldSql SafeFilePath Source # | |
Defined in Pantry.Types Methods sqlType :: Proxy SafeFilePath -> SqlType | |
Display SafeFilePath Source # | |
Defined in Pantry.Types |
unSafeFilePath :: SafeFilePath -> Text Source #
mkSafeFilePath :: Text -> Maybe SafeFilePath Source #
safeFilePathToPath :: MonadThrow m => Path Abs Dir -> SafeFilePath -> m (Path Abs File) Source #
hpackSafeFilePath :: SafeFilePath Source #
SafeFilePath for `package.yaml` file.
The hash of the binary representation of a Tree
.
Since: 0.1.0.0
Instances
FromJSON TreeKey Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser TreeKey parseJSONList :: Value -> Parser [TreeKey] omittedField :: Maybe TreeKey | |||||
ToJSON TreeKey Source # | |||||
Defined in Pantry.Types Methods toEncoding :: TreeKey -> Encoding toJSONList :: [TreeKey] -> Value toEncodingList :: [TreeKey] -> Encoding | |||||
Generic TreeKey Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show TreeKey Source # | |||||
NFData TreeKey Source # | |||||
Defined in Pantry.Types | |||||
Eq TreeKey Source # | |||||
Ord TreeKey Source # | |||||
Display TreeKey Source # | |||||
Defined in Pantry.Types | |||||
type Rep TreeKey Source # | |||||
Defined in Pantry.Types |
Represents the contents of a tree, which is a mapping from
relative file paths to TreeEntry
s.
Since: 0.1.0.0
Constructors
TreeMap (Map SafeFilePath TreeEntry) |
renderTree :: Tree -> ByteString Source #
A SHA256 hash, stored in a static size for more efficient memory representation.
Since: 0.1.0.0
Instances
FromJSON SHA256 Source # | |||||
Defined in Pantry.SHA256 Methods parseJSON :: Value -> Parser SHA256 parseJSONList :: Value -> Parser [SHA256] omittedField :: Maybe SHA256 | |||||
ToJSON SHA256 Source # | |||||
Defined in Pantry.SHA256 Methods toEncoding :: SHA256 -> Encoding toJSONList :: [SHA256] -> Value toEncodingList :: [SHA256] -> Encoding | |||||
Data SHA256 Source # | |||||
Defined in Pantry.SHA256 Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SHA256 -> c SHA256 gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SHA256 dataTypeOf :: SHA256 -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SHA256) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SHA256) gmapT :: (forall b. Data b => b -> b) -> SHA256 -> SHA256 gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SHA256 -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SHA256 -> r gmapQ :: (forall d. Data d => d -> u) -> SHA256 -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SHA256 -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SHA256 -> m SHA256 gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SHA256 -> m SHA256 gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SHA256 -> m SHA256 | |||||
Generic SHA256 Source # | |||||
Defined in Pantry.SHA256 Associated Types
| |||||
Show SHA256 Source # | |||||
NFData SHA256 Source # | |||||
Defined in Pantry.SHA256 | |||||
Eq SHA256 Source # | |||||
Ord SHA256 Source # | |||||
Hashable SHA256 Source # | |||||
Defined in Pantry.SHA256 | |||||
PersistField SHA256 Source # | |||||
Defined in Pantry.SHA256 Methods toPersistValue :: SHA256 -> PersistValue fromPersistValue :: PersistValue -> Either Text SHA256 | |||||
PersistFieldSql SHA256 Source # | |||||
Defined in Pantry.SHA256 | |||||
Display SHA256 Source # | |||||
Defined in Pantry.SHA256 | |||||
type Rep SHA256 Source # | |||||
Defined in Pantry.SHA256 |
data Unresolved a Source #
Wraps a value which potentially contains relative paths. Needs to be provided with a base directory to resolve these paths.
Unwrap this using resolvePaths
.
Since: 0.1.0.0
Instances
Applicative Unresolved Source # | |
Defined in Pantry.Types Methods pure :: a -> Unresolved a (<*>) :: Unresolved (a -> b) -> Unresolved a -> Unresolved b liftA2 :: (a -> b -> c) -> Unresolved a -> Unresolved b -> Unresolved c (*>) :: Unresolved a -> Unresolved b -> Unresolved b (<*) :: Unresolved a -> Unresolved b -> Unresolved a | |
Functor Unresolved Source # | |
Defined in Pantry.Types | |
FromJSON (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))] omittedField :: Maybe (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))) | |
FromJSON (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))] omittedField :: Maybe (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))) | |
FromJSON (WithJSONWarnings (Unresolved GlobalHintsLocation)) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved GlobalHintsLocation)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved GlobalHintsLocation)] omittedField :: Maybe (WithJSONWarnings (Unresolved GlobalHintsLocation)) | |
FromJSON (WithJSONWarnings (Unresolved PackageLocationImmutable)) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved PackageLocationImmutable)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved PackageLocationImmutable)] omittedField :: Maybe (WithJSONWarnings (Unresolved PackageLocationImmutable)) | |
FromJSON (WithJSONWarnings (Unresolved RawSnapshotLayer)) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved RawSnapshotLayer)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved RawSnapshotLayer)] omittedField :: Maybe (WithJSONWarnings (Unresolved RawSnapshotLayer)) | |
FromJSON (WithJSONWarnings (Unresolved RawSnapshotLocation)) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved RawSnapshotLocation)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved RawSnapshotLocation)] omittedField :: Maybe (WithJSONWarnings (Unresolved RawSnapshotLocation)) | |
FromJSON (WithJSONWarnings (Unresolved SnapshotLocation)) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved SnapshotLocation)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved SnapshotLocation)] omittedField :: Maybe (WithJSONWarnings (Unresolved SnapshotLocation)) |
Arguments
:: MonadIO m | |
=> Maybe (Path Abs Dir) | directory to use for relative paths |
-> Unresolved a | |
-> m a |
Resolve all of the file paths in an Unresolved
relative to the given
directory.
Since: 0.1.0.0
Parsed tree with more information on the Haskell package it contains.
Since: 0.1.0.0
Constructors
Package | |
Fields
|
data PackageCabal Source #
Constructors
PCCabalFile !TreeEntry | TreeEntry of Cabal file |
PCHpack !PHpack |
Instances
Show PackageCabal Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> PackageCabal -> ShowS show :: PackageCabal -> String showList :: [PackageCabal] -> ShowS | |
Eq PackageCabal Source # | |
Defined in Pantry.Types | |
Ord PackageCabal Source # | |
Defined in Pantry.Types Methods compare :: PackageCabal -> PackageCabal -> Ordering (<) :: PackageCabal -> PackageCabal -> Bool (<=) :: PackageCabal -> PackageCabal -> Bool (>) :: PackageCabal -> PackageCabal -> Bool (>=) :: PackageCabal -> PackageCabal -> Bool max :: PackageCabal -> PackageCabal -> PackageCabal min :: PackageCabal -> PackageCabal -> PackageCabal |
Constructors
PHpack | |
Fields
|
data RawPackageLocation Source #
Location to load a package from. Can either be immutable (see
PackageLocationImmutable
) or a local directory which is expected to change
over time. Raw version doesn't include exact package version (e.g. could
refer to the latest revision on Hackage)
Since: 0.1.0.0
Constructors
RPLImmutable !RawPackageLocationImmutable | |
RPLMutable !(ResolvedPath Dir) |
Instances
ToJSON RawPackageLocation Source # | |||||
Defined in Pantry.Types Methods toJSON :: RawPackageLocation -> Value toEncoding :: RawPackageLocation -> Encoding toJSONList :: [RawPackageLocation] -> Value toEncodingList :: [RawPackageLocation] -> Encoding omitField :: RawPackageLocation -> Bool | |||||
Generic RawPackageLocation Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: RawPackageLocation -> Rep RawPackageLocation x to :: Rep RawPackageLocation x -> RawPackageLocation | |||||
Show RawPackageLocation Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RawPackageLocation -> ShowS show :: RawPackageLocation -> String showList :: [RawPackageLocation] -> ShowS | |||||
NFData RawPackageLocation Source # | |||||
Defined in Pantry.Types Methods rnf :: RawPackageLocation -> () | |||||
Eq RawPackageLocation Source # | |||||
Defined in Pantry.Types Methods (==) :: RawPackageLocation -> RawPackageLocation -> Bool (/=) :: RawPackageLocation -> RawPackageLocation -> Bool | |||||
FromJSON (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))] omittedField :: Maybe (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocation))) | |||||
type Rep RawPackageLocation Source # | |||||
Defined in Pantry.Types type Rep RawPackageLocation = D1 ('MetaData "RawPackageLocation" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "RPLImmutable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RawPackageLocationImmutable)) :+: C1 ('MetaCons "RPLMutable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ResolvedPath Dir)))) |
data PackageLocation Source #
Location to load a package from. Can either be immutable (see
PackageLocationImmutable
) or a local directory which is expected to change
over time.
Since: 0.1.0.0
Constructors
PLImmutable !PackageLocationImmutable | |
PLMutable !(ResolvedPath Dir) |
Instances
Generic PackageLocation Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: PackageLocation -> Rep PackageLocation x to :: Rep PackageLocation x -> PackageLocation | |||||
Show PackageLocation Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> PackageLocation -> ShowS show :: PackageLocation -> String showList :: [PackageLocation] -> ShowS | |||||
NFData PackageLocation Source # | |||||
Defined in Pantry.Types Methods rnf :: PackageLocation -> () | |||||
Eq PackageLocation Source # | |||||
Defined in Pantry.Types Methods (==) :: PackageLocation -> PackageLocation -> Bool (/=) :: PackageLocation -> PackageLocation -> Bool | |||||
Display PackageLocation Source # | |||||
Defined in Pantry.Types | |||||
type Rep PackageLocation Source # | |||||
Defined in Pantry.Types type Rep PackageLocation = D1 ('MetaData "PackageLocation" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "PLImmutable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PackageLocationImmutable)) :+: C1 ('MetaCons "PLMutable" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ResolvedPath Dir)))) |
toRawPL :: PackageLocation -> RawPackageLocation Source #
Convert PackageLocation
to its "raw" equivalent
Since: 0.1.0.0
data RawPackageLocationImmutable Source #
Location for remote packages or archives assumed to be immutable. as user specifies it i.e. not an exact location
Since: 0.1.0.0
Constructors
RPLIHackage !PackageIdentifierRevision !(Maybe TreeKey) | |
RPLIArchive !RawArchive !RawPackageMetadata | |
RPLIRepo !Repo !RawPackageMetadata |
Instances
ToJSON RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods toJSON :: RawPackageLocationImmutable -> Value toEncoding :: RawPackageLocationImmutable -> Encoding toJSONList :: [RawPackageLocationImmutable] -> Value toEncodingList :: [RawPackageLocationImmutable] -> Encoding omitField :: RawPackageLocationImmutable -> Bool | |||||
Generic RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: RawPackageLocationImmutable -> Rep RawPackageLocationImmutable x to :: Rep RawPackageLocationImmutable x -> RawPackageLocationImmutable | |||||
Show RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RawPackageLocationImmutable -> ShowS show :: RawPackageLocationImmutable -> String showList :: [RawPackageLocationImmutable] -> ShowS | |||||
NFData RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods rnf :: RawPackageLocationImmutable -> () | |||||
Eq RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods (==) :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Bool (/=) :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Bool | |||||
Ord RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods compare :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Ordering (<) :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Bool (<=) :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Bool (>) :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Bool (>=) :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> Bool max :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> RawPackageLocationImmutable min :: RawPackageLocationImmutable -> RawPackageLocationImmutable -> RawPackageLocationImmutable | |||||
Display RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods display :: RawPackageLocationImmutable -> Utf8Builder textDisplay :: RawPackageLocationImmutable -> Text | |||||
Pretty RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods pretty :: RawPackageLocationImmutable -> StyleDoc | |||||
FromJSON (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))] omittedField :: Maybe (WithJSONWarnings (Unresolved (NonEmpty RawPackageLocationImmutable))) | |||||
type Rep RawPackageLocationImmutable Source # | |||||
Defined in Pantry.Types type Rep RawPackageLocationImmutable = D1 ('MetaData "RawPackageLocationImmutable" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "RPLIHackage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PackageIdentifierRevision) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe TreeKey))) :+: (C1 ('MetaCons "RPLIArchive" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RawArchive) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RawPackageMetadata)) :+: C1 ('MetaCons "RPLIRepo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Repo) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RawPackageMetadata)))) |
data PackageLocationImmutable Source #
Location for remote packages or archives assumed to be immutable.
Since: 0.1.0.0
Constructors
PLIHackage !PackageIdentifier !BlobKey !TreeKey | |
PLIArchive !Archive !PackageMetadata | |
PLIRepo !Repo !PackageMetadata |
Instances
ToJSON PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods toJSON :: PackageLocationImmutable -> Value toEncoding :: PackageLocationImmutable -> Encoding toJSONList :: [PackageLocationImmutable] -> Value toEncodingList :: [PackageLocationImmutable] -> Encoding omitField :: PackageLocationImmutable -> Bool | |||||
Generic PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: PackageLocationImmutable -> Rep PackageLocationImmutable x to :: Rep PackageLocationImmutable x -> PackageLocationImmutable | |||||
Show PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> PackageLocationImmutable -> ShowS show :: PackageLocationImmutable -> String showList :: [PackageLocationImmutable] -> ShowS | |||||
NFData PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods rnf :: PackageLocationImmutable -> () | |||||
Eq PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods (==) :: PackageLocationImmutable -> PackageLocationImmutable -> Bool (/=) :: PackageLocationImmutable -> PackageLocationImmutable -> Bool | |||||
Ord PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods compare :: PackageLocationImmutable -> PackageLocationImmutable -> Ordering (<) :: PackageLocationImmutable -> PackageLocationImmutable -> Bool (<=) :: PackageLocationImmutable -> PackageLocationImmutable -> Bool (>) :: PackageLocationImmutable -> PackageLocationImmutable -> Bool (>=) :: PackageLocationImmutable -> PackageLocationImmutable -> Bool max :: PackageLocationImmutable -> PackageLocationImmutable -> PackageLocationImmutable min :: PackageLocationImmutable -> PackageLocationImmutable -> PackageLocationImmutable | |||||
Display PackageLocationImmutable Source # | |||||
Defined in Pantry.Types Methods display :: PackageLocationImmutable -> Utf8Builder textDisplay :: PackageLocationImmutable -> Text | |||||
FromJSON (WithJSONWarnings (Unresolved PackageLocationImmutable)) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved PackageLocationImmutable)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved PackageLocationImmutable)] omittedField :: Maybe (WithJSONWarnings (Unresolved PackageLocationImmutable)) | |||||
type Rep PackageLocationImmutable Source # | |||||
Defined in Pantry.Types type Rep PackageLocationImmutable = D1 ('MetaData "PackageLocationImmutable" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "PLIHackage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PackageIdentifier) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 BlobKey) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TreeKey))) :+: (C1 ('MetaCons "PLIArchive" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Archive) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PackageMetadata)) :+: C1 ('MetaCons "PLIRepo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Repo) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PackageMetadata)))) |
toRawPLI :: PackageLocationImmutable -> RawPackageLocationImmutable Source #
Convert PackageLocationImmutable
to its "raw" equivalent
Since: 0.1.0.0
data RawArchive Source #
A raw package archive, specified by a user, could have no hash and file size information.
Since: 0.1.0.0
Constructors
RawArchive | |
Fields
|
Instances
Generic RawArchive Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show RawArchive Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RawArchive -> ShowS show :: RawArchive -> String showList :: [RawArchive] -> ShowS | |||||
NFData RawArchive Source # | |||||
Defined in Pantry.Types Methods rnf :: RawArchive -> () | |||||
Eq RawArchive Source # | |||||
Defined in Pantry.Types | |||||
Ord RawArchive Source # | |||||
Defined in Pantry.Types Methods compare :: RawArchive -> RawArchive -> Ordering (<) :: RawArchive -> RawArchive -> Bool (<=) :: RawArchive -> RawArchive -> Bool (>) :: RawArchive -> RawArchive -> Bool (>=) :: RawArchive -> RawArchive -> Bool max :: RawArchive -> RawArchive -> RawArchive min :: RawArchive -> RawArchive -> RawArchive | |||||
type Rep RawArchive Source # | |||||
Defined in Pantry.Types type Rep RawArchive = D1 ('MetaData "RawArchive" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "RawArchive" 'PrefixI 'True) ((S1 ('MetaSel ('Just "raLocation") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ArchiveLocation) :*: S1 ('MetaSel ('Just "raHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe SHA256))) :*: (S1 ('MetaSel ('Just "raSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe FileSize)) :*: S1 ('MetaSel ('Just "raSubdir") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))) |
A package archive, could be from a URL or a local file path. Local file path archives are assumed to be unchanging over time, and so are allowed in custom snapshots.
Since: 0.1.0.0
Constructors
Archive | |
Fields
|
Instances
Generic Archive Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show Archive Source # | |||||
NFData Archive Source # | |||||
Defined in Pantry.Types | |||||
Eq Archive Source # | |||||
Ord Archive Source # | |||||
type Rep Archive Source # | |||||
Defined in Pantry.Types type Rep Archive = D1 ('MetaData "Archive" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "Archive" 'PrefixI 'True) ((S1 ('MetaSel ('Just "archiveLocation") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ArchiveLocation) :*: S1 ('MetaSel ('Just "archiveHash") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SHA256)) :*: (S1 ('MetaSel ('Just "archiveSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FileSize) :*: S1 ('MetaSel ('Just "archiveSubdir") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))) |
toRawArchive :: Archive -> RawArchive Source #
Convert archive to its "raw" equivalent.
Since: 0.1.0.0
Information on packages stored in a source control repository.
Since: 0.1.0.0
Constructors
Repo | |
Fields
|
Instances
Generic Repo Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show Repo Source # | |||||
NFData Repo Source # | |||||
Defined in Pantry.Types | |||||
Eq Repo Source # | |||||
Ord Repo Source # | |||||
Display Repo Source # | |||||
Defined in Pantry.Types | |||||
type Rep Repo Source # | |||||
Defined in Pantry.Types type Rep Repo = D1 ('MetaData "Repo" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "Repo" 'PrefixI 'True) ((S1 ('MetaSel ('Just "repoUrl") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "repoCommit") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)) :*: (S1 ('MetaSel ('Just "repoType") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RepoType) :*: S1 ('MetaSel ('Just "repoSubdir") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))) |
data AggregateRepo Source #
Constructors
AggregateRepo | |
Fields
|
Instances
Generic AggregateRepo Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show AggregateRepo Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> AggregateRepo -> ShowS show :: AggregateRepo -> String showList :: [AggregateRepo] -> ShowS | |||||
Eq AggregateRepo Source # | |||||
Defined in Pantry.Types | |||||
Ord AggregateRepo Source # | |||||
Defined in Pantry.Types Methods compare :: AggregateRepo -> AggregateRepo -> Ordering (<) :: AggregateRepo -> AggregateRepo -> Bool (<=) :: AggregateRepo -> AggregateRepo -> Bool (>) :: AggregateRepo -> AggregateRepo -> Bool (>=) :: AggregateRepo -> AggregateRepo -> Bool max :: AggregateRepo -> AggregateRepo -> AggregateRepo min :: AggregateRepo -> AggregateRepo -> AggregateRepo | |||||
type Rep AggregateRepo Source # | |||||
Defined in Pantry.Types type Rep AggregateRepo = D1 ('MetaData "AggregateRepo" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "AggregateRepo" 'PrefixI 'True) (S1 ('MetaSel ('Just "aRepo") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SimpleRepo) :*: S1 ('MetaSel ('Just "aRepoSubdirs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(Text, RawPackageMetadata)]))) |
data SimpleRepo Source #
Repository without subdirectory information.
Since: 0.5.3
Constructors
SimpleRepo | |
Fields
|
Instances
Generic SimpleRepo Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show SimpleRepo Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> SimpleRepo -> ShowS show :: SimpleRepo -> String showList :: [SimpleRepo] -> ShowS | |||||
Eq SimpleRepo Source # | |||||
Defined in Pantry.Types | |||||
Ord SimpleRepo Source # | |||||
Defined in Pantry.Types Methods compare :: SimpleRepo -> SimpleRepo -> Ordering (<) :: SimpleRepo -> SimpleRepo -> Bool (<=) :: SimpleRepo -> SimpleRepo -> Bool (>) :: SimpleRepo -> SimpleRepo -> Bool (>=) :: SimpleRepo -> SimpleRepo -> Bool max :: SimpleRepo -> SimpleRepo -> SimpleRepo min :: SimpleRepo -> SimpleRepo -> SimpleRepo | |||||
Display SimpleRepo Source # | |||||
Defined in Pantry.Types | |||||
type Rep SimpleRepo Source # | |||||
Defined in Pantry.Types type Rep SimpleRepo = D1 ('MetaData "SimpleRepo" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "SimpleRepo" 'PrefixI 'True) (S1 ('MetaSel ('Just "sRepoUrl") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: (S1 ('MetaSel ('Just "sRepoCommit") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "sRepoType") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RepoType)))) |
toAggregateRepos :: [(Repo, RawPackageMetadata)] -> [AggregateRepo] Source #
Group input repositories by non-subdir values.
rToSimpleRepo :: Repo -> SimpleRepo Source #
The type of a source control repository.
Since: 0.1.0.0
Instances
Generic RepoType Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show RepoType Source # | |||||
NFData RepoType Source # | |||||
Defined in Pantry.Types | |||||
Eq RepoType Source # | |||||
Ord RepoType Source # | |||||
PersistField RepoType Source # | |||||
Defined in Pantry.Types Methods toPersistValue :: RepoType -> PersistValue fromPersistValue :: PersistValue -> Either Text RepoType | |||||
PersistFieldSql RepoType Source # | |||||
Defined in Pantry.Types | |||||
type Rep RepoType Source # | |||||
Defined in Pantry.Types type Rep RepoType = D1 ('MetaData "RepoType" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "RepoGit" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RepoHg" 'PrefixI 'False) (U1 :: Type -> Type)) |
parsePackageIdentifier :: String -> Maybe PackageIdentifier Source #
This is almost a copy of Cabal's parser for package identifiers, the main difference is in the fact that Stack requires version to be present while Cabal uses "null version" as a default value
Since: 0.1.0.0
parsePackageName :: String -> Maybe PackageName Source #
Parse a package name from a String
.
Since: 0.1.0.0
parsePackageNameThrowing :: MonadThrow m => String -> m PackageName Source #
Parse a package name from a String
throwing on failure
Since: 0.1.0.0
parseFlagName :: String -> Maybe FlagName Source #
Parse a flag name from a String
.
Since: 0.1.0.0
parseVersion :: String -> Maybe Version Source #
Parse a version from a String
.
Since: 0.1.0.0
parseVersionThrowing :: MonadThrow m => String -> m Version Source #
Parse a package version from a String
throwing on failure
Since: 0.1.0.0
packageIdentifierString :: PackageIdentifier -> String Source #
Render a package identifier as a String
.
Since: 0.1.0.0
packageNameString :: PackageName -> String Source #
Render a package name as a String
.
Since: 0.1.0.0
flagNameString :: FlagName -> String Source #
Render a flag name as a String
.
Since: 0.1.0.0
versionString :: Version -> String Source #
Render a version as a String
.
Since: 0.1.0.0
moduleNameString :: ModuleName -> String Source #
Render a module name as a String
.
Since: 0.1.0.0
data OptionalSubdirs Source #
Constructors
OSSubdirs !(NonEmpty Text) | |
OSPackageMetadata !Text !RawPackageMetadata | subdirectory and package metadata |
Instances
Generic OptionalSubdirs Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: OptionalSubdirs -> Rep OptionalSubdirs x to :: Rep OptionalSubdirs x -> OptionalSubdirs | |||||
Show OptionalSubdirs Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> OptionalSubdirs -> ShowS show :: OptionalSubdirs -> String showList :: [OptionalSubdirs] -> ShowS | |||||
NFData OptionalSubdirs Source # | |||||
Defined in Pantry.Types Methods rnf :: OptionalSubdirs -> () | |||||
Eq OptionalSubdirs Source # | |||||
Defined in Pantry.Types Methods (==) :: OptionalSubdirs -> OptionalSubdirs -> Bool (/=) :: OptionalSubdirs -> OptionalSubdirs -> Bool | |||||
type Rep OptionalSubdirs Source # | |||||
Defined in Pantry.Types type Rep OptionalSubdirs = D1 ('MetaData "OptionalSubdirs" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "OSSubdirs" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonEmpty Text))) :+: C1 ('MetaCons "OSPackageMetadata" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RawPackageMetadata))) |
data ArchiveLocation Source #
Location that an archive is stored at
Since: 0.1.0.0
Constructors
ALUrl !Text | Archive stored at an HTTP(S) URL Since: 0.1.0.0 |
ALFilePath !(ResolvedPath File) | Archive stored at a local file path Since: 0.1.0.0 |
Instances
Generic ArchiveLocation Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: ArchiveLocation -> Rep ArchiveLocation x to :: Rep ArchiveLocation x -> ArchiveLocation | |||||
Show ArchiveLocation Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> ArchiveLocation -> ShowS show :: ArchiveLocation -> String showList :: [ArchiveLocation] -> ShowS | |||||
NFData ArchiveLocation Source # | |||||
Defined in Pantry.Types Methods rnf :: ArchiveLocation -> () | |||||
Eq ArchiveLocation Source # | |||||
Defined in Pantry.Types Methods (==) :: ArchiveLocation -> ArchiveLocation -> Bool (/=) :: ArchiveLocation -> ArchiveLocation -> Bool | |||||
Ord ArchiveLocation Source # | |||||
Defined in Pantry.Types Methods compare :: ArchiveLocation -> ArchiveLocation -> Ordering (<) :: ArchiveLocation -> ArchiveLocation -> Bool (<=) :: ArchiveLocation -> ArchiveLocation -> Bool (>) :: ArchiveLocation -> ArchiveLocation -> Bool (>=) :: ArchiveLocation -> ArchiveLocation -> Bool max :: ArchiveLocation -> ArchiveLocation -> ArchiveLocation min :: ArchiveLocation -> ArchiveLocation -> ArchiveLocation | |||||
Display ArchiveLocation Source # | |||||
Defined in Pantry.Types | |||||
Pretty ArchiveLocation Source # | |||||
Defined in Pantry.Types Methods pretty :: ArchiveLocation -> StyleDoc | |||||
type Rep ArchiveLocation Source # | |||||
Defined in Pantry.Types type Rep ArchiveLocation = D1 ('MetaData "ArchiveLocation" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "ALUrl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)) :+: C1 ('MetaCons "ALFilePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ResolvedPath File)))) |
newtype RelFilePath Source #
File path relative to the configuration file it was parsed from
Since: 0.1.0.0
Constructors
RelFilePath Text |
Instances
FromJSON RelFilePath Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser RelFilePath parseJSONList :: Value -> Parser [RelFilePath] omittedField :: Maybe RelFilePath | |||||
ToJSON RelFilePath Source # | |||||
Defined in Pantry.Types Methods toJSON :: RelFilePath -> Value toEncoding :: RelFilePath -> Encoding toJSONList :: [RelFilePath] -> Value toEncodingList :: [RelFilePath] -> Encoding omitField :: RelFilePath -> Bool | |||||
Generic RelFilePath Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show RelFilePath Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RelFilePath -> ShowS show :: RelFilePath -> String showList :: [RelFilePath] -> ShowS | |||||
NFData RelFilePath Source # | |||||
Defined in Pantry.Types Methods rnf :: RelFilePath -> () | |||||
Eq RelFilePath Source # | |||||
Defined in Pantry.Types | |||||
Ord RelFilePath Source # | |||||
Defined in Pantry.Types Methods compare :: RelFilePath -> RelFilePath -> Ordering (<) :: RelFilePath -> RelFilePath -> Bool (<=) :: RelFilePath -> RelFilePath -> Bool (>) :: RelFilePath -> RelFilePath -> Bool (>=) :: RelFilePath -> RelFilePath -> Bool max :: RelFilePath -> RelFilePath -> RelFilePath min :: RelFilePath -> RelFilePath -> RelFilePath | |||||
Display RelFilePath Source # | |||||
Defined in Pantry.Types | |||||
type Rep RelFilePath Source # | |||||
Defined in Pantry.Types type Rep RelFilePath = D1 ('MetaData "RelFilePath" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'True) (C1 ('MetaCons "RelFilePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))) |
newtype CabalString a Source #
Newtype wrapper for easier JSON integration with Cabal types.
Since: 0.1.0.0
Constructors
CabalString | |
Fields
|
Instances
IsCabalString a => FromJSON (CabalString a) Source # | |
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (CabalString a) parseJSONList :: Value -> Parser [CabalString a] omittedField :: Maybe (CabalString a) | |
IsCabalString a => FromJSONKey (CabalString a) Source # | |
Defined in Pantry.Types Methods fromJSONKey :: FromJSONKeyFunction (CabalString a) fromJSONKeyList :: FromJSONKeyFunction [CabalString a] | |
Pretty a => ToJSON (CabalString a) Source # | |
Defined in Pantry.Types Methods toJSON :: CabalString a -> Value toEncoding :: CabalString a -> Encoding toJSONList :: [CabalString a] -> Value toEncodingList :: [CabalString a] -> Encoding omitField :: CabalString a -> Bool | |
Pretty a => ToJSONKey (CabalString a) Source # | |
Defined in Pantry.Types Methods toJSONKey :: ToJSONKeyFunction (CabalString a) toJSONKeyList :: ToJSONKeyFunction [CabalString a] | |
Show a => Show (CabalString a) Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> CabalString a -> ShowS show :: CabalString a -> String showList :: [CabalString a] -> ShowS | |
Eq a => Eq (CabalString a) Source # | |
Defined in Pantry.Types | |
Ord a => Ord (CabalString a) Source # | |
Defined in Pantry.Types Methods compare :: CabalString a -> CabalString a -> Ordering (<) :: CabalString a -> CabalString a -> Bool (<=) :: CabalString a -> CabalString a -> Bool (>) :: CabalString a -> CabalString a -> Bool (>=) :: CabalString a -> CabalString a -> Bool max :: CabalString a -> CabalString a -> CabalString a min :: CabalString a -> CabalString a -> CabalString a |
toCabalStringMap :: Map a v -> Map (CabalString a) v Source #
Wrap the keys in a Map
with a CabalString
to get a ToJSON
instance.
Since: 0.1.0.0
unCabalStringMap :: Map (CabalString a) v -> Map a v Source #
Unwrap the CabalString
from the keys in a Map
to use a
FromJSON
instance.
Since: 0.1.0.0
parsePackageIdentifierRevision :: Text -> Either PantryException PackageIdentifierRevision Source #
Parse a PackageIdentifierRevision
Since: 0.1.0.0
Constructors
Mismatch | |
Fields
|
data PantryException Source #
Things that can go wrong in pantry. Note two things:
- Many other exception types may be thrown from underlying libraries. Pantry does not attempt to wrap these underlying exceptions.
- We may add more constructors to this data type in minor version bumps of pantry. This technically breaks the PVP. You should not be writing pattern matches against this type that expect total matching.
Since: 0.1.0.0
Constructors
PackageIdentifierRevisionParseFail !Text | |
InvalidCabalFile !(Either RawPackageLocationImmutable (Path Abs File)) !(Maybe Version) ![PError] ![PWarning] | |
TreeWithoutCabalFile !RawPackageLocationImmutable | |
TreeWithMultipleCabalFiles !RawPackageLocationImmutable ![SafeFilePath] | |
MismatchedCabalName !(Path Abs File) !PackageName | |
NoLocalPackageDirFound !(Path Abs Dir) | |
NoCabalFileFound !(Path Abs Dir) | |
MultipleCabalFilesFound !(Path Abs Dir) ![Path Abs File] | |
InvalidWantedCompiler !Text | |
InvalidSnapshotLocation !(Path Abs Dir) !Text | |
InvalidOverrideCompiler !WantedCompiler !WantedCompiler | |
InvalidFilePathSnapshot !Text | |
InvalidSnapshot !RawSnapshotLocation !SomeException | |
InvalidGlobalHintsLocation !(Path Abs Dir) !Text | |
InvalidFilePathGlobalHints !Text | |
MismatchedPackageMetadata !RawPackageLocationImmutable !RawPackageMetadata !(Maybe TreeKey) !PackageIdentifier | |
Non200ResponseStatus !Status | |
InvalidBlobKey !(Mismatch BlobKey) | |
Couldn'tParseSnapshot !RawSnapshotLocation !String | |
WrongCabalFileName !RawPackageLocationImmutable !SafeFilePath !PackageName | |
DownloadInvalidSHA256 !Text !(Mismatch SHA256) | |
DownloadInvalidSize !Text !(Mismatch FileSize) | |
DownloadTooLarge !Text !(Mismatch FileSize) | Different from |
LocalNoArchiveFileFound !(Path Abs File) | |
LocalInvalidSHA256 !(Path Abs File) !(Mismatch SHA256) | |
LocalInvalidSize !(Path Abs File) !(Mismatch FileSize) | |
UnknownArchiveType !ArchiveLocation | |
InvalidTarFileType !ArchiveLocation !FilePath !FileType | |
UnsupportedTarball !ArchiveLocation !Text | |
NoHackageCryptographicHash !PackageIdentifier | |
FailedToCloneRepo !SimpleRepo | |
TreeReferencesMissingBlob !RawPackageLocationImmutable !SafeFilePath !BlobKey | |
CompletePackageMetadataMismatch !RawPackageLocationImmutable !PackageMetadata | |
CRC32Mismatch !ArchiveLocation !FilePath !(Mismatch Word32) | |
UnknownHackagePackage !PackageIdentifierRevision !FuzzyResults | |
CannotCompleteRepoNonSHA1 !Repo | |
MutablePackageLocationFromUrl !Text | |
MismatchedCabalFileForHackage !PackageIdentifierRevision !(Mismatch PackageIdentifier) | |
PackageNameParseFail !Text | |
PackageVersionParseFail !Text | |
InvalidCabalFilePath !(Path Abs File) | |
DuplicatePackageNames !Utf8Builder ![(PackageName, [RawPackageLocationImmutable])] | |
MigrationFailure !Text !(Path Abs File) !SomeException | |
NoCasaConfig | |
InvalidTreeFromCasa !BlobKey !ByteString | |
ParseSnapNameException !Text | |
HpackLibraryException !(Path Abs File) !String | |
HpackExeException !FilePath !(Path Abs Dir) !SomeException |
Instances
Exception PantryException Source # | |
Defined in Pantry.Types Methods toException :: PantryException -> SomeException fromException :: SomeException -> Maybe PantryException displayException :: PantryException -> String | |
Show PantryException Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> PantryException -> ShowS show :: PantryException -> String showList :: [PantryException] -> ShowS | |
Display PantryException Source # | |
Defined in Pantry.Types | |
Pretty PantryException Source # | |
Defined in Pantry.Types Methods pretty :: PantryException -> StyleDoc |
data FuzzyResults Source #
Constructors
FRNameNotFound ![PackageName] | |
FRVersionNotFound !(NonEmpty PackageIdentifierRevision) | |
FRRevisionNotFound !(NonEmpty PackageIdentifierRevision) |
data ResolvedPath t Source #
A combination of the relative path provided in a config file, together with the resolved absolute path.
Since: 0.1.0.0
Constructors
ResolvedPath | |
Fields
|
Instances
Generic (ResolvedPath t) Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: ResolvedPath t -> Rep (ResolvedPath t) x to :: Rep (ResolvedPath t) x -> ResolvedPath t | |||||
Show (ResolvedPath t) Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> ResolvedPath t -> ShowS show :: ResolvedPath t -> String showList :: [ResolvedPath t] -> ShowS | |||||
NFData (ResolvedPath t) Source # | |||||
Defined in Pantry.Types Methods rnf :: ResolvedPath t -> () | |||||
Eq (ResolvedPath t) Source # | |||||
Defined in Pantry.Types Methods (==) :: ResolvedPath t -> ResolvedPath t -> Bool (/=) :: ResolvedPath t -> ResolvedPath t -> Bool | |||||
Ord (ResolvedPath t) Source # | |||||
Defined in Pantry.Types Methods compare :: ResolvedPath t -> ResolvedPath t -> Ordering (<) :: ResolvedPath t -> ResolvedPath t -> Bool (<=) :: ResolvedPath t -> ResolvedPath t -> Bool (>) :: ResolvedPath t -> ResolvedPath t -> Bool (>=) :: ResolvedPath t -> ResolvedPath t -> Bool max :: ResolvedPath t -> ResolvedPath t -> ResolvedPath t min :: ResolvedPath t -> ResolvedPath t -> ResolvedPath t | |||||
type Rep (ResolvedPath t) Source # | |||||
Defined in Pantry.Types type Rep (ResolvedPath t) = D1 ('MetaData "ResolvedPath" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "ResolvedPath" 'PrefixI 'True) (S1 ('MetaSel ('Just "resolvedRelative") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RelFilePath) :*: S1 ('MetaSel ('Just "resolvedAbsolute") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Path Abs t)))) |
data HpackExecutable Source #
What to use for running hpack
Since: 0.1.0.0
Constructors
HpackBundled | Compiled in library |
HpackCommand !FilePath | Executable at the provided path |
Instances
Read HpackExecutable Source # | |
Defined in Pantry.Types Methods readsPrec :: Int -> ReadS HpackExecutable readList :: ReadS [HpackExecutable] readPrec :: ReadPrec HpackExecutable readListPrec :: ReadPrec [HpackExecutable] | |
Show HpackExecutable Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> HpackExecutable -> ShowS show :: HpackExecutable -> String showList :: [HpackExecutable] -> ShowS | |
Eq HpackExecutable Source # | |
Defined in Pantry.Types Methods (==) :: HpackExecutable -> HpackExecutable -> Bool (/=) :: HpackExecutable -> HpackExecutable -> Bool | |
Ord HpackExecutable Source # | |
Defined in Pantry.Types Methods compare :: HpackExecutable -> HpackExecutable -> Ordering (<) :: HpackExecutable -> HpackExecutable -> Bool (<=) :: HpackExecutable -> HpackExecutable -> Bool (>) :: HpackExecutable -> HpackExecutable -> Bool (>=) :: HpackExecutable -> HpackExecutable -> Bool max :: HpackExecutable -> HpackExecutable -> HpackExecutable min :: HpackExecutable -> HpackExecutable -> HpackExecutable |
data WantedCompiler Source #
Which compiler a snapshot wants to use. The build tool may elect to do some fuzzy matching of versions (e.g., allowing different patch versions).
Since: 0.1.0.0
Constructors
WCGhc !Version | |
WCGhcGit !Text !Text | |
WCGhcjs !Version !Version | GHCJS version followed by GHC version |
Instances
FromJSON WantedCompiler Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser WantedCompiler parseJSONList :: Value -> Parser [WantedCompiler] omittedField :: Maybe WantedCompiler | |||||
FromJSONKey WantedCompiler Source # | |||||
Defined in Pantry.Types Methods fromJSONKey :: FromJSONKeyFunction WantedCompiler fromJSONKeyList :: FromJSONKeyFunction [WantedCompiler] | |||||
ToJSON WantedCompiler Source # | |||||
Defined in Pantry.Types Methods toJSON :: WantedCompiler -> Value toEncoding :: WantedCompiler -> Encoding toJSONList :: [WantedCompiler] -> Value toEncodingList :: [WantedCompiler] -> Encoding omitField :: WantedCompiler -> Bool | |||||
Generic WantedCompiler Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show WantedCompiler Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> WantedCompiler -> ShowS show :: WantedCompiler -> String showList :: [WantedCompiler] -> ShowS | |||||
NFData WantedCompiler Source # | |||||
Defined in Pantry.Types Methods rnf :: WantedCompiler -> () | |||||
Eq WantedCompiler Source # | |||||
Defined in Pantry.Types Methods (==) :: WantedCompiler -> WantedCompiler -> Bool (/=) :: WantedCompiler -> WantedCompiler -> Bool | |||||
Ord WantedCompiler Source # | |||||
Defined in Pantry.Types Methods compare :: WantedCompiler -> WantedCompiler -> Ordering (<) :: WantedCompiler -> WantedCompiler -> Bool (<=) :: WantedCompiler -> WantedCompiler -> Bool (>) :: WantedCompiler -> WantedCompiler -> Bool (>=) :: WantedCompiler -> WantedCompiler -> Bool max :: WantedCompiler -> WantedCompiler -> WantedCompiler min :: WantedCompiler -> WantedCompiler -> WantedCompiler | |||||
Display WantedCompiler Source # | |||||
Defined in Pantry.Types | |||||
type Rep WantedCompiler Source # | |||||
Defined in Pantry.Types type Rep WantedCompiler = D1 ('MetaData "WantedCompiler" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "WCGhc" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Version)) :+: (C1 ('MetaCons "WCGhcGit" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)) :+: C1 ('MetaCons "WCGhcjs" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Version) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Version)))) |
snapshotLocation :: HasPantryConfig env => SnapName -> RIO env RawSnapshotLocation Source #
Get the location of a snapshot synonym from the PantryConfig
.
Since: 0.5.0.0
defaultSnapshotLocation :: SnapName -> RawSnapshotLocation Source #
Default location of snapshot synonyms, i.e. commercialhaskell's GitHub repository.
Since: 0.5.0.0
globalHintsLocation :: HasPantryConfig env => WantedCompiler -> RIO env GlobalHintsLocation Source #
Get the location of global hints from the PantryConfig
.
Since: 0.9.4
defaultGlobalHintsLocation :: WantedCompiler -> GlobalHintsLocation Source #
Default location of global hints, i.e. commercialhaskell's GitHub repository.
Since: 0.9.4
A snapshot synonym. It is expanded according to the field
snapshotLocation
of a PantryConfig
.
@ since 0.5.0.0
Constructors
LTS | |
Fields
| |
Nightly !Day | Stackage Nightly snapshot, displayed as Since: 0.5.0.0 |
Instances
ToJSON SnapName Source # | |||||
Defined in Pantry.Types Methods toEncoding :: SnapName -> Encoding toJSONList :: [SnapName] -> Value toEncodingList :: [SnapName] -> Encoding | |||||
Generic SnapName Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show SnapName Source # | |||||
NFData SnapName Source # | |||||
Defined in Pantry.Types | |||||
Eq SnapName Source # | |||||
Ord SnapName Source # | |||||
Display SnapName Source # | |||||
Defined in Pantry.Types | |||||
type Rep SnapName Source # | |||||
Defined in Pantry.Types type Rep SnapName = D1 ('MetaData "SnapName" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "LTS" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int)) :+: C1 ('MetaCons "Nightly" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Day))) |
parseSnapName :: MonadThrow m => Text -> m SnapName Source #
Parse the short representation of a SnapName
.
Since: 0.5.0.0
data RawSnapshotLocation Source #
Where to load a snapshot from in raw form (RSUrl could have a missing BlobKey)
Since: 0.1.0.0
Constructors
RSLCompiler !WantedCompiler | Don't use an actual snapshot, just a version of the compiler with its shipped packages. Since: 0.1.0.0 |
RSLUrl !Text !(Maybe BlobKey) | Download the snapshot from the given URL. The optional Since: 0.1.0.0 |
RSLFilePath !(ResolvedPath File) | Snapshot at a local file path. Since: 0.1.0.0 |
RSLSynonym !SnapName | Snapshot synonym (LTS/Nightly). Since: 0.5.0.0 |
Instances
ToJSON RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Methods toJSON :: RawSnapshotLocation -> Value toEncoding :: RawSnapshotLocation -> Encoding toJSONList :: [RawSnapshotLocation] -> Value toEncodingList :: [RawSnapshotLocation] -> Encoding omitField :: RawSnapshotLocation -> Bool | |||||
Generic RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: RawSnapshotLocation -> Rep RawSnapshotLocation x to :: Rep RawSnapshotLocation x -> RawSnapshotLocation | |||||
Show RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RawSnapshotLocation -> ShowS show :: RawSnapshotLocation -> String showList :: [RawSnapshotLocation] -> ShowS | |||||
NFData RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Methods rnf :: RawSnapshotLocation -> () | |||||
Eq RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Methods (==) :: RawSnapshotLocation -> RawSnapshotLocation -> Bool (/=) :: RawSnapshotLocation -> RawSnapshotLocation -> Bool | |||||
Ord RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Methods compare :: RawSnapshotLocation -> RawSnapshotLocation -> Ordering (<) :: RawSnapshotLocation -> RawSnapshotLocation -> Bool (<=) :: RawSnapshotLocation -> RawSnapshotLocation -> Bool (>) :: RawSnapshotLocation -> RawSnapshotLocation -> Bool (>=) :: RawSnapshotLocation -> RawSnapshotLocation -> Bool max :: RawSnapshotLocation -> RawSnapshotLocation -> RawSnapshotLocation min :: RawSnapshotLocation -> RawSnapshotLocation -> RawSnapshotLocation | |||||
Display RawSnapshotLocation Source # | |||||
Defined in Pantry.Types | |||||
Pretty RawSnapshotLocation Source # | |||||
Defined in Pantry.Types Methods pretty :: RawSnapshotLocation -> StyleDoc | |||||
FromJSON (WithJSONWarnings (Unresolved RawSnapshotLocation)) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved RawSnapshotLocation)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved RawSnapshotLocation)] omittedField :: Maybe (WithJSONWarnings (Unresolved RawSnapshotLocation)) | |||||
type Rep RawSnapshotLocation Source # | |||||
Defined in Pantry.Types type Rep RawSnapshotLocation = D1 ('MetaData "RawSnapshotLocation" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) ((C1 ('MetaCons "RSLCompiler" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 WantedCompiler)) :+: C1 ('MetaCons "RSLUrl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe BlobKey)))) :+: (C1 ('MetaCons "RSLFilePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ResolvedPath File))) :+: C1 ('MetaCons "RSLSynonym" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SnapName)))) |
data SnapshotLocation Source #
Where to load a snapshot from.
Since: 0.1.0.0
Constructors
SLCompiler !WantedCompiler | Don't use an actual snapshot, just a version of the compiler with its shipped packages. Since: 0.1.0.0 |
SLUrl !Text !BlobKey | Download the snapshot from the given URL. The optional
Since: 0.1.0.0 |
SLFilePath !(ResolvedPath File) | Snapshot at a local file path. Since: 0.1.0.0 |
Instances
ToJSON SnapshotLocation Source # | |||||
Defined in Pantry.Types Methods toJSON :: SnapshotLocation -> Value toEncoding :: SnapshotLocation -> Encoding toJSONList :: [SnapshotLocation] -> Value toEncodingList :: [SnapshotLocation] -> Encoding omitField :: SnapshotLocation -> Bool | |||||
Generic SnapshotLocation Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: SnapshotLocation -> Rep SnapshotLocation x to :: Rep SnapshotLocation x -> SnapshotLocation | |||||
Show SnapshotLocation Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> SnapshotLocation -> ShowS show :: SnapshotLocation -> String showList :: [SnapshotLocation] -> ShowS | |||||
NFData SnapshotLocation Source # | |||||
Defined in Pantry.Types Methods rnf :: SnapshotLocation -> () | |||||
Eq SnapshotLocation Source # | |||||
Defined in Pantry.Types Methods (==) :: SnapshotLocation -> SnapshotLocation -> Bool (/=) :: SnapshotLocation -> SnapshotLocation -> Bool | |||||
Ord SnapshotLocation Source # | |||||
Defined in Pantry.Types Methods compare :: SnapshotLocation -> SnapshotLocation -> Ordering (<) :: SnapshotLocation -> SnapshotLocation -> Bool (<=) :: SnapshotLocation -> SnapshotLocation -> Bool (>) :: SnapshotLocation -> SnapshotLocation -> Bool (>=) :: SnapshotLocation -> SnapshotLocation -> Bool max :: SnapshotLocation -> SnapshotLocation -> SnapshotLocation min :: SnapshotLocation -> SnapshotLocation -> SnapshotLocation | |||||
Display SnapshotLocation Source # | |||||
Defined in Pantry.Types | |||||
FromJSON (WithJSONWarnings (Unresolved SnapshotLocation)) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved SnapshotLocation)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved SnapshotLocation)] omittedField :: Maybe (WithJSONWarnings (Unresolved SnapshotLocation)) | |||||
type Rep SnapshotLocation Source # | |||||
Defined in Pantry.Types type Rep SnapshotLocation = D1 ('MetaData "SnapshotLocation" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "SLCompiler" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 WantedCompiler)) :+: (C1 ('MetaCons "SLUrl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 BlobKey)) :+: C1 ('MetaCons "SLFilePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ResolvedPath File))))) |
toRawSL :: SnapshotLocation -> RawSnapshotLocation Source #
Convert snapshot location to its "raw" equivalent.
Since: 0.1.0.0
parseHackageText :: Text -> Either PantryException (PackageIdentifier, BlobKey) Source #
Parse a hackage text.
Since: 0.1.0.0
parseRawSnapshotLocation :: Text -> Unresolved RawSnapshotLocation Source #
Parse a Text
into an Unresolved
RawSnapshotLocation
.
Since: 0.1.0.0
data RawSnapshotLayer Source #
A single layer of a snapshot, i.e. a specific YAML configuration file.
Since: 0.1.0.0
Constructors
RawSnapshotLayer | |
Fields
|
Instances
ToJSON RawSnapshotLayer Source # | |||||
Defined in Pantry.Types Methods toJSON :: RawSnapshotLayer -> Value toEncoding :: RawSnapshotLayer -> Encoding toJSONList :: [RawSnapshotLayer] -> Value toEncodingList :: [RawSnapshotLayer] -> Encoding omitField :: RawSnapshotLayer -> Bool | |||||
Generic RawSnapshotLayer Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: RawSnapshotLayer -> Rep RawSnapshotLayer x to :: Rep RawSnapshotLayer x -> RawSnapshotLayer | |||||
Show RawSnapshotLayer Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RawSnapshotLayer -> ShowS show :: RawSnapshotLayer -> String showList :: [RawSnapshotLayer] -> ShowS | |||||
NFData RawSnapshotLayer Source # | |||||
Defined in Pantry.Types Methods rnf :: RawSnapshotLayer -> () | |||||
Eq RawSnapshotLayer Source # | |||||
Defined in Pantry.Types Methods (==) :: RawSnapshotLayer -> RawSnapshotLayer -> Bool (/=) :: RawSnapshotLayer -> RawSnapshotLayer -> Bool | |||||
FromJSON (WithJSONWarnings (Unresolved RawSnapshotLayer)) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved RawSnapshotLayer)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved RawSnapshotLayer)] omittedField :: Maybe (WithJSONWarnings (Unresolved RawSnapshotLayer)) | |||||
type Rep RawSnapshotLayer Source # | |||||
Defined in Pantry.Types type Rep RawSnapshotLayer = D1 ('MetaData "RawSnapshotLayer" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "RawSnapshotLayer" 'PrefixI 'True) (((S1 ('MetaSel ('Just "rslParent") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RawSnapshotLocation) :*: S1 ('MetaSel ('Just "rslCompiler") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe WantedCompiler))) :*: (S1 ('MetaSel ('Just "rslLocations") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [RawPackageLocationImmutable]) :*: S1 ('MetaSel ('Just "rslDropPackages") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set PackageName)))) :*: ((S1 ('MetaSel ('Just "rslFlags") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PackageName (Map FlagName Bool))) :*: S1 ('MetaSel ('Just "rslHidden") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PackageName Bool))) :*: (S1 ('MetaSel ('Just "rslGhcOptions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PackageName [Text])) :*: S1 ('MetaSel ('Just "rslPublishTime") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe UTCTime)))))) |
data SnapshotLayer Source #
A single layer of a snapshot, i.e. a specific YAML configuration file.
Since: 0.1.0.0
Constructors
SnapshotLayer | |
Fields
|
Instances
ToJSON SnapshotLayer Source # | |||||
Defined in Pantry.Types Methods toJSON :: SnapshotLayer -> Value toEncoding :: SnapshotLayer -> Encoding toJSONList :: [SnapshotLayer] -> Value toEncodingList :: [SnapshotLayer] -> Encoding omitField :: SnapshotLayer -> Bool | |||||
Generic SnapshotLayer Source # | |||||
Defined in Pantry.Types Associated Types
| |||||
Show SnapshotLayer Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> SnapshotLayer -> ShowS show :: SnapshotLayer -> String showList :: [SnapshotLayer] -> ShowS | |||||
Eq SnapshotLayer Source # | |||||
Defined in Pantry.Types | |||||
type Rep SnapshotLayer Source # | |||||
Defined in Pantry.Types type Rep SnapshotLayer = D1 ('MetaData "SnapshotLayer" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "SnapshotLayer" 'PrefixI 'True) (((S1 ('MetaSel ('Just "slParent") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SnapshotLocation) :*: S1 ('MetaSel ('Just "slCompiler") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe WantedCompiler))) :*: (S1 ('MetaSel ('Just "slLocations") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [PackageLocationImmutable]) :*: S1 ('MetaSel ('Just "slDropPackages") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set PackageName)))) :*: ((S1 ('MetaSel ('Just "slFlags") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PackageName (Map FlagName Bool))) :*: S1 ('MetaSel ('Just "slHidden") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PackageName Bool))) :*: (S1 ('MetaSel ('Just "slGhcOptions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Map PackageName [Text])) :*: S1 ('MetaSel ('Just "slPublishTime") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe UTCTime)))))) |
toRawSnapshotLayer :: SnapshotLayer -> RawSnapshotLayer Source #
Convert snapshot layer into its "raw" equivalent.
Since: 0.1.0.0
data RawSnapshot Source #
A flattened representation of all the layers in a snapshot.
Since: 0.1.0.0
Constructors
RawSnapshot | |
Fields
|
A flattened representation of all the layers in a snapshot.
Since: 0.1.0.0
Constructors
Snapshot | |
Fields
|
data RawSnapshotPackage Source #
Settings for a package found in a snapshot.
Since: 0.1.0.0
Constructors
RawSnapshotPackage | |
Fields
|
data SnapshotPackage Source #
Settings for a package found in a snapshot.
Since: 0.1.0.0
Constructors
SnapshotPackage | |
Fields
|
Instances
Show SnapshotPackage Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> SnapshotPackage -> ShowS show :: SnapshotPackage -> String showList :: [SnapshotPackage] -> ShowS |
data GlobalHintsLocation Source #
Where to load global hints from.
Since: 0.9.4
Constructors
GHLUrl !Text | Download the global hints from the given URL. |
GHLFilePath !(ResolvedPath File) | Global hints at a local file path. |
Instances
ToJSON GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Methods toJSON :: GlobalHintsLocation -> Value toEncoding :: GlobalHintsLocation -> Encoding toJSONList :: [GlobalHintsLocation] -> Value toEncodingList :: [GlobalHintsLocation] -> Encoding omitField :: GlobalHintsLocation -> Bool | |||||
Generic GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: GlobalHintsLocation -> Rep GlobalHintsLocation x to :: Rep GlobalHintsLocation x -> GlobalHintsLocation | |||||
Show GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> GlobalHintsLocation -> ShowS show :: GlobalHintsLocation -> String showList :: [GlobalHintsLocation] -> ShowS | |||||
NFData GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Methods rnf :: GlobalHintsLocation -> () | |||||
Eq GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Methods (==) :: GlobalHintsLocation -> GlobalHintsLocation -> Bool (/=) :: GlobalHintsLocation -> GlobalHintsLocation -> Bool | |||||
Ord GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Methods compare :: GlobalHintsLocation -> GlobalHintsLocation -> Ordering (<) :: GlobalHintsLocation -> GlobalHintsLocation -> Bool (<=) :: GlobalHintsLocation -> GlobalHintsLocation -> Bool (>) :: GlobalHintsLocation -> GlobalHintsLocation -> Bool (>=) :: GlobalHintsLocation -> GlobalHintsLocation -> Bool max :: GlobalHintsLocation -> GlobalHintsLocation -> GlobalHintsLocation min :: GlobalHintsLocation -> GlobalHintsLocation -> GlobalHintsLocation | |||||
Display GlobalHintsLocation Source # | |||||
Defined in Pantry.Types | |||||
Pretty GlobalHintsLocation Source # | |||||
Defined in Pantry.Types Methods pretty :: GlobalHintsLocation -> StyleDoc | |||||
FromJSON (WithJSONWarnings (Unresolved GlobalHintsLocation)) Source # | |||||
Defined in Pantry.Types Methods parseJSON :: Value -> Parser (WithJSONWarnings (Unresolved GlobalHintsLocation)) parseJSONList :: Value -> Parser [WithJSONWarnings (Unresolved GlobalHintsLocation)] omittedField :: Maybe (WithJSONWarnings (Unresolved GlobalHintsLocation)) | |||||
type Rep GlobalHintsLocation Source # | |||||
Defined in Pantry.Types type Rep GlobalHintsLocation = D1 ('MetaData "GlobalHintsLocation" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "GHLUrl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)) :+: C1 ('MetaCons "GHLFilePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (ResolvedPath File)))) |
parseGlobalHintsLocation :: Text -> Unresolved GlobalHintsLocation Source #
Parse a Text
into an Unresolved
GlobalHintsLocation
.
Since: 0.9.4
parseWantedCompiler :: Text -> Either PantryException WantedCompiler Source #
Parse a Text
into a WantedCompiler
value.
Since: 0.1.0.0
data RawPackageMetadata Source #
Metadata provided by a config file for archives and repos. This information can be used for optimized lookups of information like package identifiers, or for validating that the user configuration has the expected information.
Since: 0.1.0.0
Constructors
RawPackageMetadata | |
Fields
|
Instances
Generic RawPackageMetadata Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: RawPackageMetadata -> Rep RawPackageMetadata x to :: Rep RawPackageMetadata x -> RawPackageMetadata | |||||
Show RawPackageMetadata Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> RawPackageMetadata -> ShowS show :: RawPackageMetadata -> String showList :: [RawPackageMetadata] -> ShowS | |||||
NFData RawPackageMetadata Source # | |||||
Defined in Pantry.Types Methods rnf :: RawPackageMetadata -> () | |||||
Eq RawPackageMetadata Source # | |||||
Defined in Pantry.Types Methods (==) :: RawPackageMetadata -> RawPackageMetadata -> Bool (/=) :: RawPackageMetadata -> RawPackageMetadata -> Bool | |||||
Ord RawPackageMetadata Source # | |||||
Defined in Pantry.Types Methods compare :: RawPackageMetadata -> RawPackageMetadata -> Ordering (<) :: RawPackageMetadata -> RawPackageMetadata -> Bool (<=) :: RawPackageMetadata -> RawPackageMetadata -> Bool (>) :: RawPackageMetadata -> RawPackageMetadata -> Bool (>=) :: RawPackageMetadata -> RawPackageMetadata -> Bool max :: RawPackageMetadata -> RawPackageMetadata -> RawPackageMetadata min :: RawPackageMetadata -> RawPackageMetadata -> RawPackageMetadata | |||||
Display RawPackageMetadata Source # | |||||
Defined in Pantry.Types | |||||
type Rep RawPackageMetadata Source # | |||||
Defined in Pantry.Types type Rep RawPackageMetadata = D1 ('MetaData "RawPackageMetadata" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "RawPackageMetadata" 'PrefixI 'True) (S1 ('MetaSel ('Just "rpmName") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe PackageName)) :*: (S1 ('MetaSel ('Just "rpmVersion") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe Version)) :*: S1 ('MetaSel ('Just "rpmTreeKey") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe TreeKey))))) |
data PackageMetadata Source #
Exact metadata specifying concrete package
Since: 0.1.0.0
Constructors
PackageMetadata | |
Fields
|
Instances
Generic PackageMetadata Source # | |||||
Defined in Pantry.Types Associated Types
Methods from :: PackageMetadata -> Rep PackageMetadata x to :: Rep PackageMetadata x -> PackageMetadata | |||||
Show PackageMetadata Source # | |||||
Defined in Pantry.Types Methods showsPrec :: Int -> PackageMetadata -> ShowS show :: PackageMetadata -> String showList :: [PackageMetadata] -> ShowS | |||||
NFData PackageMetadata Source # | |||||
Defined in Pantry.Types Methods rnf :: PackageMetadata -> () | |||||
Eq PackageMetadata Source # | |||||
Defined in Pantry.Types Methods (==) :: PackageMetadata -> PackageMetadata -> Bool (/=) :: PackageMetadata -> PackageMetadata -> Bool | |||||
Ord PackageMetadata Source # | |||||
Defined in Pantry.Types Methods compare :: PackageMetadata -> PackageMetadata -> Ordering (<) :: PackageMetadata -> PackageMetadata -> Bool (<=) :: PackageMetadata -> PackageMetadata -> Bool (>) :: PackageMetadata -> PackageMetadata -> Bool (>=) :: PackageMetadata -> PackageMetadata -> Bool max :: PackageMetadata -> PackageMetadata -> PackageMetadata min :: PackageMetadata -> PackageMetadata -> PackageMetadata | |||||
Display PackageMetadata Source # | |||||
Defined in Pantry.Types | |||||
type Rep PackageMetadata Source # | |||||
Defined in Pantry.Types type Rep PackageMetadata = D1 ('MetaData "PackageMetadata" "Pantry.Types" "pantry-0.10.0-k8pqezVc1P83F7RDdYOvX-internal" 'False) (C1 ('MetaCons "PackageMetadata" 'PrefixI 'True) (S1 ('MetaSel ('Just "pmIdent") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PackageIdentifier) :*: S1 ('MetaSel ('Just "pmTreeKey") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TreeKey))) |
toRawPM :: PackageMetadata -> RawPackageMetadata Source #
Convert package metadata to its "raw" equivalent.
Since: 0.1.0.0
newtype SnapshotCacheHash Source #
An arbitrary hash for a snapshot, used for finding module names in a snapshot. Mostly intended for Stack's usage.
Since: 0.1.0.0
Constructors
SnapshotCacheHash | |
Fields |
Instances
Show SnapshotCacheHash Source # | |
Defined in Pantry.Types Methods showsPrec :: Int -> SnapshotCacheHash -> ShowS show :: SnapshotCacheHash -> String showList :: [SnapshotCacheHash] -> ShowS |
getGlobalHintsFile :: HasPantryConfig env => RIO env (Path Abs File) Source #
Get the path to the global hints cache file
bsToBlobKey :: ByteString -> BlobKey Source #
Creates BlobKey for an input ByteString
Since: 0.1.0.0
warnMissingCabalFile :: HasLogFunc env => RawPackageLocationImmutable -> RIO env () Source #
Warn if the package uses PCHpack
.
Since: 0.4.0.0