Changelog for dhall-to-cabal-1.3.2.0
dhall-to-cabal change log
1.3.2.0 -- 2019-02-12
-
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 newtypes.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
.
1.3.1.0 -- 2018-10-23
-
Allow
Cabal
version 2.4.0.0. There have been consequent changes to the extensions, compilers and licenses recognised. -
Allow
dhall
version 1.18. -
dhall-to-cabal
andcabal-to-dhall
now understand themixins
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.
1.3.0.1 -- 2018-08-10
Distribution Changes
- Include all files necessary to run tests.
1.3.0.0 -- 2018-07-28
Breaking API Changes
DhallToCabal.dhallToCabal
now takes anInputSettings
fromdhall
as its first argument.
Functional Changes
-
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)
1.2.0.0 -- 2018-07-05
Breaking API Changes
-
Remove orphan
Dhall.Core.Inject
instances for[Char]
andCompilerFlavor
. -
CabalToDhall.cabalToDhall
is now a pure function that accepts aGenericPackageDescription
. A new convenience function has been added toCabalToDhall
,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
andcabal-to-dhall
now respond to--version
. -
The
dhall
subdirectory has been reorganised so that things that are not types are not in thetypes
subdirectory. Specifically,dhall/types/Version/v.dhall
, all ofdhall/types/VersionRange/*.dhall
and the operations (i.e., the enumerationsLicenseId.dhall
andLicenseExceptionId.dhall
) fromdhall/types/SPDX/*.dhall
have been moved to, respectively,dhall/Version/v.dhall
,dhall/VersionRange/*.dhall
, anddhall/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
andtypes.dhall
is unaffected by this change. -
prelude.defaults.Package.license
is nowAllRightsReserved
. -
dhall-to-cabal
now mapsAllRightsReserved
toSPDX.NONE
whencabal-version
is at least 2.2. -
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 defaultcabal-version
has been bumped to 2.2. -
Export
prelude.types.Scopes
.
Other Changes
- Bump upper-bounds for
base
,containers
andcontravariant
. This project can build on GHC 8.6 (though will need--allow-newer
forCabal
until this is official released).
1.1.0.0 -- 2018-06-03
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 https://github.com/dhall-lang/dhall-to-cabal/pull/56, https://github.com/dhall-lang/dhall-to-cabal/issues/53 and https://github.com/dhall-lang/dhall-to-cabal/issues/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 https://github.com/dhall-lang/dhall-to-cabal/pull/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 theprelude.dhall
andtypes.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.
-
prelude.defaults.Executable
has lost itsmain-is
field, as it makes little sense to have an executable without it. -
--print-type
now omits the lengthy definition ofExtension
, instead importing it from the prelude.--self-contained
is a new switch to disable this behaviour.
1.0.0.1 -- 2018-03-25
Small packaging only tweaks:
- Missing README.md
- Missing author
The irony of this change is not lost on me.
1.0.0 -- 2018-03-25
First release!