packages feed

validationt 0.2.0.0 → 0.2.1.0

raw patch · 3 files changed

+36/−10 lines, 3 filesdep ~basedep ~mtl

Dependency ranges changed: base, mtl

Files

ChangeLog.md view
@@ -1,5 +1,13 @@ # Revision history for validationt -## 0.1.0.0  -- YYYY-mm-dd+## 0.2.1.0 -* First version. Released on an unsuspecting world.+* GHC 8.4 support++## 0.2.0.0++* Fixes++## 0.1.0.0++* Initial release
src/Control/Monad/Validation.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TemplateHaskell #-}@@ -47,10 +48,14 @@ instance (Ord k) => At (MonoidMap k v) where   at key = _MonoidMap . at key +#if MIN_VERSION_base(4,11,0)+instance (Ord k, Semigroup v) => Semigroup (MonoidMap k v) where+  (<>) = mmAppend+#endif+ instance (Ord k, Monoid v) => Monoid (MonoidMap k v) where   mempty = MonoidMap M.empty-  mappend (MonoidMap a) (MonoidMap b) =-    MonoidMap $ M.unionWith (<>) a b+  mappend = mmAppend  instance (ToJSON k, ToJSON v) => ToJSON (MonoidMap k v) where   toJSON (MonoidMap m) = toJSON $ L.map toObj $ M.toList m@@ -69,6 +74,13 @@         key <- obj .: "id"         val <- obj .: "value"         return (key, val)++#if MIN_VERSION_base(4,11,0)+mmAppend :: (Ord k, Semigroup v) => MonoidMap k v -> MonoidMap k v -> MonoidMap k v+#else+mmAppend :: (Ord k, Monoid v) => MonoidMap k v -> MonoidMap k v -> MonoidMap k v+#endif+mmAppend (MonoidMap a) (MonoidMap b) = MonoidMap $ M.unionWith (<>) a b  -- | Convenient for 'vZoom' as first artument. Will prevent generation -- of map with 'mempty' values
validationt.cabal view
@@ -2,10 +2,10 @@ -- documentation, see http://haskell.org/cabal/users-guide/  name:                validationt-version:             0.2.0.0-synopsis:            Straightforward validation monad. Convenient solution for validating web forms and APIs.--- description:-homepage:            typeable.io+version:             0.2.1.0+synopsis:            Straightforward validation monad.+description:         Convenient solution for validating web forms and APIs.+homepage:            https://github.com/typeable/validationt license:             BSD3 license-file:        LICENSE author:              Typeable.io contributors@@ -15,11 +15,17 @@ build-type:          Simple extra-source-files:  ChangeLog.md cabal-version:       >=1.10+tested-with:         GHC == 7.10.3+                   , GHC == 8.0.2+                   , GHC == 8.2.2+                   , GHC == 8.4.1 +source-repository head+  type:     git+  location: git@github.com:typeable/validationt.git+ library   exposed-modules:    Control.Monad.Validation-  -- other-modules:-  -- other-extensions:   build-depends:       base >=4.8 && < 5                      , aeson >= 1.0                      , containers