packages feed

htoml-megaparsec 2.1.0.4 → 2.1.0.5

raw patch · 4 files changed

+22/−19 lines, 4 filesdep +hspecdep ~aesondep ~tasty-hspecdep ~textPVP ok

version bump matches the API change (PVP)

Dependencies added: hspec

Dependency ranges changed: aeson, tasty-hspec, text, time

API changes (from Hackage documentation)

Files

CHANGES.md view
@@ -1,6 +1,10 @@ Change log ========== +### 2.1.0.5++* Remove deprecated time functions+ ### 1.0.0.3  * Switched to megaparsec, resulting in double the speed of the old parser.
htoml-megaparsec.cabal view
@@ -1,6 +1,6 @@ cabal-version:      2.0 name:               htoml-megaparsec-version:            2.1.0.4+version:            2.1.0.5 license:            BSD3 license-file:       LICENSE copyright:          (c) 2013-2016 Cies Breijs, 2017-2018 Vanessa McHale@@ -45,7 +45,7 @@         base >=4.8 && <5,         megaparsec >=6.0.0,         htoml-internal,-        text >=1.0 && <2,+        text >=1.0 && <2.2,         mtl >=2.2,         composition-prelude >=0.1.1.0 @@ -71,10 +71,10 @@         megaparsec >=6.0.0,         unordered-containers >=0.2,         vector >=0.10,-        text >=1.0 && <2,+        text >=1.0 && <2.2,         mtl >=2.2,         deepseq,-        time >=1.5.0+        time >=1.9      if !impl(ghc >=7.10)         build-depends: void@@ -99,7 +99,7 @@         containers,         unordered-containers,         vector,-        aeson,+        aeson <2.0.0.0,         text,         time,         htoml-megaparsec,@@ -107,7 +107,8 @@         bytestring,         file-embed,         tasty,-        tasty-hspec,+        tasty-hspec >=1.2,+        hspec,         tasty-hunit  benchmark benchmarks
internal/Text/Toml/Parser.hs view
@@ -9,18 +9,17 @@   ) where  import           Control.Monad-import           Control.Monad.State    (evalState)+import           Control.Monad.State      (evalState) import           Data.Functor-import qualified Data.HashMap.Lazy      as M-import qualified Data.Set               as S-import           Data.Text              (Text, pack, unpack)-import qualified Data.Text              as T-import           Data.Time.Format       (defaultTimeLocale, iso8601DateFormat,-                                         parseTimeM)-import qualified Data.Vector            as V+import qualified Data.HashMap.Lazy        as M+import qualified Data.Set                 as S+import           Data.Text                (Text, pack, unpack)+import qualified Data.Text                as T+import           Data.Time.Format.ISO8601 (formatParseM, iso8601Format)+import qualified Data.Vector              as V import           Data.Void-import           Numeric                (readHex)-import           Text.Megaparsec        hiding (noneOf, oneOf)+import           Numeric                  (readHex)+import           Text.Megaparsec          hiding (noneOf, oneOf) import           Text.Megaparsec.CharRW import           Text.Toml.Types @@ -183,9 +182,7 @@ datetime :: (TomlM m) => Parser m Node datetime = do     d <- manyTill anySingle (char 'Z')-    let  mt = parseTimeM True defaultTimeLocale (iso8601DateFormat $ Just "%X") d-    case mt of Just t  -> return $ VDatetime t-               Nothing -> throwParser "parsing datetime failed"+    VDatetime <$> formatParseM iso8601Format (d++"Z")  -- | Attoparsec 'double' parses scientific "e" notation; reimplement according to Toml spec. float :: (TomlM m) => Parser m Node
test/Text/Toml/Parser/Spec.hs view
@@ -6,6 +6,7 @@ import           Data.Time.Calendar  (Day (..)) import           Data.Time.Clock     (UTCTime (..)) import qualified Data.Vector         as V+import           Test.Hspec import           Test.Tasty          (TestTree) import           Test.Tasty.Hspec import           Text.Toml.Parser