All Versions
Latest Version
Avg Release Cycle
52 days
Latest Release
1846 days ago

Changelog History

  • v1.3.4.0 Changes

    July 05, 2019

    โž• Add compatibility for optparse-applicative-0.15.

    โœ‚ Remove dhall/types/CustomSetup.dhall in favour of the identical dhall/types/SetupBuildInfo.dhall.

    cabal-to-dhall no longer generates bogus output for an unknown kind of source-repository stanza.

    โž• Added dhall/types/ForeignLibOption.dhall, also available as types.ForeignLibOption, and --print-type ForeignLibOption. Likewise ForeignLibType.

    ๐Ÿ‘Œ Support prettyprinter 1.3.

    โœ… Teach --print-type about Dependency, SetupBuildInfo, TestType, Mixin and Flag.

    ๐Ÿ‘‰ Use dhall version 1.24.

  • v1.3.3.0 Changes

    May 15, 2019
    • All constructors that previously took an empty record now use the new nullary syntax instead. This is a breaking change for user code. For example, instead of types.Compiler.GHC {=}, now you just write types.Compiler.GHC.

    • ๐Ÿ‘‰ Use dhall version 1.23.0.

    • ๐Ÿ–จ Educated --print-type about Scope and ModuleRenaming.

    • ๐Ÿ›  Fix cabal-to-dhall output for unknown licenses using cabal spec version below 2.0. Now it uses values of type License.Unknown Text for them.

    • ๐Ÿ‘Œ Improved --print-type and --print-default output to use multi-binding let.

  • v1.3.2.0 Changes

    February 12, 2019
    • ๐Ÿ‘‰ Use dhall version 1.20.1.

    • ๐Ÿ‘ prelude.dhall no longer provides types (as this isn't supported in Dhall 1.20.1). Instead, there is now a new types.dhall file.

    • dhall-to-cabal now accepts--output-stdout, --output-dir-cwd DIR, and --output-dir-input DIR flags control the destination of the generated .cabal file. --output-dir-cwd interprets its argument relative to the current working directory and --output-dir-input interprets its argument relative to the input file.

    The default has been changed to --output-dir-input ., which writes to the same directory as the input file; previously it corresponded to --output-stdout.

  • v1.3.1.0 Changes

    October 23, 2018

    ๐Ÿ‘ Allow Cabal version There have been consequent changes to the extensions, compilers and licenses recognised.

    ๐Ÿ‘ Allow dhall version 1.18.

    dhall-to-cabal and cabal-to-dhall now understand the mixins field properly.

    On the Dhall side, types.ModuleRenaming has changed significantly: it is now a union.

    prelude.types.ModuleRenaming has been added for convenient access to the new constructors.

    ๐Ÿ›  Fix issue with alpha-normalized expressions. This was identified in issue #124 and fixed in issue #126.

  • v1.3.0.1 Changes

    August 10, 2018

    Distribution Changes

    • โœ… Include all files necessary to run tests.
  • v1.3.0.0 Changes

    July 28, 2018

    ๐Ÿ’ฅ Breaking API Changes

    • DhallToCabal.dhallToCabal now takes an InputSettings from dhall as its first argument.

    Functional Changes

    0๏ธโƒฃ dhall-to-cabal has a new --print-default TYPE flag.

    When reading from a file, dhall-to-cabal now interprets imports as being relative to that file, rather than the current working directory. (#114)

  • v1.2.0.0 Changes

    July 05, 2018

    ๐Ÿ’ฅ Breaking API Changes

    โœ‚ Remove orphan Dhall.Core.Inject instances for [Char] and CompilerFlavor.

    ๐Ÿ“ฆ CabalToDhall.cabalToDhall is now a pure function that accepts a GenericPackageDescription. A new convenience function has been added to CabalToDhall, parseGenericPackageDescriptionThrows.

    Functional Changes

    os conditions where the operating system's name was not recognised (e.g., os(multics)) were crashing cabal-to-dhall. They now work as expected.

    dhall-to-cabal and cabal-to-dhall now respond to --version.

    ๐Ÿ‘€ The dhall subdirectory has been reorganised so that things that are not types are not in the types subdirectory. Specifically, dhall/types/Version/v.dhall, all of dhall/types/VersionRange/*.dhall and the operations (i.e., the enumerations LicenseId.dhall and LicenseExceptionId.dhall) from dhall/types/SPDX/*.dhall have been moved to, respectively, dhall/Version/v.dhall, dhall/VersionRange/*.dhall, and dhall/SPDX/*.dhall. In addition, the files have been renamed as appropriate to reflect the name that they are exported from the prelude as; in practice, this means that they have gone from TitleCase to camelCase.

    Code that only imports prelude.dhall and types.dhall is unaffected by this change.

    ๐Ÿ“ฆ prelude.defaults.Package.license is now AllRightsReserved.

    dhall-to-cabal now maps AllRightsReserved to SPDX.NONE when cabal-version is at least 2.2.

    0๏ธโƒฃ cabal-to-dhall will now generate more compact .dhall files by using defaults.

    ๐Ÿ— The default build-type is now omission, to use Cabal 2.2's inference, and the default cabal-version has been bumped to 2.2.

    Export prelude.types.Scopes.

    Other Changes

    • ๐Ÿš€ Bump upper-bounds for base, containers and contravariant. This project can build on GHC 8.6 (though will need --allow-newer for Cabal until this is official released).
  • v1.1.0.0 Changes

    June 03, 2018

    Known Problems

    ๐Ÿš€ Dhall 1.14 is slow to type-check the input to dhall-to-cabal. You may experience a drastic slow-down until Dhall 1.15 is released.

    ๐Ÿ’ฅ Breaking Changes

    • The type of DhallToCabal.license has changed to Dhall.Type (Either SPDX.License Cabal.License) to accomodate Cabal 2.2.

    Other Changes

    Increase upper-bound of base to allow 4.11.

    Increase upper-bound of tasty to allow 1.1.

    Switch to Dhall 1.14.0.

    ๐Ÿ‘€ dhall-to-cabal: Fix tracking which branches are already true or false in conditionals. Dhall expressions with lots of conditions previously produced Cabal files that did not correctly match the requested conditions. See #56, #53 and #55 for more information.

    Thank you to @jneira and @quasicomputational for helping identify and fix this bug.

    ๐Ÿ‘€ cabal-to-dhall: Rewrite conditional handling to avoid hangs with complicated ones. See #54 and linked issues.

    โž• Added a warning to generated .cabal files against hand-editing.

    ๐Ÿ–จ cabal-to-dhall now pretty prints the resulting Dhall.

    The signature of CabalToDhall.cabalToDhall has changed: it now takes the location of the prelude.dhall and types.dhall to import as a parameter.

    โฌ†๏ธ Upgrade to Cabal 2.2. This introduces SPDX license identifiers and Dhall functionality to manipulate them; see <golden-tests/dhall-to-cabal/SPDX.dhall> for a (convoluted) demonstration.

    0๏ธโƒฃ prelude.defaults.Executable has lost its main-is field, as it makes little sense to have an executable without it.

    ๐Ÿ–จ --print-type now omits the lengthy definition of Extension, instead importing it from the prelude. --self-contained is a new switch to disable this behaviour.

  • v1.0.0 Changes

    March 25, 2018

    ๐Ÿš€ First release!

  • v1.0.0.1 Changes

    March 25, 2018

    Small packaging only tweaks:

    • Missing
    • Missing author

    The irony of this change is not lost on me.