packages feed

rere 0.2 → 0.2.0.1

raw patch · 2 files changed

+25/−59 lines, 2 filesdep −attoparsecdep ~aesondep ~basedep ~containersPVP ok

version bump matches the API change (PVP)

Dependencies removed: attoparsec

Dependency ranges changed: aeson, base, containers, quickcheck-instances, tasty, tasty-quickcheck

API changes (from Hackage documentation)

Files

bench/JSON.hs view
@@ -7,19 +7,13 @@ import Prelude hiding (exponent)  import Criterion.Main (bench, defaultMain, whnf)-import Data.Either    (isRight)+import Data.Maybe     (isJust) import System.Clock   (Clock (Monotonic), diffTimeSpec, getTime) -import qualified Data.Aeson.Parser          as A-import qualified Data.Attoparsec.ByteString as Atto-import qualified Data.ByteString            as BS-import qualified Data.Set                   as Set-import qualified Text.Derp                  as D--#ifdef MIN_VERSION_saison-import qualified Saison.Decoding.Parser as S-import qualified Saison.Decoding.Tokens as S-#endif+import qualified Data.Aeson      as A+import qualified Data.ByteString as BS+import qualified Data.Set        as Set+import qualified Text.Derp       as D  import RERE import RERE.Examples.JSON@@ -34,32 +28,7 @@ derp p s = not $ Set.null $ D.runParse p [ D.Token c [c] | c <- s]  aeson :: BS.ByteString -> Bool-aeson bs = isRight (Atto.parseOnly (A.json <* Atto.endOfInput) bs)--#ifdef MIN_VERSION_saison-saison :: BS.ByteString -> Bool-saison = go end . S.tokens where-    end :: BS.ByteString -> Bool-    end = BS.null . S.skipSpace--    go :: (k -> Bool) -> S.Tokens k e -> Bool-    go kont (S.TkLit _ k)        = kont k-    go kont (S.TkText _ k)       = kont k-    go kont (S.TkNumber _ k)     = kont k-    go kont (S.TkArrayOpen arr)  = goArr kont arr-    go kont (S.TkRecordOpen obj) = goObj kont obj-    go _    (S.TkErr _)          = False--    goArr :: (k -> Bool) -> S.TkArray k e -> Bool-    goArr kont (S.TkItem k)     = go (goArr kont) k-    goArr kont (S.TkArrayEnd k) = kont k-    goArr _    (S.TkArrayErr _) = False--    goObj :: (k -> Bool) -> S.TkRecord k e -> Bool-    goObj kont (S.TkPair _ k)    = go (goObj kont) k-    goObj kont (S.TkRecordEnd k) = kont k-    goObj _    (S.TkRecordErr _) = False-#endif+aeson bs = isJust (A.decodeStrict bs :: Maybe A.Value)  main :: IO () main = do@@ -90,10 +59,7 @@     putStrLn "Criterion"     defaultMain         [ bench "aeson"  $ whnf aeson bs-#ifdef MIN_VERSION_saison-        , bench "saison" $ whnf saison bs-#endif-        -- , bench "rere"  $ whnf (matchR jsonRE) contents+        , bench "rere"  $ whnf (matchST jsonRE) contents         ]  -------------------------------------------------------------------------------
rere.cabal view
@@ -1,6 +1,6 @@ cabal-version:      2.2 name:               rere-version:            0.2+version:            0.2.0.1 synopsis:   Regular-expressions extended with fixpoints for context-free powers @@ -30,8 +30,12 @@    || ==8.4.4    || ==8.6.5    || ==8.8.4-   || ==8.10.4-   || ==9.0.1+   || ==8.10.7+   || ==9.0.2+   || ==9.2.8+   || ==9.4.7+   || ==9.6.3+   || ==9.8.1  source-repository head   type:     git@@ -57,10 +61,10 @@    -- GHC boot libraries   build-depends:-    , base          >=4.3.0.0  && <4.16+    , base          >=4.3.0.0  && <4.20     , containers    ^>=0.4.0.0 || ^>=0.5.0.0 || ^>=0.6.0.1     , parsec        ^>=3.1.12.0-    , transformers  ^>=0.3.0.0 || ^>=0.4.2.0 || ^>=0.5.2.0+    , transformers  ^>=0.3.0.0 || ^>=0.4.2.0 || ^>=0.5.2.0 || ^>=0.6.1.0    -- other dependencies   build-depends:     QuickCheck ^>=2.14.2@@ -70,7 +74,7 @@     build-depends: void ^>=0.7.3    if !impl(ghc >=8.0)-    build-depends: semigroups >=0.18.5 && <0.20+    build-depends: semigroups >=0.18.5 && <0.21    -- expose examples first, so `cabal repl` loads them.   exposed-modules:   RERE.Examples@@ -94,8 +98,8 @@    if (flag(rere-cfg) && impl(ghc >=7.8))     build-depends:-      , fin  ^>=0.2-      , vec  ^>=0.4+      , fin  ^>=0.2 || ^>=0.3+      , vec  ^>=0.4 || ^>=0.5      exposed-modules: RERE.CFG @@ -117,7 +121,7 @@   build-depends:     , base     , containers-    , criterion   ^>=1.5.5.0+    , criterion   ^>=1.5.5.0 || ^>=1.6.0.0     , derp     , parsec     , rere@@ -142,24 +146,20 @@   other-modules:    DerpConv   ghc-options:      -Wall -rtsopts   build-depends:-    , aeson       ^>=1.4.6.0 || ^>=1.5.0.0-    , attoparsec+    , aeson       ^>=1.4.6.0 || ^>=1.5.0.0 || ^>=2.0.0.0 || ^>=2.1.0.0 || ^>=2.2.1.0     , base     , bytestring     , clock       ^>=0.8     , containers-    , criterion   ^>=1.5.5.0+    , criterion   ^>=1.5.5.0 || ^>=1.6.0.0     , derp     , fin     , parsec     , rere     , vec -  -- extras-  -- build-depends: saison-   if !impl(ghc >=8.0)-    build-depends: semigroups >=0.18.4 && <0.20+    build-depends: semigroups >=0.18.4 && <0.21    if !impl(ghc >=7.10)     build-depends: void ^>=0.7.2@@ -179,9 +179,9 @@     , base     , containers     , QuickCheck-    , quickcheck-instances  ^>=0.3.22+    , quickcheck-instances  ^>=0.3.30     , rere-    , tasty                 ^>=1.4.0.1+    , tasty                 ^>=1.4.0.1 || ^>=1.5     , tasty-quickcheck      ^>=0.10.1.1    if flag(rere-intersection)