dhall v1.29.0 Release Notes
Release Date: 2020-01-13 // over 4 years ago-
- ๐ Supports version 13.0.0 of the standard
- ๐ฅ BREAKING CHANGE: Generate Haskell datatype declarations from Dhall types
- You can now use the
makeHaskellTypeFromUnion
Template Haskell utility
to generate a Haskell datatype declaration from a Dhall union type - This helps ensure that your Haskell types and Dhall types stay in sync,
when you want the Dhall type to be the source of truth - This is a breaking change because the default
InterpretOptions
changed
0๏ธโฃ the default handling of singleton constructors fromWrapped
toSmart
- You can preserve the old behavior using:
0๏ธโฃautoWith defaultInterpretOptions{ singletonConstructors = Wrapped }
- You can now use the
- ๐ BUG FIX: Fix
dhall freeze --cache
anddhall lint
to preservelet
-related comments- Now they match the behavior of
dhall format
with regard to preserving
these comments
- Now they match the behavior of
- ๐ BUG FIX: Fix escaping of significant leading whitespace when formatting code
- The formatter would sometimes unnecessarily escape significant leading
whitespace for the final line of multiline string literals, which this
๐ change fixes
- The formatter would sometimes unnecessarily escape significant leading
- ๐ BUG FIX: Fix
dhall encode --json
forDouble
values - ๐ NEW FEATURE:
dhall to-directory-tree
command- You can now generate a directory tree from a Dhall expression
- Specifically:
- records are converted to directories
Text
fields are converted to files named after the fieldOptional
values are omitted ifNone
- Everything else is rejected
- ๐ NEW FEATURE: Hexadecimal literals
- See the changelog for standard version 13.0.0 for more details
- ๐ NEW FEATURE:
merge
works onOptional
values- See the changelog for standard version 13.0.0 for more details
- Improve formatter
dhall format
will now render expressions nested inside record fields or
alternatives more compactly, including:- Records
- Record completion expressions
- Expressions wrapped in
Some
- Lists
- Exclude the
using ...
suffix from imports listed bydhall resolve
- Specifically when using the
--{immediate,transitive}-dependencies
flags
- Specifically when using the