packages feed

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 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