dhall v1.28.0 Release Notes
Release Date: 2019-12-06 // over 4 years ago-
- ๐ Supports version 12.0.0 of the standard
- ๐ฅ BREAKING CHANGE: Add
Integer/{clamp,negate}
built-ins- This is a technically breaking change API since this adds a new
constructor to theExpr
type - This is also a technically breaking change to the language. See the changelog for standard version 12.0.0 for more details
- This is a technically breaking change API since this adds a new
- ๐ฅ BREAKING CHANGE: Remove support for fusion
- This is also a technically breaking change to the language. See the changelog for standard version 12.0.0 for more details
- ๐ฅ BREAKING CHANGE: Parse whitespace more precisely
- The Haskell implementation now matches the official grammar much more
closely, but as a result will now reject some programs that it used to
accept - For example,
1:Natural
used to be valid and now is no longer valid as
the standard requires mandatory whitespace after the:
- Consult the standard grammar if you run into a new parsing error as a result of this change
- This is also a parsing performance regression (specifically for parsing
๐ comments), but should not be noticeable in practice. See #1512 for more details
- The Haskell implementation now matches the official grammar much more
- ๐ฅ BREAKING CHANGE: Rename
Type
toDecoder
andInputType
toEncoder
#1483 / #1489 - ๐ BUG FIX: Fix
dhall format --check
- Before this change
dhall format --check
would fail due to attempting to
read all of standard input in twice
- Before this change
- ๐ BUG FIX: Fix
dhall freeze
to always re-freeze an import- Before this fix,
dhall freeze
would not attempt to refreeze an already
frozen import
- Before this fix,
- Permit spaces around completion operator
- See the changelog for standard version 12.0.0 for more details
- Make
missing
referentially transparentmissing
can now be imported transitively via a remote import- Normally resolving
missing
would still still fail, except for
missing as Location
, which is now a valid transitive import - See the changelog for standard version 12.0.0 for more details
- Write cache files atomically
- This is a resilience improvement so that the cache is not left in a
corrupt state in the event of a power outage or exhausting disk/memory
- This is a resilience improvement so that the cache is not left in a
- New
Dhall.function
utility- This is provides the same functionality as the
Interpret
instance for
(->)
, except without the use of typeclasses
- This is provides the same functionality as the
- New
dhall haskell-syntax-tree
command- This command displays the Haskell syntax tree of an expression
(primarily for debugging purposes) - Note that this is highly-volatile and subject to change, so don't depend
on this programmatically. We may break the output of this command without
any notice.
- This command displays the Haskell syntax tree of an expression
- Add
instance Show Ann
- ๐ Move normalization code from
Dhall.Core
toDhall.Normalize
- Note that this is not a breaking change. The relocated utilities are
still re-exported fromDhall.Core
- Note that this is not a breaking change. The relocated utilities are
- Fix
dhall resolve --transitive-dependencies
to list dependencies in "post-order" - ๐ Performance improvements
- ๐ Fixes and improvements to code formatting
- ๐ Fixes and improvements to code linting
- ๐ Fixes and improvements to error messages
- ๐ Fixes and improvements to the parser
- ๐ Fixes and improvements to diffs
- ๐ Fixes and improvements to the REPL
- ๐ Fixes and improvements to documentation