diff -Nru haskell-crypto-4.2.4/Crypto.cabal haskell-crypto-4.2.5/Crypto.cabal --- haskell-crypto-4.2.4/Crypto.cabal 2011-09-08 00:30:07.000000000 +0000 +++ haskell-crypto-4.2.5/Crypto.cabal 2012-05-14 11:58:24.000000000 +0000 @@ -1,5 +1,5 @@ Name: Crypto -Version: 4.2.4 +Version: 4.2.5 License: OtherLicense License-File: ReadMe.tex Author: Dominic Steinitz diff -Nru haskell-crypto-4.2.4/Data/Digest/SHA2.hs haskell-crypto-4.2.5/Data/Digest/SHA2.hs --- haskell-crypto-4.2.4/Data/Digest/SHA2.hs 2011-09-08 00:30:07.000000000 +0000 +++ haskell-crypto-4.2.5/Data/Digest/SHA2.hs 2012-05-14 11:58:24.000000000 +0000 @@ -106,7 +106,7 @@ data Hash384 = Hash384 !Word64 !Word64 !Word64 !Word64 !Word64 !Word64 deriving (Eq, Ord) data Hash224 = Hash224 !Word32 !Word32 !Word32 !Word32 !Word32 !Word32 !Word32 deriving (Eq, Ord) -instance (Integral a) => Show (Hash8 a) where +instance (Integral a, Show a) => Show (Hash8 a) where showsPrec _ (Hash8 a b c d e f g h) = (showHex a) . (' ':) . (showHex b) . (' ':) . @@ -146,7 +146,7 @@ where bs = bitSize (head r) -instance (Integral h, Bits h) => Hash (Hash8 h) where +instance (Integral h, Bits h, Show h) => Hash (Hash8 h) where toOctets (Hash8 x0 x1 x2 x3 x4 x5 x6 x7) = bitsToOctets =<< [x0, x1, x2, x3, x4, x5, x6, x7] instance Hash Hash384 where diff -Nru haskell-crypto-4.2.4/debian/changelog haskell-crypto-4.2.5/debian/changelog --- haskell-crypto-4.2.4/debian/changelog 2012-02-13 03:40:48.000000000 +0000 +++ haskell-crypto-4.2.5/debian/changelog 2013-06-09 03:45:22.000000000 +0000 @@ -1,3 +1,35 @@ +haskell-crypto (4.2.5-3~ppa1) precise; urgency=low + + * Backport from Debian unstable + * Specify my PPA version of libghc-hunit-dev + * Specify my PPA version of libghc-random-dev + + -- Francois Marier Sun, 09 Jun 2013 15:44:55 +1200 + +haskell-crypto (4.2.5-3) unstable; urgency=low + + * Move Haskell blurb to the end of the description, reduces the impact + of #708703 + + -- Joachim Breitner Sat, 25 May 2013 23:52:07 +0200 + +haskell-crypto (4.2.5-2) unstable; urgency=low + + * Enable compat level 9 + * Use substvars for Haskell description blurbs + + -- Joachim Breitner Fri, 24 May 2013 12:50:15 +0200 + +haskell-crypto (4.2.5-1) experimental; urgency=low + + * Depend on haskell-devscripts 0.8.13 to ensure this packages is built + against experimental + * Bump standards version, no change + * New upstream release + + patches/class-constraints.diff: Bits no longer imply Num + + -- Joachim Breitner Sun, 21 Oct 2012 14:29:03 +0200 + haskell-crypto (4.2.4-1) unstable; urgency=low * New upstream version. diff -Nru haskell-crypto-4.2.4/debian/compat haskell-crypto-4.2.5/debian/compat --- haskell-crypto-4.2.4/debian/compat 2012-02-13 03:25:29.000000000 +0000 +++ haskell-crypto-4.2.5/debian/compat 2013-05-24 07:53:06.000000000 +0000 @@ -1 +1 @@ -7 +9 diff -Nru haskell-crypto-4.2.4/debian/control haskell-crypto-4.2.5/debian/control --- haskell-crypto-4.2.4/debian/control 2012-02-13 03:26:21.000000000 +0000 +++ haskell-crypto-4.2.5/debian/control 2013-06-09 03:44:52.000000000 +0000 @@ -3,19 +3,19 @@ Priority: extra Maintainer: Debian Haskell Group Uploaders: Joachim Breitner -Build-Depends: debhelper (>= 7) +Build-Depends: debhelper (>= 9) , cdbs - , haskell-devscripts (>= 0.8) + , haskell-devscripts (>= 0.8.15) , ghc , ghc-prof - , libghc-hunit-dev + , libghc-hunit-dev (>= 1.2.5) , libghc-hunit-prof - , libghc-random-dev + , libghc-random-dev (>= 1.0.1.1-3~ppa1) , libghc-random-prof Build-Depends-Indep: ghc-doc , libghc-hunit-doc , libghc-random-doc -Standards-Version: 3.9.2 +Standards-Version: 3.9.4 Homepage: http://hackage.haskell.org/package/Crypto Vcs-Darcs: http://darcs.debian.org/pkg-haskell/haskell-crypto Vcs-Browser: http://darcs.debian.org/cgi-bin/darcsweb.cgi?r=pkg-haskell/haskell-crypto @@ -28,10 +28,7 @@ Recommends: ${haskell:Recommends} Suggests: ${haskell:Suggests} Provides: ${haskell:Provides} -Description: cryptographical algorithms for Haskell - This package provides a library for the Haskell programming language. - See http://www.haskell.org/ for more information on Haskell. - . +Description: cryptographical algorithms for Haskell${haskell:ShortBlurb} This package contains the following cryptographical algorithms: * DES * Blowfish @@ -46,6 +43,8 @@ * PKCS5 * Padding * Various Encryption Modes e.g. Cipher Block Chaining + . + ${haskell:Blurb} Package: libghc-crypto-prof Architecture: any @@ -54,11 +53,7 @@ Recommends: ${haskell:Recommends} Suggests: ${haskell:Suggests} Provides: ${haskell:Provides} -Description: cryptographical algorithms for Haskell; profiling libraries - This package provides a library for the Haskell programming language, - compiled for profiling. - See http://www.haskell.org/ for more information on Haskell. - . +Description: cryptographical algorithms for Haskell${haskell:ShortBlurb} This package contains the following cryptographical algorithms: * DES * Blowfish @@ -73,6 +68,8 @@ * PKCS5 * Padding * Various Encryption Modes e.g. Cipher Block Chaining + . + ${haskell:Blurb} Package: libghc-crypto-doc Section: doc @@ -80,11 +77,7 @@ Depends: ${misc:Depends}, ${haskell:Depends} Recommends: ${haskell:Recommends} Suggests: ${haskell:Suggests} -Description: cryptographical algorithms for Haskell; documentation - This package provides the documentation for a library for the Haskell - programming language. - See http://www.haskell.org/ for more information on Haskell. - . +Description: cryptographical algorithms for Haskell${haskell:ShortBlurb} This package contains the following cryptographical algorithms: * DES * Blowfish @@ -99,3 +92,5 @@ * PKCS5 * Padding * Various Encryption Modes e.g. Cipher Block Chaining + . + ${haskell:Blurb} diff -Nru haskell-crypto-4.2.4/debian/patches/class-constraints.diff haskell-crypto-4.2.5/debian/patches/class-constraints.diff --- haskell-crypto-4.2.4/debian/patches/class-constraints.diff 2012-02-13 03:37:10.000000000 +0000 +++ haskell-crypto-4.2.5/debian/patches/class-constraints.diff 2012-10-21 12:28:43.000000000 +0000 @@ -1,27 +1,77 @@ ---- a/Data/Digest/SHA2.hs -+++ b/Data/Digest/SHA2.hs -@@ -106,7 +106,7 @@ - data Hash384 = Hash384 !Word64 !Word64 !Word64 !Word64 !Word64 !Word64 deriving (Eq, Ord) - data Hash224 = Hash224 !Word32 !Word32 !Word32 !Word32 !Word32 !Word32 !Word32 deriving (Eq, Ord) - --instance (Integral a) => Show (Hash8 a) where -+instance (Integral a, Show a) => Show (Hash8 a) where - showsPrec _ (Hash8 a b c d e f g h) = - (showHex a) . (' ':) . - (showHex b) . (' ':) . -@@ -146,7 +146,7 @@ - where - bs = bitSize (head r) - --instance (Integral h, Bits h) => Hash (Hash8 h) where -+instance (Integral h, Bits h, Show h) => Hash (Hash8 h) where - toOctets (Hash8 x0 x1 x2 x3 x4 x5 x6 x7) = bitsToOctets =<< [x0, x1, x2, x3, x4, x5, x6, x7] - - instance Hash Hash384 where -@@ -282,4 +282,4 @@ - - -- Test with: - -- ghc -no-recomp -O --make Data/Digest/SHA2.hs -main-is Data.Digest.SHA2.moduleTest -o moduleTest && ./moduleTest && rm moduleTest --moduleTest = runTestTT test_sha2 -\ No newline at end of file -+moduleTest = runTestTT test_sha2 +Description: ghc 7.6 class constraints +Author: Joachim Breitner + +Index: haskell-crypto-4.2.5/Data/Digest/SHA2.hs +=================================================================== +--- haskell-crypto-4.2.5.orig/Data/Digest/SHA2.hs 2012-05-14 13:58:24.000000000 +0200 ++++ haskell-crypto-4.2.5/Data/Digest/SHA2.hs 2012-10-21 14:21:17.359966255 +0200 +@@ -25,7 +25,7 @@ + ch x y z = (x .&. y) `xor` (complement x .&. z) + maj x y z = (x .&. y) `xor` (x .&. z) `xor` (y .&. z) + +-class (Bits w) => ShaData w where ++class (Bits w, Num w) => ShaData w where + bigSigma0 :: w -> w + bigSigma1 :: w -> w + smallSigma0 :: w -> w +Index: haskell-crypto-4.2.5/Data/LargeWord.hs +=================================================================== +--- haskell-crypto-4.2.5.orig/Data/LargeWord.hs 2012-05-14 13:58:24.000000000 +0200 ++++ haskell-crypto-4.2.5/Data/LargeWord.hs 2012-10-21 14:25:31.855955472 +0200 +@@ -62,7 +62,7 @@ + data LargeKey a b = LargeKey a b + deriving (Eq, Ord) + +-instance (Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => ++instance (Ord a, Bits a, Num a, LargeWord a, Bits b, Num b, LargeWord b) => + LargeWord (LargeKey a b) where + largeWordToInteger (LargeKey lo hi) = + largeWordToInteger lo + (2^(bitSize lo)) * largeWordToInteger hi +@@ -96,17 +96,17 @@ + where conv = integerToLargeWord . largeWordToInteger + largeBitSize ~(LargeKey lo hi) = largeBitSize lo + largeBitSize hi + +-instance (Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => Show (LargeKey a b) where ++instance (Ord a, Bits a, Num a, LargeWord a, Bits b, Num b, LargeWord b) => Show (LargeKey a b) where + showsPrec p = showInt . largeWordToInteger + +-instance (Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => ++instance (Ord a, Bits a, Num a, LargeWord a, Bits b, Num b, LargeWord b) => + Num (LargeKey a b) where + (+) = largeWordPlus + fromInteger = integerToLargeWord + + -- Larger keys are instances of Bits provided their constituents are keys. + +-instance (Ord a, Bits a, LargeWord a, Bits b, LargeWord b) => ++instance (Ord a, Bits a, Num a, LargeWord a, Bits b, Num b, LargeWord b) => + Bits (LargeKey a b) where + (.&.) = largeWordAnd + (.|.) = largeWordOr +@@ -130,11 +130,11 @@ + boflk :: (LargeKey a b) -> b + boflk = undefined + +-instance (Ord a, Bits a, LargeWord a, Ord b, Bits b, LargeWord b) => ++instance (Ord a, Bits a, Num a, LargeWord a, Ord b, Bits b, Num b, LargeWord b) => + Integral (LargeKey a b) where + toInteger = largeWordToInteger + +-instance (Ord a, Bits a, LargeWord a, Ord b, Bits b, LargeWord b) => ++instance (Ord a, Bits a, Num a, LargeWord a, Ord b, Bits b, Num b, LargeWord b) => + Real (LargeKey a b) + + instance Enum (LargeKey a b) +Index: haskell-crypto-4.2.5/Data/Digest/SHA1.hs +=================================================================== +--- haskell-crypto-4.2.5.orig/Data/Digest/SHA1.hs 2012-05-14 13:58:24.000000000 +0200 ++++ haskell-crypto-4.2.5/Data/Digest/SHA1.hs 2012-10-21 14:26:57.551951840 +0200 +@@ -93,7 +93,7 @@ + g [] = Nothing + g xs = Just (splitAt 64 xs) + +-fromBytes :: (Bits a) => [a] -> a ++fromBytes :: (Bits a, Num a) => [a] -> a + fromBytes input = + let dofb accum [] = accum + dofb accum (x:xs) = dofb ((shiftL accum 8) .|. x) xs