diff --git a/dhall-bash/README.md b/dhall-bash/README.md index 0422781a0..85d57ae88 100644 --- a/dhall-bash/README.md +++ b/dhall-bash/README.md @@ -1,4 +1,4 @@ -# `dhall-bash 1.0.16` +# `dhall-bash 1.0.17` [![Hackage](https://img.shields.io/hackage/v/dhall-bash.svg)](https://hackage.haskell.org/package/dhall-bash) diff --git a/dhall-bash/dhall-bash.cabal b/dhall-bash/dhall-bash.cabal index 4ada479b3..e7d14423e 100644 --- a/dhall-bash/dhall-bash.cabal +++ b/dhall-bash/dhall-bash.cabal @@ -31,7 +31,7 @@ Library base >= 4.8.0.0 && < 5 , bytestring < 0.11, containers < 0.7 , - dhall >= 1.18.0 && < 1.19, + dhall >= 1.18.0 && < 1.20, neat-interpolation < 0.4 , shell-escape < 0.3 , text >= 0.2 && < 1.3 diff --git a/dhall-json/CHANGELOG.md b/dhall-json/CHANGELOG.md index 12ca1e9b6..cf8ba6bff 100644 --- a/dhall-json/CHANGELOG.md +++ b/dhall-json/CHANGELOG.md @@ -1,3 +1,10 @@ +1.2.5 + +* Build against `dhall-1.19.0` + * See: https://github.com/dhall-lang/dhall-haskell/pull/667 + * See: https://github.com/dhall-lang/dhall-haskell/pull/675 + * See: https://github.com/dhall-lang/dhall-haskell/pull/689 + 1.2.4 * Build against `dhall-1.18.0` diff --git a/dhall-json/README.md b/dhall-json/README.md index 7ee38645c..327d41b05 100644 --- a/dhall-json/README.md +++ b/dhall-json/README.md @@ -1,4 +1,4 @@ -# `dhall-json 1.2.4` +# `dhall-json 1.2.5` [![Hackage](https://img.shields.io/hackage/v/dhall-json.svg)](https://hackage.haskell.org/package/dhall-json) diff --git a/dhall-json/dhall-json.cabal b/dhall-json/dhall-json.cabal index b96f1023b..f3bb1d727 100644 --- a/dhall-json/dhall-json.cabal +++ b/dhall-json/dhall-json.cabal @@ -1,5 +1,5 @@ Name: dhall-json -Version: 1.2.4 +Version: 1.2.5 Cabal-Version: >=1.8.0.2 Build-Type: Simple Tested-With: GHC == 7.10.2, GHC == 8.0.1 @@ -35,7 +35,7 @@ Library Build-Depends: base >= 4.8.0.0 && < 5 , aeson >= 1.0.0.0 && < 1.5 , - dhall >= 1.18.0 && < 1.19, + dhall >= 1.19.0 && < 1.20, optparse-applicative >= 0.14.0.0 && < 0.15, text >= 0.11.1.0 && < 1.3 , unordered-containers < 0.3 diff --git a/dhall-text/README.md b/dhall-text/README.md index 99e30ec23..ae7204885 100644 --- a/dhall-text/README.md +++ b/dhall-text/README.md @@ -1,4 +1,4 @@ -# `dhall-text 1.0.13` +# `dhall-text 1.0.14` [![Hackage](https://img.shields.io/hackage/v/dhall-text.svg)](https://hackage.haskell.org/package/dhall-text) diff --git a/dhall-text/dhall-text.cabal b/dhall-text/dhall-text.cabal index 30741c78f..09692e419 100644 --- a/dhall-text/dhall-text.cabal +++ b/dhall-text/dhall-text.cabal @@ -1,5 +1,5 @@ Name: dhall-text -Version: 1.0.13 +Version: 1.0.14 Cabal-Version: >=1.8.0.2 Build-Type: Simple Tested-With: GHC == 7.10.2, GHC == 8.0.1 @@ -25,7 +25,7 @@ Executable dhall-to-text Main-Is: Main.hs Build-Depends: base >= 4.8.0.0 && < 5 , - dhall >= 1.15.0 && < 1.19, + dhall >= 1.15.0 && < 1.20, optparse-applicative < 0.15, text >= 0.11.1.0 && < 1.3 GHC-Options: -Wall diff --git a/dhall/CHANGELOG.md b/dhall/CHANGELOG.md index dafcb2236..bc0132000 100644 --- a/dhall/CHANGELOG.md +++ b/dhall/CHANGELOG.md @@ -1,3 +1,46 @@ +1.19.0 + +* Supports version 4.0.0 of the language standard + * See: https://github.com/dhall-lang/dhall-lang/releases/tag/v4.0.0 +* BREAKING CHANGE TO THE LANGUAGE AND API: Prevent Hurkens' paradox + * This fixes a type-checking soundness bug which permitted infinite loops + * This is a breaking change because infinite loops are no longer possible + * This is also a breaking change because a record of types is now treated as + a kind instead of a type + * See: https://github.com/dhall-lang/dhall-haskell/pull/680 +* BREAKING CHANGE TO THE LANGUAGE AND API: `Double`s are now double-precision + floating point numbers + * This restricts the range of `Double`s to IEEE 754 double-precision + floating point + * This also implies that you can no longer convert `Scientific` values to + `Dhall` expressions (i.e. no `Inject` instance for `Scientific`) + * See: https://github.com/dhall-lang/dhall-haskell/pull/667 +* BREAKING CHANGE TO THE API: Preserve field order for record projection + * The API uses a new `Dhall.Set.Set` type instead of `Data.Set.Set` + * See: https://github.com/dhall-lang/dhall-haskell/pull/670 +* BREAKING CHANGE TO THE API: Add support for multi-`let` expressions + * This changes the `Let` constructor to now support storing multiple + bindings per `let` expression + * See: https://github.com/dhall-lang/dhall-haskell/pull/675 +* Support GHC 8.6 + * See: https://github.com/dhall-lang/dhall-haskell/pull/669 +* Add support for quoted path components + * i.e. `/"foo"/bar/"baz qux"` or `https://example.com/foo/"bar?baz"?qux` + * See: https://github.com/dhall-lang/dhall-haskell/pull/690 +* Fix parsing of `//\\` operator + * See: https://github.com/dhall-lang/dhall-haskell/commit/9d0fd42d95ab69fa64da4afd8b60d69aca8e65a6 +* Preserve Unicode characters when formatting code + * See: https://github.com/dhall-lang/dhall-haskell/pull/679 +* Allow identifier names to begin with `Some` + * See: https://github.com/dhall-lang/dhall-haskell/pull/658 +* Add `subExpressions` `Traversal` + * See: https://github.com/dhall-lang/dhall-haskell/pull/660 +* Add `normalizeWithM` for monadic normalization + * See: https://github.com/dhall-lang/dhall-haskell/pull/371 +* Custom normalizers now take precedence over default normalization logic + * This allows one to override the implementation of built-in operators + * See: https://github.com/dhall-lang/dhall-haskell/pull/684 + 1.18.0 * Supports version 3.0.0 of the language standard: diff --git a/dhall/Prelude/Monoid b/dhall/Prelude/Monoid index a5854e1ee..be7441338 100644 --- a/dhall/Prelude/Monoid +++ b/dhall/Prelude/Monoid @@ -1 +1 @@ -https://raw.githubusercontent.com/dhall-lang/Prelude/a22da69657b9316a3c51ba0bf80c9d4024db3fce/Monoid sha256:7c753f458fb433ef50e2fc517c0eaffbf21afd07186cefa92ea77173fe83304e +https://raw.githubusercontent.com/dhall-lang/Prelude/a22da69657b9316a3c51ba0bf80c9d4024db3fce/Monoid sha256:c4ff4f04ce9d3b7b579ff2ac7fe00258d665c701f895493b73082b750b28553d diff --git a/dhall/Prelude/package.dhall b/dhall/Prelude/package.dhall index 20f0f4a9e..ae293575b 100644 --- a/dhall/Prelude/package.dhall +++ b/dhall/Prelude/package.dhall @@ -1 +1 @@ -https://raw.githubusercontent.com/dhall-lang/Prelude/e9c90396c02f9eb0fe66c00c544615cbfa068f34/package.dhall sha256:9fbb8a6db3360fa30086ea8462dc36087f0e4f87af2a1f802a8befdc5a08f809 +https://raw.githubusercontent.com/dhall-lang/Prelude/e9c90396c02f9eb0fe66c00c544615cbfa068f34/package.dhall sha256:534e4a9e687ba74bfac71b30fc27aa269c0465087ef79bf483e876781602a454 diff --git a/dhall/README.md b/dhall/README.md index e0e994fc5..aa3d2ca32 100644 --- a/dhall/README.md +++ b/dhall/README.md @@ -1,4 +1,4 @@ -# `dhall 1.18.0` +# `dhall 1.19.0` [![Hackage](https://img.shields.io/hackage/v/dhall.svg)](https://hackage.haskell.org/package/dhall) diff --git a/dhall/dhall.cabal b/dhall/dhall.cabal index 313c55a5a..966d5555d 100644 --- a/dhall/dhall.cabal +++ b/dhall/dhall.cabal @@ -1,5 +1,5 @@ Name: dhall -Version: 1.18.0 +Version: 1.19.0 Cabal-Version: >=1.10 Build-Type: Simple Tested-With: GHC == 8.0.1 diff --git a/dhall/src/Dhall/Binary.hs b/dhall/src/Dhall/Binary.hs index 521965855..1c96f9874 100644 --- a/dhall/src/Dhall/Binary.hs +++ b/dhall/src/Dhall/Binary.hs @@ -56,11 +56,11 @@ import qualified Options.Applicative -- | Supported version strings data StandardVersion - = V_3_0_0 - -- ^ Version "3.0.0" + = V_4_0_0 + -- ^ Version "4.0.0" defaultStandardVersion :: StandardVersion -defaultStandardVersion = V_3_0_0 +defaultStandardVersion = V_4_0_0 parseStandardVersion :: Parser StandardVersion parseStandardVersion = @@ -74,7 +74,7 @@ parseStandardVersion = readVersion = do string <- Options.Applicative.str case string :: Text of - "3.0.0" -> return V_3_0_0 + "4.0.0" -> return V_4_0_0 _ -> fail "Unsupported version" {-| Convert a function applied to multiple arguments to the base function and @@ -778,7 +778,7 @@ decodeWithVersion term = do fail ("Cannot decode the version from this decoded CBOR expression: " <> show term) case version of - "3.0.0" -> do + "4.0.0" -> do return () _ -> do fail ("This decoded version is not supported: " <> Data.Text.unpack version) @@ -791,8 +791,8 @@ decodeWithVersion term = do -- | Encode a Dhall expression using the specified `Version` encodeWithVersion :: StandardVersion -> Expr s Import -> Term -encodeWithVersion V_3_0_0 expression = - TList [ TString "3.0.0", encode expression ] +encodeWithVersion V_4_0_0 expression = + TList [ TString "4.0.0", encode expression ] data DecodingFailure = CannotDecodeVersionString Term diff --git a/dhall/tests/format/sha256PrintingA.dhall b/dhall/tests/format/sha256PrintingA.dhall index eb0335885..464e76a84 100644 --- a/dhall/tests/format/sha256PrintingA.dhall +++ b/dhall/tests/format/sha256PrintingA.dhall @@ -1,2 +1,4 @@ let replicate = - https://raw.githubusercontent.com/dhall-lang/Prelude/c79c2bc3c46f129cc5b6d594ce298a381bcae92c/List/replicate sha256:b0e3ec1797b32c80c0bcb7e8254b08c7e9e35e75e6b410c7ac21477ab90167ad in replicate 5 \ No newline at end of file + https://raw.githubusercontent.com/dhall-lang/Prelude/c79c2bc3c46f129cc5b6d594ce298a381bcae92c/List/replicate sha256:cc856d59b63f7699881bdb8e4b1036ca4c0013827268040a50c1e1405f646a2c + +in replicate 5 diff --git a/dhall/tests/format/sha256PrintingB.dhall b/dhall/tests/format/sha256PrintingB.dhall index 898485433..0536bf159 100644 --- a/dhall/tests/format/sha256PrintingB.dhall +++ b/dhall/tests/format/sha256PrintingB.dhall @@ -1,4 +1,4 @@ let replicate = - https://raw.githubusercontent.com/dhall-lang/Prelude/c79c2bc3c46f129cc5b6d594ce298a381bcae92c/List/replicate sha256:b0e3ec1797b32c80c0bcb7e8254b08c7e9e35e75e6b410c7ac21477ab90167ad + https://raw.githubusercontent.com/dhall-lang/Prelude/c79c2bc3c46f129cc5b6d594ce298a381bcae92c/List/replicate sha256:cc856d59b63f7699881bdb8e4b1036ca4c0013827268040a50c1e1405f646a2c in replicate 5 \ No newline at end of file diff --git a/dhall/tests/import/success/fieldOrderA.dhall b/dhall/tests/import/success/fieldOrderA.dhall index 9e360a582..52208d3ec 100644 --- a/dhall/tests/import/success/fieldOrderA.dhall +++ b/dhall/tests/import/success/fieldOrderA.dhall @@ -1,5 +1,5 @@ { example0 = - ../data/fieldOrder/1.dhall sha256:72791c3846cef2ec49baabe6a5d38ca25301ed30b45754dfa1c6b06bab8faaf6 + ./../data/fieldOrder/1.dhall sha256:4a7866b88389e18cf481b525544fd7903325252faf3a86c8fdc981298c788a9b , example1 = - ../data/fieldOrder/2.dhall sha256:72791c3846cef2ec49baabe6a5d38ca25301ed30b45754dfa1c6b06bab8faaf6 + ./../data/fieldOrder/2.dhall sha256:4a7866b88389e18cf481b525544fd7903325252faf3a86c8fdc981298c788a9b } diff --git a/dhall/tests/import/success/issue553B.dhall b/dhall/tests/import/success/issue553B.dhall index f0b3bf7d9..fd2069608 100644 --- a/dhall/tests/import/success/issue553B.dhall +++ b/dhall/tests/import/success/issue553B.dhall @@ -1 +1 @@ -./issue553A.dhall sha256:ef4cce5b6c440b2409f9ba86e48fb788b7ccb757569a713492654f23209cb19b +./issue553A.dhall sha256:6fb582c043889dd5a4c97176f8a58d2633252b5374cb71e288b93bc3757f9643 diff --git a/dhall/tests/parser/success/quotedPathsB.dhall b/dhall/tests/parser/success/quotedPathsB.dhall index 7db183e89..e0d5e2af5 100644 --- a/dhall/tests/parser/success/quotedPathsB.dhall +++ b/dhall/tests/parser/success/quotedPathsB.dhall @@ -1,24 +1,21 @@ [ - "3.0.0", - [ - 8, - { - "example0": [ - 24, - 2, - "foo", - "bar", - "baz qux" - ], - "example1": [ - 24, - 1, - "example.com", - "foo", - "bar?baz", - "qux", - null - ] - } - ] + 8, + { + "example0": [ + 24, + 2, + "foo", + "bar", + "baz qux" + ], + "example1": [ + 24, + 1, + "example.com", + "foo", + "bar?baz", + "qux", + null + ] + } ]