hackage-security 0.6.3.1 → 0.6.3.2
raw patch · 13 files changed
+27/−40 lines, 13 filesdep ~QuickCheckdep ~basedep ~containersPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: QuickCheck, base, containers, tar, template-haskell, time
API changes (from Hackage documentation)
Files
- ChangeLog.md +8/−0
- hackage-security.cabal +12/−11
- src/Hackage/Security/Client.hs +0/−4
- src/Hackage/Security/Client/Repository.hs +0/−2
- src/Hackage/Security/Client/Repository/Remote.hs +0/−2
- src/Hackage/Security/JSON.hs +0/−2
- src/Hackage/Security/Key.hs +0/−4
- src/Hackage/Security/TUF/Header.hs +2/−3
- src/Hackage/Security/Trusted/TCB.hs +0/−3
- src/Hackage/Security/Util/Checked.hs +1/−3
- src/Hackage/Security/Util/Some.hs +0/−3
- src/Text/JSON/Canonical.hs +0/−2
- tests/TestSuite.hs +4/−1
ChangeLog.md view
@@ -1,5 +1,13 @@ See also http://pvp.haskell.org/faq +0.6.3.2+-------++* Allow `tar-0.7`.+* Relax upper bounds for GHC 9.14 shipped packages.+* Remove obsolete `deriving Typeable`.+* Tested with GHC 8.4 - 9.14 alpha1.+ 0.6.3.1 -------
hackage-security.cabal view
@@ -1,6 +1,6 @@-cabal-version: 1.12+cabal-version: 1.18 name: hackage-security-version: 0.6.3.1+version: 0.6.3.2 synopsis: Hackage security library description: The hackage security library provides both server and@@ -31,6 +31,7 @@ build-type: Simple tested-with:+ GHC == 9.14.1 GHC == 9.12.2 GHC == 9.10.2 GHC == 9.8.4@@ -43,7 +44,7 @@ GHC == 8.6.5 GHC == 8.4.4 -extra-source-files:+extra-doc-files: ChangeLog.md source-repository head@@ -106,11 +107,11 @@ Hackage.Security.Util.Stack Hackage.Security.Util.TypedEmbedded - build-depends: base >= 4.11 && < 4.22,+ build-depends: base >= 4.11 && < 4.23, 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,+ containers >= 0.5.11 && < 0.9, cryptohash-sha256 >= 0.11 && < 0.12, directory >= 1.3.1.5 && < 1.4, ed25519 >= 0.0 && < 0.1,@@ -122,9 +123,9 @@ 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,+ tar >= 0.5 && < 0.8,+ template-haskell >= 2.13 && < 2.25,+ time >= 1.8.0.2 && < 1.16, transformers >= 0.3 && < 0.7, zlib >= 0.5 && < 0.8, -- whatever versions are bundled with ghc:@@ -136,7 +137,7 @@ build-depends: base >= 4.11 if flag(Cabal-syntax)- build-depends: Cabal-syntax >= 3.7 && < 3.16+ build-depends: Cabal-syntax >= 3.7 && < 3.18 else build-depends: Cabal >= 2.2.0.1 && < 2.6 || >= 3.0 && < 3.7,@@ -201,8 +202,8 @@ zlib if flag(Cabal-syntax)- build-depends: Cabal >= 3.7 && < 3.16,- Cabal-syntax >= 3.7 && < 3.16+ 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,
src/Hackage/Security/Client.hs view
@@ -49,7 +49,6 @@ import Data.Ord (comparing) import Data.Time import Data.Traversable (for)-import Data.Typeable (Typeable) import qualified Codec.Archive.Tar as Tar import qualified Codec.Archive.Tar.Entry as Tar import qualified Codec.Archive.Tar.Index as Tar@@ -931,17 +930,14 @@ rethrowInvalidPackageException = throwIO data InvalidPackageException = InvalidPackageException PackageIdentifier- deriving (Typeable) data LocalFileCorrupted = LocalFileCorrupted DeserializationError- deriving (Typeable) data InvalidFileInIndex = forall dec. InvalidFileInIndex { invalidFileInIndex :: IndexFile dec , invalidFileInIndexRaw :: BS.L.ByteString , invalidFileInIndexError :: DeserializationError }- deriving (Typeable) deriving instance Show InvalidPackageException deriving instance Show LocalFileCorrupted
src/Hackage/Security/Client/Repository.hs view
@@ -33,7 +33,6 @@ import Prelude import Control.Exception import Data.Kind (Type)-import Data.Typeable (Typeable) import qualified Codec.Archive.Tar.Index as Tar import qualified Data.ByteString.Lazy as BS.L @@ -384,7 +383,6 @@ -- for local repositories this might correspond to file-not-found, etc. data SomeRemoteError :: Type where SomeRemoteError :: Exception e => e -> SomeRemoteError- deriving (Typeable) deriving instance Show SomeRemoteError instance Exception SomeRemoteError where displayException = pretty
src/Hackage/Security/Client/Repository/Remote.hs view
@@ -34,7 +34,6 @@ import Control.Monad.IO.Class (MonadIO) import Data.Kind (Type) import Data.List (nub, intercalate)-import Data.Typeable import Network.URI hiding (uriPath, path) import System.IO () import qualified Data.ByteString as BS@@ -486,7 +485,6 @@ fileTooLargePath :: TargetPath , fileTooLargeExpected :: FileSize }- deriving (Typeable) instance Pretty FileTooLarge where pretty FileTooLarge{..} = concat [
src/Hackage/Security/JSON.hs view
@@ -45,7 +45,6 @@ import Control.Monad.Except (MonadError, Except, ExceptT, runExcept, runExceptT, throwError) import Control.Monad.Reader (MonadReader, Reader, runReader, local, ask) import Data.Functor.Identity-import Data.Typeable (Typeable) import qualified Data.ByteString.Lazy as BS.L import Hackage.Security.Key@@ -82,7 +81,6 @@ -- -- Records actual and expected types. | DeserializationErrorFileType String String- deriving (Typeable) deriving instance Show DeserializationError instance Exception DeserializationError where displayException = pretty
src/Hackage/Security/Key.hs view
@@ -28,7 +28,6 @@ import Prelude import Control.Monad import Data.Functor.Identity-import Data.Typeable (Typeable) import Text.JSON.Canonical import qualified Crypto.Hash.SHA256 as SHA256 import qualified Crypto.Sign.Ed25519 as Ed25519@@ -50,15 +49,12 @@ data Key a where KeyEd25519 :: Ed25519.PublicKey -> Ed25519.SecretKey -> Key Ed25519- deriving (Typeable) data PublicKey a where PublicKeyEd25519 :: Ed25519.PublicKey -> PublicKey Ed25519- deriving (Typeable) data PrivateKey a where PrivateKeyEd25519 :: Ed25519.SecretKey -> PrivateKey Ed25519- deriving (Typeable) deriving instance Show (Key typ) deriving instance Show (PublicKey typ)
src/Hackage/Security/TUF/Header.hs view
@@ -14,7 +14,6 @@ import Prelude import Data.Time-import Data.Typeable (Typeable) import Hackage.Security.JSON import Hackage.Security.Util.Lens@@ -38,7 +37,7 @@ -- 'Show' and 'Read' instance are defined in terms of the underlying 'Int' -- (this is used for example by Hackage during the backup process). newtype FileVersion = FileVersion Int54- deriving (Eq, Ord, Typeable)+ deriving (Eq, Ord) instance Show FileVersion where show (FileVersion v) = show v@@ -53,7 +52,7 @@ -- allows that, because you could set an expiry date 2000 years into the future. -- By having the Maybe here we avoid the _need_ for such encoding issues.) newtype FileExpires = FileExpires (Maybe UTCTime)- deriving (Eq, Ord, Show, Typeable)+ deriving (Eq, Ord, Show) -- | Occasionally it is useful to read only a header from a file. --
src/Hackage/Security/Trusted/TCB.hs view
@@ -23,7 +23,6 @@ import Control.Exception import Control.Monad (when, unless) import Control.Monad.Except (Except, runExcept, throwError)-import Data.Typeable import Data.Time import Hackage.Security.TUF import Hackage.Security.JSON@@ -184,11 +183,9 @@ -- -- We record all verification errors that occurred before we gave up. | VerificationErrorLoop VerificationHistory- deriving (Typeable) -- | Root metadata updated (as part of the normal update process) data RootUpdated = RootUpdated- deriving (Typeable) type VerificationHistory = [Either RootUpdated VerificationError]
src/Hackage/Security/Util/Checked.hs view
@@ -1,4 +1,3 @@-{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE IncoherentInstances #-} {-# LANGUAGE RoleAnnotations #-} @@ -22,7 +21,6 @@ import Prelude import Control.Exception (Exception, IOException) import qualified Control.Exception as Base-import Data.Typeable (Typeable) import GHC.Prim (coerce) @@ -59,7 +57,7 @@ -- | Wraps up an async exception as a synchronous exception. newtype SyncException = SyncException Base.SomeException- deriving (Show, Typeable)+ deriving (Show) instance Exception SyncException -- | Throw a checked exception
src/Hackage/Security/Util/Some.hs view
@@ -15,14 +15,11 @@ ) where import Prelude-import Data.Typeable (Typeable) import Hackage.Security.Util.TypedEmbedded import Hackage.Security.Util.Pretty data Some f = forall a. Some (f a)--deriving instance Typeable Some {------------------------------------------------------------------------------- Equality on Some types
src/Text/JSON/Canonical.hs view
@@ -43,7 +43,6 @@ import Data.Int (Int64) import Data.Ix (Ix) import Data.List (foldl', sortBy)-import Data.Typeable (Typeable) import Foreign.Storable (Storable) import Text.Printf (PrintfArg) import qualified Data.ByteString.Lazy.Char8 as BS@@ -79,7 +78,6 @@ , Bits , Storable , PrintfArg- , Typeable ) instance Bounded Int54 where
tests/TestSuite.hs view
@@ -264,7 +264,10 @@ _ -> fail "unexpected index entry content" _ -> fail "unexpected index path" -#if MIN_VERSION_tar(0,6,0)++#if MIN_VERSION_tar(0,7,0)+ testEntries1 :: [Tar.GenEntry BS.ByteString Tar.TarPath linkTarget]+#elif MIN_VERSION_tar(0,6,0) testEntries1 :: [Tar.GenEntry Tar.TarPath linkTarget] #else testEntries1 :: [Tar.Entry]