yaml 0.8.25 → 0.8.25.1
raw patch · 3 files changed
+28/−21 lines, 3 filesdep −aeson-qq
Dependencies removed: aeson-qq
Files
- ChangeLog.md +4/−0
- test/Data/Yaml/IncludeSpec.hs +22/−18
- yaml.cabal +2/−3
ChangeLog.md view
@@ -1,3 +1,7 @@+## 0.8.25.1++* Drop aeson-qq dep (incompatible with Stackage Nightly)+ ## 0.8.25 * Tweaks to the executable `yaml2json` [#119](https://github.com/snoyberg/yaml/pull/119):
test/Data/Yaml/IncludeSpec.hs view
@@ -1,10 +1,9 @@-{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE OverloadedStrings #-} module Data.Yaml.IncludeSpec (main, spec) where import Test.Hspec import Data.List (isPrefixOf) import Data.Aeson-import Data.Aeson.QQ import Data.Yaml (ParseException(InvalidYaml)) import Data.Yaml.Include import Text.Libyaml (YamlException(YamlException))@@ -12,28 +11,33 @@ main :: IO () main = hspec spec +asInt :: Int -> Int+asInt = id+ spec :: Spec spec = do describe "decodeFile" $ do it "supports includes" $ do- decodeFile "test/resources/foo.yaml" `shouldReturn` Just [aesonQQ|- {- foo: 23,- bar: {one: 1, two: 2},- baz: 42- }- |]+ decodeFile "test/resources/foo.yaml" `shouldReturn` Just (object+ [ "foo" .= asInt 23+ , "bar" .= object+ [ "one" .= asInt 1+ , "two" .= asInt 2+ ]+ , "baz" .= asInt 42+ ]) it "supports recursive includes" $ do- decodeFile "test/resources/baz.yaml" `shouldReturn` Just [aesonQQ|- {- foo: {- foo: 23,- bar: {one: 1, two: 2},- baz: 42- }- }- |]+ decodeFile "test/resources/baz.yaml" `shouldReturn` Just (object+ [ "foo" .= object+ [ "foo" .= asInt 23+ , "bar" .= object+ [ "one" .= asInt 1+ , "two" .= asInt 2+ ]+ , "baz" .= asInt 42+ ]+ ]) it "aborts on cyclic includes" $ do (decodeFile "test/resources/loop/foo.yaml" :: IO (Maybe Value)) `shouldThrow` anyException
yaml.cabal view
@@ -1,11 +1,11 @@ name: yaml-version: 0.8.25+version: 0.8.25.1 license: BSD3 license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>, Anton Ageev <antage@gmail.com>,Kirill Simonov maintainer: Michael Snoyman <michael@snoyman.com> synopsis: Support for parsing and rendering YAML documents.-description: Please see the README.md file.+description: README and API documentation are available at <https://www.stackage.org/package/yaml> category: Web stability: stable cabal-version: >= 1.8@@ -140,7 +140,6 @@ , directory , vector , resourcet- , aeson-qq , mockery , base-compat , temporary