packages feed

chunked-data 0.2.0 → 0.3.0

raw patch · 6 files changed

+30/−83 lines, 6 filesdep −blaze-builderdep −mono-traversabledep ~bytestringdep ~textPVP ok

version bump matches the API change (PVP)

Dependencies removed: blaze-builder, mono-traversable

Dependency ranges changed: bytestring, text

API changes (from Hackage documentation)

- Data.Builder: instance Builder Builder ByteString
- Data.Builder: instance Builder Builder Text
- Data.Builder: instance ToBuilder Builder Builder
- Data.Builder: instance ToBuilder ByteString Builder
- Data.Builder: instance ToBuilder Char Builder
- Data.Builder: instance ToBuilder Text Builder
- Data.Builder: instance a ~ Char => ToBuilder [a] Builder
- Data.ChunkedZip: instance (Zip f, Zip g) => Zip (Compose f g)
- Data.ChunkedZip: instance Zip ((->) a)
- Data.ChunkedZip: instance Zip IntMap
- Data.ChunkedZip: instance Zip NonEmpty
- Data.ChunkedZip: instance Zip Seq
- Data.ChunkedZip: instance Zip Tree
- Data.ChunkedZip: instance Zip Vector
- Data.ChunkedZip: instance Zip []
- Data.ChunkedZip: instance Zip m => Zip (IdentityT m)
- Data.ChunkedZip: instance Zip m => Zip (ReaderT e m)
- Data.ChunkedZip: instance Zip3 Seq
- Data.ChunkedZip: instance Zip3 Vector
- Data.ChunkedZip: instance Zip3 []
- Data.ChunkedZip: instance Zip4 Seq
- Data.ChunkedZip: instance Zip4 Vector
- Data.ChunkedZip: instance Zip4 []
- Data.ChunkedZip: instance Zip5 Vector
- Data.ChunkedZip: instance Zip5 []
- Data.ChunkedZip: instance Zip6 Vector
- Data.ChunkedZip: instance Zip6 []
- Data.ChunkedZip: instance Zip7 []
- Data.IOData: instance Char ~ c => IOData [c]
- Data.IOData: instance IOData ByteString
- Data.IOData: instance IOData Text
- Data.Sequences.Lazy: class (IsSequence lazy, IsSequence strict) => LazySequence lazy strict | lazy -> strict, strict -> lazy
- Data.Sequences.Lazy: fromChunks :: LazySequence lazy strict => [strict] -> lazy
- Data.Sequences.Lazy: fromStrict :: LazySequence lazy strict => strict -> lazy
- Data.Sequences.Lazy: instance LazySequence ByteString ByteString
- Data.Sequences.Lazy: instance LazySequence Text Text
- Data.Sequences.Lazy: toChunks :: LazySequence lazy strict => lazy -> [strict]
- Data.Sequences.Lazy: toStrict :: LazySequence lazy strict => lazy -> strict
- Data.Textual.Encoding: class (Textual textual, IsSequence binary) => Utf8 textual binary | textual -> binary, binary -> textual
- Data.Textual.Encoding: decodeUtf8 :: Utf8 textual binary => binary -> textual
- Data.Textual.Encoding: encodeUtf8 :: Utf8 textual binary => textual -> binary
- Data.Textual.Encoding: instance (c ~ Char, w ~ Word8) => Utf8 [c] [w]
- Data.Textual.Encoding: instance Utf8 Text ByteString
+ Data.Builder: instance Data.Builder.Builder Data.ByteString.Builder.Internal.Builder Data.ByteString.Lazy.Internal.ByteString
+ Data.Builder: instance Data.Builder.Builder Data.Text.Internal.Builder.Builder Data.Text.Internal.Lazy.Text
+ Data.Builder: instance Data.Builder.ToBuilder Data.ByteString.Builder.Internal.Builder Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.ByteString.Internal.ByteString Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.ByteString.Lazy.Internal.ByteString Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.Text.Internal.Builder.Builder Data.Text.Internal.Builder.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.Text.Internal.Lazy.Text Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.Text.Internal.Lazy.Text Data.Text.Internal.Builder.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.Text.Internal.Text Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance Data.Builder.ToBuilder Data.Text.Internal.Text Data.Text.Internal.Builder.Builder
+ Data.Builder: instance Data.Builder.ToBuilder GHC.Types.Char Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance Data.Builder.ToBuilder GHC.Types.Char Data.Text.Internal.Builder.Builder
+ Data.Builder: instance a ~ GHC.Types.Char => Data.Builder.ToBuilder [a] Data.ByteString.Builder.Internal.Builder
+ Data.Builder: instance a ~ GHC.Types.Char => Data.Builder.ToBuilder [a] Data.Text.Internal.Builder.Builder
+ Data.ChunkedZip: instance (Data.ChunkedZip.Zip f, Data.ChunkedZip.Zip g) => Data.ChunkedZip.Zip (Data.Functor.Compose.Compose f g)
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip ((->) a)
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip Data.IntMap.Base.IntMap
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip Data.List.NonEmpty.NonEmpty
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip Data.Sequence.Seq
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip Data.Tree.Tree
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip Data.Vector.Vector
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip []
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip m => Data.ChunkedZip.Zip (Control.Monad.Trans.Identity.IdentityT m)
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip m => Data.ChunkedZip.Zip (Control.Monad.Trans.Reader.ReaderT e m)
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip3 Data.Sequence.Seq
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip3 Data.Vector.Vector
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip3 []
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip4 Data.Sequence.Seq
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip4 Data.Vector.Vector
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip4 []
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip5 Data.Vector.Vector
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip5 []
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip6 Data.Vector.Vector
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip6 []
+ Data.ChunkedZip: instance Data.ChunkedZip.Zip7 []
+ Data.IOData: instance Data.IOData.IOData Data.ByteString.Internal.ByteString
+ Data.IOData: instance Data.IOData.IOData Data.ByteString.Lazy.Internal.ByteString
+ Data.IOData: instance Data.IOData.IOData Data.Text.Internal.Lazy.Text
+ Data.IOData: instance Data.IOData.IOData Data.Text.Internal.Text
+ Data.IOData: instance GHC.Types.Char ~ c => Data.IOData.IOData [c]
- Data.IOData: class IsSequence a => IOData a
+ Data.IOData: class IOData a

Files

ChangeLog.md view
@@ -1,3 +1,9 @@+## 0.3.0++* Move `Data.Sequences.Lazy` to `mono-traversable` 1.0.0+* Move `Data.Textual.Encoding` to `mono-traversable` 1.0.0+* Switch from blaze-builder to bytestring 0.10.2 or later+ ## 0.2.0  * Move away from system-filepath
Data/Builder.hs view
@@ -22,15 +22,21 @@  import qualified Data.ByteString as S import qualified Data.ByteString.Lazy as L-import qualified Blaze.ByteString.Builder as BB-import qualified Blaze.ByteString.Builder.Char.Utf8 as BB+import qualified Data.ByteString.Builder as BB+import qualified Data.ByteString.Builder.Extra as BB (flush) +import qualified Data.Text.Encoding as TE+import qualified Data.Text.Lazy.Encoding as TLE+ -- | Since 0.1.0.0 type TextBuilder = TB.Builder  -- | Since 0.1.0.0 type BlazeBuilder = BB.Builder +-- | Since 0.3.0.0+type ByteStringBuilder = BB.Builder+ -- | Since 0.1.0.0 class Monoid builder => Builder builder lazy | builder -> lazy, lazy -> builder where     -- | Since 0.1.0.0@@ -68,18 +74,18 @@ instance ToBuilder BB.Builder BB.Builder where     toBuilder = id instance ToBuilder T.Text BB.Builder where-    toBuilder = BB.fromText+    toBuilder = TE.encodeUtf8Builder instance ToBuilder TL.Text BB.Builder where-    toBuilder = BB.fromLazyText+    toBuilder = TLE.encodeUtf8Builder instance ToBuilder Char BB.Builder where-    toBuilder = BB.fromChar+    toBuilder = toBuilder . T.singleton instance (a ~ Char) => ToBuilder [a] BB.Builder where-    toBuilder = BB.fromString+    toBuilder = toBuilder . TL.pack  instance ToBuilder S.ByteString BB.Builder where-    toBuilder = BB.fromByteString+    toBuilder = BB.byteString instance ToBuilder L.ByteString BB.Builder where-    toBuilder = BB.fromLazyByteString+    toBuilder = BB.lazyByteString  -- | Provided for type disambiguation in the presence of OverloadedStrings. --
Data/IOData.hs view
@@ -8,8 +8,6 @@ import qualified Data.ByteString.Char8         as ByteString8 import qualified Data.ByteString.Lazy          as LByteString import           Data.ByteString.Lazy.Internal (defaultChunkSize)-import           Data.Sequences                (IsSequence)-import           Data.Sequences.Lazy           (fromStrict) import qualified Data.Text                     as Text import qualified Data.Text.IO                  as Text import qualified Data.Text.Lazy                as LText@@ -28,7 +26,7 @@ -- -- Note that, for lazy sequences, these operations may perform -- lazy I\/O.-class IsSequence a => IOData a where+class IOData a where     readFile     :: MonadIO m => FilePath -> m a     writeFile    :: MonadIO m => FilePath -> a -> m ()     getLine      :: MonadIO m => m a@@ -49,14 +47,14 @@ instance IOData LByteString.ByteString where     readFile = liftIO . LByteString.readFile     writeFile fp = liftIO . LByteString.writeFile fp-    getLine = liftM fromStrict (liftIO ByteString.getLine)+    getLine = liftM LByteString.fromStrict (liftIO ByteString.getLine)     hGetContents = liftIO . LByteString.hGetContents-    hGetLine = liftM fromStrict . liftIO . ByteString.hGetLine+    hGetLine = liftM LByteString.fromStrict . liftIO . ByteString.hGetLine     hPut h = liftIO . LByteString.hPut h     hPutStrLn h lbs = liftIO $ do         LByteString.hPutStr h lbs         ByteString8.hPutStrLn h ByteString.empty-    hGetChunk = liftM fromStrict . hGetChunk+    hGetChunk = liftM LByteString.fromStrict . hGetChunk instance IOData Text.Text where     readFile = liftIO . Text.readFile     writeFile fp = liftIO . Text.writeFile fp@@ -85,7 +83,7 @@     hGetLine = liftIO . LText.hGetLine     hPut h = liftIO . LText.hPutStr h     hPutStrLn h = liftIO . LText.hPutStrLn h-    hGetChunk = liftM fromStrict . hGetChunk+    hGetChunk = liftM LText.fromStrict . hGetChunk instance (Char ~ c) => IOData [c] where     readFile = liftIO . Prelude.readFile     writeFile fp = liftIO . Prelude.writeFile fp
− Data/Sequences/Lazy.hs
@@ -1,28 +0,0 @@-{-# LANGUAGE FunctionalDependencies #-}-{-# LANGUAGE MultiParamTypeClasses  #-}-module Data.Sequences.Lazy where--import qualified Data.ByteString      as S-import qualified Data.ByteString.Lazy as L-import           Data.Sequences-import qualified Data.Text            as T-import qualified Data.Text.Lazy       as TL---- | Lazy sequences containing strict chunks of data.-class (IsSequence lazy, IsSequence strict) => LazySequence lazy strict | lazy -> strict, strict -> lazy where-    toChunks :: lazy -> [strict]-    fromChunks :: [strict] -> lazy-    toStrict :: lazy -> strict-    fromStrict :: strict -> lazy--instance LazySequence L.ByteString S.ByteString where-    toChunks = L.toChunks-    fromChunks = L.fromChunks-    toStrict = S.concat . L.toChunks-    fromStrict = L.fromChunks . return--instance LazySequence TL.Text T.Text where-    toChunks = TL.toChunks-    fromChunks = TL.fromChunks-    toStrict = TL.toStrict-    fromStrict = TL.fromStrict
− Data/Textual/Encoding.hs
@@ -1,31 +0,0 @@-{-# LANGUAGE FunctionalDependencies #-}-{-# LANGUAGE MultiParamTypeClasses  #-}-{-# LANGUAGE TypeFamilies           #-}-{-# LANGUAGE UndecidableInstances   #-}-module Data.Textual.Encoding where--import qualified Data.ByteString          as S-import qualified Data.ByteString.Lazy     as L-import           Data.Sequences-import qualified Data.Text                as T-import qualified Data.Text.Encoding       as T-import           Data.Text.Encoding.Error (lenientDecode)-import qualified Data.Text.Lazy           as TL-import qualified Data.Text.Lazy.Encoding  as TL-import           Data.Word                (Word8)---- | Textual data which can be encoded to and decoded from UTF8.-class (Textual textual, IsSequence binary) => Utf8 textual binary | textual -> binary, binary -> textual where-    encodeUtf8 :: textual -> binary-    -- | Note that this function is required to be pure. In the case of-    -- a decoding error, Unicode replacement characters must be used.-    decodeUtf8 :: binary -> textual-instance (c ~ Char, w ~ Word8) => Utf8 [c] [w] where-    encodeUtf8 = L.unpack . TL.encodeUtf8 . TL.pack-    decodeUtf8 = TL.unpack . TL.decodeUtf8With lenientDecode . L.pack-instance Utf8 T.Text S.ByteString where-    encodeUtf8 = T.encodeUtf8-    decodeUtf8 = T.decodeUtf8With lenientDecode-instance Utf8 TL.Text L.ByteString where-    encodeUtf8 = TL.encodeUtf8-    decodeUtf8 = TL.decodeUtf8With lenientDecode
chunked-data.cabal view
@@ -1,8 +1,8 @@ name:                chunked-data-version:             0.2.0+version:             0.3.0 synopsis:            Typeclasses for dealing with various chunked data representations description:         Originally present in classy-prelude.-homepage:            https://github.com/fpco/chunked-data+homepage:            https://github.com/snoyberg/mono-traversable license:             MIT license-file:        LICENSE author:              Michael Snoyman@@ -14,20 +14,16 @@  library   exposed-modules:     Data.IOData-                       Data.Textual.Encoding-                       Data.Sequences.Lazy                        Data.Builder                        Data.ChunkedZip   build-depends:       base >= 4 && < 5                      , transformers-                     , bytestring-                     , mono-traversable >=0.2-                     , text >= 0.11-                     , blaze-builder+                     , bytestring >= 0.10.2+                     , text >= 1.2                      , containers                      , vector                      , semigroups  source-repository head   type:     git-  location: git://github.com/fpco/chunked-data.git+  location: https://github.com/snoyberg/mono-traversable.git