dhall v1.23.0 Release Notes

Release Date: 2019-05-11 // almost 5 years ago
    • 💥 BREAKING CHANGE: Fix marshaling union literals
      • 1.22.0 introduced two separate bugs in marshaling union literals between
        🚀 Dhall and Haskell, which this release fixes:
      • Dhall enums did not correctly map onto Haskell enums
      • New-style union literals (i.e. < A : T >.A x) were not correctly
        👌 supported
      • See: #918
      • See: #927
      • See: #936
    • 🐛 BUG FIX: Fix α-normalization
      • Version 1.22.0 introduced a new faster evaluation algorithm, but the new
        🚀 algorithm introduced two α-normalization regression, which this release
        🛠 fixes
      • The primary effect of this bug was that semantic integrity checks would
        fail for expressions that contain an if/then/else` expression in their
        normal form
      • See: #931
      • See: #938
    • 🐛 BUG FIX: Fix merging of sort-level record types
      • The language standard requires that { a : Kind } ⩓ { b : Kind } is
        🛠 valid, which this change fixes
      • See: #891
    • 🐛 BUG FIX: dhall freeze respects the --ascii flag
    • 🐛 BUG FIX: Don't autocomplete fields for record types
      • This prevents the REPL from expanding { x : T }.<TAB> to { x : T }.x
      • See: #937
    • 👌 Support MonadFail-related changes in GHC 8.8
    • ➕ Add cross flag to simplify cross-compilation
      • This allows the dhall package to be built without using
        TemplateHaskell
      • See: #928
    • Increase lines of context for error messages
      • Error messages now provide at least 20 lines of context instead of 3
        before truncating large expressions
      • See: #916
    • ➕ Add line numbers to error messages
      • The bottom of every Dhall type error includes the original source code,
        which now has line numbers on the left margin
      • See: #919
    • 📜 Expand lower bounds on megaparsec/transformers-compat dependencies
      • This is to support dhall on Debian Sid
      • See: #939