forked from pool/ghc-hackage-security
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-hackage-security?expand=0&rev=121
232 lines
9.8 KiB
Plaintext
232 lines
9.8 KiB
Plaintext
cabal-version: 1.12
|
|
name: hackage-security
|
|
version: 0.6.3.1
|
|
x-revision: 1
|
|
|
|
synopsis: Hackage security library
|
|
description: The hackage security library provides both server and
|
|
client utilities for securing the Hackage package server
|
|
(<https://hackage.haskell.org/>). It is based on The Update
|
|
Framework (<https://theupdateframework.com/>), a set of
|
|
recommendations developed by security researchers at
|
|
various universities in the US as well as developers on the
|
|
Tor project (<https://www.torproject.org/>).
|
|
.
|
|
The current implementation supports only index signing,
|
|
thereby enabling untrusted mirrors. It does not yet provide
|
|
facilities for author package signing.
|
|
.
|
|
The library has two main entry points:
|
|
"Hackage.Security.Client" is the main entry point for
|
|
clients (the typical example being @cabal@), and
|
|
"Hackage.Security.Server" is the main entry point for
|
|
servers (the typical example being @hackage-server@).
|
|
license: BSD3
|
|
license-file: LICENSE
|
|
author: Edsko de Vries
|
|
maintainer: cabal-devel@haskell.org
|
|
copyright: Copyright 2015-2022 Well-Typed LLP
|
|
category: Distribution
|
|
homepage: https://github.com/haskell/hackage-security
|
|
bug-reports: https://github.com/haskell/hackage-security/issues
|
|
build-type: Simple
|
|
|
|
tested-with:
|
|
GHC == 9.12.2
|
|
GHC == 9.10.2
|
|
GHC == 9.8.4
|
|
GHC == 9.6.7
|
|
GHC == 9.4.8
|
|
GHC == 9.2.8
|
|
GHC == 9.0.2
|
|
GHC == 8.10.7
|
|
GHC == 8.8.4
|
|
GHC == 8.6.5
|
|
GHC == 8.4.4
|
|
|
|
extra-source-files:
|
|
ChangeLog.md
|
|
|
|
source-repository head
|
|
type: git
|
|
location: https://github.com/haskell/hackage-security.git
|
|
|
|
flag Cabal-syntax
|
|
description: Are we using Cabal-syntax?
|
|
manual: False
|
|
default: False
|
|
|
|
flag lukko
|
|
description: Use @lukko@ for file-locking, otherwise use @GHC.IO.Handle.Lock@
|
|
manual: False
|
|
default: False
|
|
|
|
library
|
|
-- Most functionality is exported through the top-level entry points .Client
|
|
-- and .Server; the other exported modules are intended for qualified imports.
|
|
exposed-modules: Hackage.Security.Client
|
|
Hackage.Security.Client.Formats
|
|
Hackage.Security.Client.Repository
|
|
Hackage.Security.Client.Repository.Cache
|
|
Hackage.Security.Client.Repository.Local
|
|
Hackage.Security.Client.Repository.Remote
|
|
Hackage.Security.Client.Repository.HttpLib
|
|
Hackage.Security.Client.Verify
|
|
Hackage.Security.JSON
|
|
Hackage.Security.Key.Env
|
|
Hackage.Security.Server
|
|
Hackage.Security.Trusted
|
|
Hackage.Security.TUF.FileMap
|
|
Hackage.Security.Util.Checked
|
|
Hackage.Security.Util.Path
|
|
Hackage.Security.Util.Pretty
|
|
Hackage.Security.Util.Some
|
|
Text.JSON.Canonical
|
|
other-modules: Hackage.Security.Key
|
|
Hackage.Security.Trusted.TCB
|
|
Hackage.Security.TUF
|
|
Hackage.Security.TUF.Common
|
|
Hackage.Security.TUF.FileInfo
|
|
Hackage.Security.TUF.Header
|
|
Hackage.Security.TUF.Layout.Cache
|
|
Hackage.Security.TUF.Layout.Index
|
|
Hackage.Security.TUF.Layout.Repo
|
|
Hackage.Security.TUF.Mirrors
|
|
Hackage.Security.TUF.Paths
|
|
Hackage.Security.TUF.Patterns
|
|
Hackage.Security.TUF.Root
|
|
Hackage.Security.TUF.Signed
|
|
Hackage.Security.TUF.Snapshot
|
|
Hackage.Security.TUF.Targets
|
|
Hackage.Security.TUF.Timestamp
|
|
Hackage.Security.Util.Base64
|
|
Hackage.Security.Util.Exit
|
|
Hackage.Security.Util.IO
|
|
Hackage.Security.Util.JSON
|
|
Hackage.Security.Util.Lens
|
|
Hackage.Security.Util.Stack
|
|
Hackage.Security.Util.TypedEmbedded
|
|
|
|
build-depends: base >= 4.11 && < 4.22,
|
|
base16-bytestring >= 0.1.1 && < 1.1,
|
|
base64-bytestring >= 1.0 && < 1.3,
|
|
bytestring >= 0.10.8.2 && < 0.13,
|
|
containers >= 0.5.11 && < 0.8,
|
|
cryptohash-sha256 >= 0.11 && < 0.12,
|
|
directory >= 1.3.1.5 && < 1.4,
|
|
ed25519 >= 0.0 && < 0.1,
|
|
filepath >= 1.4.2 && < 1.6,
|
|
mtl >= 2.2.2 && < 2.4,
|
|
network-uri >= 2.6 && < 2.7,
|
|
network >= 2.6 && < 3.3,
|
|
parsec >= 3.1.13 && < 3.2,
|
|
pretty >= 1.0 && < 1.2,
|
|
-- 0.4.2 introduces TarIndex, 0.4.4 introduces more
|
|
-- functionality, 0.5.0 changes type of serialise
|
|
tar >= 0.5 && < 0.7,
|
|
template-haskell >= 2.13 && < 2.24,
|
|
time >= 1.8.0.2 && < 1.15,
|
|
transformers >= 0.3 && < 0.7,
|
|
zlib >= 0.5 && < 0.8,
|
|
-- whatever versions are bundled with ghc:
|
|
ghc-prim >= 0.5.2 && < 0.14
|
|
|
|
if flag(lukko)
|
|
build-depends: lukko >= 0.1 && < 0.2
|
|
else
|
|
build-depends: base >= 4.11
|
|
|
|
if flag(Cabal-syntax)
|
|
build-depends: Cabal-syntax >= 3.7 && < 3.18
|
|
else
|
|
build-depends: Cabal >= 2.2.0.1 && < 2.6
|
|
|| >= 3.0 && < 3.7,
|
|
Cabal-syntax < 3.7
|
|
|
|
hs-source-dirs: src
|
|
default-language: Haskell2010
|
|
default-extensions: DefaultSignatures
|
|
DeriveDataTypeable
|
|
DeriveFunctor
|
|
FlexibleContexts
|
|
FlexibleInstances
|
|
GADTs
|
|
GeneralizedNewtypeDeriving
|
|
KindSignatures
|
|
MultiParamTypeClasses
|
|
NamedFieldPuns
|
|
NoImplicitPrelude
|
|
NoMonomorphismRestriction
|
|
PatternSynonyms
|
|
RankNTypes
|
|
RecordWildCards
|
|
ScopedTypeVariables
|
|
StandaloneDeriving
|
|
TupleSections
|
|
TypeFamilies
|
|
TypeOperators
|
|
ViewPatterns
|
|
other-extensions:
|
|
AllowAmbiguousTypes
|
|
BangPatterns
|
|
CPP
|
|
DeriveLift
|
|
OverlappingInstances
|
|
PackageImports
|
|
RoleAnnotations
|
|
StaticPointers
|
|
UndecidableInstances
|
|
|
|
ghc-options: -Wall
|
|
|
|
test-suite TestSuite
|
|
type: exitcode-stdio-1.0
|
|
main-is: TestSuite.hs
|
|
other-modules: TestSuite.HttpMem
|
|
TestSuite.InMemCache
|
|
TestSuite.InMemRepo
|
|
TestSuite.InMemRepository
|
|
TestSuite.JSON
|
|
TestSuite.PrivateKeys
|
|
TestSuite.Util.StrictMVar
|
|
|
|
-- inherited constraints from lib:hackage-security component
|
|
build-depends: hackage-security,
|
|
base,
|
|
containers,
|
|
bytestring,
|
|
network-uri,
|
|
tar,
|
|
text,
|
|
time,
|
|
zlib
|
|
|
|
if flag(Cabal-syntax)
|
|
build-depends: Cabal >= 3.7 && < 3.18,
|
|
Cabal-syntax >= 3.7 && < 3.18
|
|
else
|
|
build-depends: Cabal >= 2.2.0.1 && < 2.6
|
|
|| >= 3.0 && < 3.7,
|
|
Cabal-syntax < 3.7
|
|
|
|
-- dependencies exclusive to test-suite
|
|
build-depends: tasty >= 1.1.0.4 && < 1.6,
|
|
-- tasty-1.1.0.4 is the version in Stackage LTS 12.26 (GHC 8.4)
|
|
tasty-hunit == 0.10.*,
|
|
tasty-quickcheck >= 0.10 && < 1,
|
|
QuickCheck >= 2.11 && < 2.17,
|
|
aeson >= 1.4 && < 1.6 || >= 2.0 && < 2.3,
|
|
vector >= 0.12 && < 0.14,
|
|
unordered-containers >= 0.2.8.0 && < 0.3,
|
|
temporary >= 1.2 && < 1.4
|
|
|
|
hs-source-dirs: tests
|
|
default-language: Haskell2010
|
|
default-extensions: FlexibleContexts
|
|
GADTs
|
|
KindSignatures
|
|
RankNTypes
|
|
RecordWildCards
|
|
ScopedTypeVariables
|
|
ghc-options: -Wall
|