diff options
Diffstat (limited to 'dev-haskell/hashed-storage/files')
| -rw-r--r-- | dev-haskell/hashed-storage/files/hashed-storage-0.5.11-ghc-7.10.patch | 8 | ||||
| -rw-r--r-- | dev-haskell/hashed-storage/files/hashed-storage-0.5.9-ghc-7.6.patch | 57 |
2 files changed, 65 insertions, 0 deletions
diff --git a/dev-haskell/hashed-storage/files/hashed-storage-0.5.11-ghc-7.10.patch b/dev-haskell/hashed-storage/files/hashed-storage-0.5.11-ghc-7.10.patch new file mode 100644 index 000000000000..f071cab314fb --- /dev/null +++ b/dev-haskell/hashed-storage/files/hashed-storage-0.5.11-ghc-7.10.patch @@ -0,0 +1,8 @@ +diff --git a/Storage/Hashed/Monad.hs b/Storage/Hashed/Monad.hs +index 67287b4..bf8ad38 100644 +--- a/Storage/Hashed/Monad.hs ++++ b/Storage/Hashed/Monad.hs +@@ -1,2 +1,3 @@ + {-# LANGUAGE ScopedTypeVariables, BangPatterns, TypeSynonymInstances, UndecidableInstances, FlexibleInstances #-} ++{-# LANGUAGE FlexibleContexts #-} + diff --git a/dev-haskell/hashed-storage/files/hashed-storage-0.5.9-ghc-7.6.patch b/dev-haskell/hashed-storage/files/hashed-storage-0.5.9-ghc-7.6.patch new file mode 100644 index 000000000000..21baf9605d9c --- /dev/null +++ b/dev-haskell/hashed-storage/files/hashed-storage-0.5.9-ghc-7.6.patch @@ -0,0 +1,57 @@ +--- hashed-storage-0.5.9-orig/Storage/Hashed/Tree.hs 2011-10-09 07:47:55.000000000 +1100 ++++ hashed-storage-0.5.9/Storage/Hashed/Tree.hs 2012-09-15 00:38:24.233669282 +1000 +@@ -41,6 +41,7 @@ + import Data.List( union, sort ) + import Control.Monad( filterM, liftM ) + import Control.Applicative( (<$>) ) ++import qualified Control.Exception ( catch, IOException ) + + -------------------------------- + -- Tree, Blob and friends +@@ -195,7 +196,7 @@ + let + subtree (name, sub) = + do let here = path `appendPath` name +- sub' <- (Just <$> unstub sub) `catch` \_ -> return Nothing ++ sub' <- (Just <$> unstub sub) `Control.Exception.catch` \(_ :: Control.Exception.IOException) -> return Nothing + case sub' of + Nothing -> return $ Left [(here, treeHash t_, Nothing)] + Just sub -> do +@@ -204,10 +205,10 @@ + Left problems -> Left problems + Right tree -> Right (name, SubTree tree) + badBlob (_, f@(File (Blob s h))) = +- fmap (/= h) (hashFunc f `catch` (\_ -> return NoHash)) ++ fmap (/= h) (hashFunc f `Control.Exception.catch` (\(_ :: Control.Exception.IOException) -> return NoHash)) + badBlob _ = return False + render (name, f@(File (Blob _ h))) = do +- h' <- (Just <$> hashFunc f) `catch` \_ -> return Nothing ++ h' <- (Just <$> hashFunc f) `Control.Exception.catch` \(_ :: Control.Exception.IOException) -> return Nothing + return (path `appendPath` name, h, h') + subs <- mapM subtree [ x | x@(_, item) <- listImmediate t_, isSub item ] + badBlobs <- filterM badBlob (listImmediate t) >>= mapM render +--- hashed-storage-0.5.9-orig/Storage/Hashed/Darcs.hs 2011-10-09 07:47:55.000000000 +1100 ++++ hashed-storage-0.5.9/Storage/Hashed/Darcs.hs 2012-09-15 00:40:02.693038029 +1000 +@@ -1,4 +1,4 @@ +-{-# LANGUAGE BangPatterns #-} ++{-# LANGUAGE BangPatterns, ScopedTypeVariables #-} + + -- | A few darcs-specific utility functions. These are used for reading and + -- writing darcs and darcs-compatible hashed trees. +@@ -10,6 +10,7 @@ + import System.Directory( doesFileExist ) + import Codec.Compression.GZip( decompress, compress ) + import Control.Applicative( (<$>) ) ++import qualified Control.Exception ( catch, IOException ) + + import qualified Data.ByteString.Char8 as BS8 + import qualified Data.ByteString.Lazy.Char8 as BL8 +@@ -290,7 +291,7 @@ + + darcsPristineRefs :: FileSegment -> IO [Hash] + darcsPristineRefs fs = do +- con <- (darcsParseDir <$> readSegment fs) `catch` \_ -> return [] ++ con <- (darcsParseDir <$> readSegment fs) `Control.Exception.catch` \(_ :: Control.Exception.IOException) -> return [] + return $! [ hash | (_, _, _, hash) <- con, valid hash ] + where valid NoHash = False + valid _ = True |
