packages feed

siphon 0.8.1 → 0.8.1.1

raw patch · 2 files changed

+22/−6 lines, 2 filesdep +semigroupsdep ~basedep ~transformersPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: semigroups

Dependency ranges changed: base, transformers

API changes (from Hackage documentation)

- Siphon: instance Data.Semigroup.Semigroup Siphon.HeaderErrors
- Siphon.Types: instance GHC.Exception.Exception Siphon.Types.SiphonError
+ Siphon: instance GHC.Base.Semigroup Siphon.HeaderErrors
+ Siphon.Types: instance GHC.Exception.Type.Exception Siphon.Types.SiphonError
- Siphon.Types: RowErrorDecode :: !(Vector CellError) -> RowError
+ Siphon.Types: RowErrorDecode :: !Vector CellError -> RowError
- Siphon.Types: RowErrorHeaders :: !(Vector (Vector CellError)) -> !(Vector Text) -> !(Vector Int) -> RowError
+ Siphon.Types: RowErrorHeaders :: !Vector (Vector CellError) -> !Vector Text -> !Vector Int -> RowError
- Siphon.Types: [SiphonAp] :: !(f c) -> !(c -> Maybe a) -> !(Siphon f c (a -> b)) -> Siphon f c b
+ Siphon.Types: [SiphonAp] :: !f c -> !c -> Maybe a -> !Siphon f c (a -> b) -> Siphon f c b

Files

siphon.cabal view
@@ -1,5 +1,5 @@ name: siphon-version: 0.8.1+version: 0.8.1.1 synopsis: Encode and decode CSV files description: Please see README.md homepage: https://github.com/andrewthad/colonnade#readme@@ -13,12 +13,12 @@ cabal-version: >=1.10  library-  hs-source-dirs:      src+  hs-source-dirs: src   exposed-modules:     Siphon     Siphon.Types   build-depends:-      base >= 4.9 && < 5+      base >= 4.8 && < 5     , colonnade >= 1.2 && < 1.3     , text >= 1.0 && < 1.3     , bytestring@@ -26,7 +26,8 @@     , streaming >= 0.1.4 && < 0.3     , attoparsec     , transformers >= 0.5 && < 0.6-  default-language:    Haskell2010+    , semigroups >= 0.18.2 && < 0.20+  default-language: Haskell2010  test-suite doctest   type: exitcode-stdio-1.0@@ -36,9 +37,9 @@       base     , siphon     , doctest >= 0.10-  default-language:    Haskell2010+  default-language: Haskell2010 -test-suite siphon-test+test-suite test   type: exitcode-stdio-1.0   hs-source-dirs: test   main-is: Test.hs
test/Test.hs view
@@ -79,6 +79,15 @@                 ]               )             ) @?= ([(244,intToWord8 (ord 'z'),True)] :> Nothing)+    , testCase "Headed Decoding (geolite)"+        $ ( runIdentity . SMP.toList )+            ( S.decodeCsvUtf8 decodingGeolite+              ( SMP.yield $ BC8.pack $ concat+                [ "network,autonomous_system_number,autonomous_system_organization\n"+                , "1,z,y\n"+                ]+              )+            ) @?= ([(1,intToWord8 (ord 'z'),intToWord8 (ord 'y'))] :> Nothing)     , testCase "Headed Decoding (escaped characters, one big chunk)"         $ ( runIdentity . SMP.toList )             ( S.decodeCsvUtf8 decodingF@@ -148,6 +157,12 @@  decodingF :: Siphon Headed ByteString ByteString decodingF = S.headed "name" Just++decodingGeolite :: Siphon Headed ByteString (Int,Word8,Word8)+decodingGeolite = (,,)+  <$> S.headed "network" dbInt+  <*> S.headed "autonomous_system_number" dbWord8+  <*> S.headed "autonomous_system_organization" dbWord8   encodingA :: Colonnade Headless (Int,Char,Bool) ByteString