pipes-key-value-csv 0.0.0.0 → 0.1.0.0
raw patch · 5 files changed
+6/−14 lines, 5 filesdep ~basedep ~lensdep ~vinylPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: base, lens, vinyl, vinyl-utils
API changes (from Hackage documentation)
- Pipes.KeyValueCsv.IO: streamIn :: (Given Delimiter, MonadIO m, MonadMask m, Record hs) => Codec -> FilePath -> Options (SafeT m) f g hs rs -> SafeT m (Rec (WithKeyValueError :. f) hs, Producer (Rec (WithCsvError :. g) rs) (SafeT m) (Producer ByteString (SafeT m) ()))
+ Pipes.KeyValueCsv.IO: streamIn :: (MonadIO m, MonadMask m, Record hs) => Codec -> FilePath -> Options (SafeT m) f g hs rs -> SafeT m (Rec (WithKeyValueError :. f) hs, Producer (Rec (WithCsvError :. g) rs) (SafeT m) (Producer ByteString (SafeT m) ()))
- Pipes.KeyValueCsv.Types: csvOptions :: Lens (Options m_alP6 f_alP7 g_alP8 hs_alP9 rs_alPa) (Options m_alP6 f_alP7 g_alQk hs_alP9 rs_alQl) (CsvOptions m_alP6 g_alP8 rs_alPa) (CsvOptions m_alP6 g_alQk rs_alQl)
+ Pipes.KeyValueCsv.Types: csvOptions :: Lens (Options m_am3T f_am3U g_am3V hs_am3W rs_am3X) (Options m_am3T f_am3U g_am57 hs_am3W rs_am58) (CsvOptions m_am3T g_am3V rs_am3X) (CsvOptions m_am3T g_am57 rs_am58)
- Pipes.KeyValueCsv.Types: delimiter :: Lens' (Options m_alP6 f_alP7 g_alP8 hs_alP9 rs_alPa) Char
+ Pipes.KeyValueCsv.Types: delimiter :: Lens' (Options m_am3T f_am3U g_am3V hs_am3W rs_am3X) Char
- Pipes.KeyValueCsv.Types: kvOptions :: Lens (Options m_alP6 f_alP7 g_alP8 hs_alP9 rs_alPa) (Options m_alP6 f_alQm g_alP8 hs_alQn rs_alPa) (KeyValueOptions m_alP6 f_alP7 hs_alP9) (KeyValueOptions m_alP6 f_alQm hs_alQn)
+ Pipes.KeyValueCsv.Types: kvOptions :: Lens (Options m_am3T f_am3U g_am3V hs_am3W rs_am3X) (Options m_am3T f_am59 g_am3V hs_am5a rs_am3X) (KeyValueOptions m_am3T f_am3U hs_am3W) (KeyValueOptions m_am3T f_am59 hs_am5a)
- Pipes.KeyValueCsv.Types: predicate :: Lens' (Options m_alP6 f_alP7 g_alP8 hs_alP9 rs_alPa) (Text -> Bool)
+ Pipes.KeyValueCsv.Types: predicate :: Lens' (Options m_am3T f_am3U g_am3V hs_am3W rs_am3X) (Text -> Bool)
- Pipes.KeyValueCsv.Types.KeyValue: keyNames :: Lens' (KeyValueOptions m_ak0s f_ak0t rs_ak0u) (Rec (Const Text :: k_ak0r -> *) rs_ak0u)
+ Pipes.KeyValueCsv.Types.KeyValue: keyNames :: Lens' (KeyValueOptions m_akjK f_akjL rs_akjM) (Rec (Const Text :: k_akjJ -> *) rs_akjM)
- Pipes.KeyValueCsv.Types.KeyValue: kvParser :: Lens (KeyValueOptions m_ak0s f_ak0t rs_ak0u) (KeyValueOptions m_akdv f_akdw rs_ak0u) (Rec (CellParser m_ak0s f_ak0t :: k_ak0r -> *) rs_ak0u) (Rec (CellParser m_akdv f_akdw :: k_ak0r -> *) rs_ak0u)
+ Pipes.KeyValueCsv.Types.KeyValue: kvParser :: Lens (KeyValueOptions m_akjK f_akjL rs_akjM) (KeyValueOptions m_akwN f_akwO rs_akjM) (Rec (CellParser m_akjK f_akjL :: k_akjJ -> *) rs_akjM) (Rec (CellParser m_akwN f_akwO :: k_akjJ -> *) rs_akjM)
Files
- pipes-key-value-csv.cabal +5/−5
- src/Pipes/KeyValueCsv/IO.hs +1/−3
- src/Pipes/KeyValueCsv/Internal/KeyValue.hs +0/−2
- src/Pipes/KeyValueCsv/KeyValue.hs +0/−2
- test/Test/Instances.hs +0/−2
pipes-key-value-csv.cabal view
@@ -1,5 +1,5 @@ name: pipes-key-value-csv -version: 0.0.0.0 +version: 0.1.0.0 synopsis: Streaming processing of CSV files preceded by key-value pairs. description: Nonstandard CSV files, with the table preceded by a header consisting of key-value pairs are often the output format of varius test equipment, such as digital oscilloscopes. homepage: https://github.com/marcinmrotek/key-value-csv @@ -35,10 +35,10 @@ , Pipes.KeyValueCsv.Internal.KeyValue , Pipes.KeyValueCsv.Internal.Names , Pipes.KeyValueCsv.Internal.Types - build-depends: base >= 4.8 && < 4.9 + build-depends: base >= 4.8 && < 5 , containers >= 0.5.6 && < 0.6 , data-default-class >= 0.0.1 && < 0.2 - , lens >= 4.12 && < 4.14 + , lens >= 4.12 && < 4.15 , mtl >= 2.2 && < 2.3 , pipes >= 4.1 && < 4.2 , pipes-bytestring >= 2.1 && < 2.2 @@ -49,8 +49,8 @@ , reflection >= 1.5 && < 2.2 , text >= 1.2 && < 1.3 , validation >= 0.5.2 && < 0.6 - , vinyl >= 0.5 && < 0.6 - , vinyl-utils >= 0.2.0.1 && < 0.3 + , vinyl >= 0.5.2 && < 0.6 + , vinyl-utils >= 0.2.0.1 && < 0.4 hs-source-dirs: src default-language: Haskell2010 ghc-options: -Wall
src/Pipes/KeyValueCsv/IO.hs view
@@ -27,7 +27,6 @@ import Pipes.KeyValueCsv -import Data.Reflection import Data.Vinyl import Data.Vinyl.Functor import Pipes @@ -53,8 +52,7 @@ streamIn :: forall (m :: * -> *) (f :: k -> *) (g :: j -> *) (hs :: [k]) (rs :: [j]) - . ( Given Delimiter - , MonadIO m + . ( MonadIO m , MonadMask m , Record hs )
src/Pipes/KeyValueCsv/Internal/KeyValue.hs view
@@ -104,7 +104,6 @@ fromKeyValues (_,p) RNil RNil RNil = do x <- runEffect $ p >-> Pipes.drain pure (RNil, x) -fromKeyValues _ RNil _ _ = error "impossible due to GADT constraints on Rec" fromKeyValues pair@(key,value) (Compose (WrapParser parser) :& ps) (Const expected :& ks) (r :& rs) = do if key == expected then do @@ -118,5 +117,4 @@ else do (remaining, result) <- fromKeyValues pair ps ks rs pure (r :& remaining, result) -fromKeyValues _ (_ :& _) _ _ = error "impossible due to GADT constraints on Rec"
src/Pipes/KeyValueCsv/KeyValue.hs view
@@ -68,8 +68,6 @@ joinRecs :: Rec (WithKeyValueError :. f) rs -> Rec (WithKeyValueError :. f) rs -> Rec (WithKeyValueError :. f) rs -- ^Join two 'Rec's, replacing missing values with successes and accumulating failures. joinRecs RNil RNil = RNil -joinRecs RNil _ = error "impossible" -joinRecs _ RNil= error "impossible" joinRecs (Compose va :& as) (Compose vb :& bs) = Compose new :& joinRecs as bs where new = case (va, vb) of
test/Test/Instances.hs view
@@ -22,8 +22,6 @@ arbitrary = (:&) <$> arbitrary <*> arbitrary shrink = shrinkNothing -deriving instance Eq a => Eq (Identity a) - instance Arbitrary a => Arbitrary (Identity a) where arbitrary = Identity <$> arbitrary shrink (Identity a) = Identity <$> shrink a