packages feed

csv-conduit 0.6.8.1 → 0.7.0.0

raw patch · 5 files changed

+14/−10 lines, 5 filesdep +semigroupsPVP ok

version bump matches the API change (PVP)

Dependencies added: semigroups

API changes (from Hackage documentation)

- Data.CSV.Conduit.Conversion: instance GHC.Base.Monoid (Data.CSV.Conduit.Conversion.Parser a)
+ Data.CSV.Conduit.Conversion: instance Data.Semigroup.Semigroup (Data.CSV.Conduit.Conversion.Parser a)

Files

changelog.md view
@@ -1,3 +1,7 @@+0.7.0.0+* BREAKING: Switch from partial Monoid instance on Parser to total Semigroup instance.+* Compatibility with GHC 8.4.x/base-4.11.1.0+ 0.6.8.1 * Fix documentation mistake in FromNamedRecord/ToNamedRecord examples. 
csv-conduit.cabal view
@@ -1,5 +1,5 @@ Name:                csv-conduit-Version:             0.6.8.1+Version:             0.7.0.0 Synopsis:            A flexible, fast, conduit-based CSV parser library for Haskell. Homepage:            http://github.com/ozataman/csv-conduit License:             BSD3@@ -98,6 +98,7 @@     , mmorph     , primitive     , resourcet              >= 1.1.2.1+    , semigroups    if impl(ghc >= 7.2.1)     cpp-options: -DGENERICS
src/Data/CSV/Conduit/Conversion.hs view
@@ -64,7 +64,7 @@  import Data.Int (Int8, Int16, Int32, Int64) import qualified Data.Map as M-import Data.Monoid as Monoid+import Data.Semigroup as Semigroup import qualified Data.Text as T import qualified Data.Text.Encoding as T import qualified Data.Text.Lazy as LT@@ -778,11 +778,9 @@                                    in unParser a kf' ks     {-# INLINE mplus #-} -instance Monoid.Monoid (Parser a) where-    mempty  = fail "mempty"-    {-# INLINE mempty #-}-    mappend = mplus-    {-# INLINE mappend #-}+instance Semigroup.Semigroup (Parser a) where+    (<>) = mplus+    {-# INLINE (<>) #-}  apP :: Parser (a -> b) -> Parser a -> Parser b apP d e = do
src/Data/CSV/Conduit/Monoid.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE CPP #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}  module Data.CSV.Conduit.Monoid     ( (<>)
test/Test.hs view
@@ -7,7 +7,7 @@ import           Control.Exception import qualified Data.ByteString.Char8          as B import           Data.Map                       ((!))-import           Data.Monoid+import           Data.Monoid                    as M import           Data.Text import qualified Data.Vector                    as V import           System.Directory@@ -48,7 +48,7 @@       let efoos = decodeCSV defCSVSettings ("Foo\nbad" :: B.ByteString)       case efoos :: Either SomeException (V.Vector (Named Foo)) of         Left e     -> assertFailure (show e)-        Right foos -> mempty @=? foos+        Right foos -> M.mempty @=? foos   ]  @@ -60,7 +60,7 @@     s <- nr .: "Foo"     case s of       "foo" -> pure Foo-      _ -> fail ("Expected \"foo\" but got " <> B.unpack s)+      _     -> fail ("Expected \"foo\" but got " <> B.unpack s)   instance ToNamedRecord Foo where