dhall v1.30.0 Release Notes
Release Date: 2020-02-15 // about 4 years ago-
- ๐ Supports version 14.0.0 of the standard
- ๐ฅ BREAKING CHANGE TO THE API: Add
--check
flag todhall {lint,freeze}
- You can now use the
--check
flag to verify that a file has already been
๐ linted or frozen - This is a breaking change to the types used by the
Dhall.Format
module
- You can now use the
- ๐ฅ BREAKING CHANGE TO THE LANGUAGE: Disallow
Natural
literals with leading zeros- Now a literal like
042
is no longer valid - See the changelog for standard version 14.0.0 for more details
- Now a literal like
- ๐ BUG FIX: Fix parsing of
Double
literal trailing whitespace- Certain expressions using
Double
literals would fail to parse, which this
๐ change fixes
- Certain expressions using
- ๐ BUG FIX: Use
DeriveLift
instead of GHC Generics to deriveLift
- This fixes a build failure on GHC 8.10
- ๐ Drop support for GHC 7.10.3
- GHC 8.0.2 is now the earliest supported version
- ๐ Add support for dotted field syntax
{ x.y.z = 1 }
now legal syntax for nested fields- See the changelog for standard version 14.0.0 for more details
- ๐ Add support for duplicate record fields
- This combines with the previous feature to let you write
{ x.y = 1, x.z = True }
, which is equivalent to
{ x = { y = 1, z = True } }
- See the changelog for standard version 14.0.0 for more details
- This combines with the previous feature to let you write
- ๐ Add
dhall lint
support for deprecatingOptional/{fold,build}
- The
Optional/{fold,build}
built-ins are deprecated and can be implemented
in terms of other language features Optional/fold
can be implemented in terms ofmerge
(which now works on
Optional
values)Optional/build
could always be implemented usingSome
/None
dhall lint
now transforms the deprecated built-ins to use their
๐ equivalent built-in-free versions
- The
- ๐ Support Template Haskell for multiple datatypes
- This extends the Template Haskell support added in the previous release to
work for datatypes that refer to one another
- This extends the Template Haskell support added in the previous release to
- ๐ Add support for custom substitutions
- You can now add custom substitutions, which are like
let
bindings that
propagate to transitive imports
- You can now add custom substitutions, which are like
- ๐ Small formatting fixes