Skip to content

Commit

Permalink
Changelogs for 3.12.1.0 (#10124)
Browse files Browse the repository at this point in the history
* changelog for 3.12.1.0

* fixup! changelog for 3.12.1.0

* fixup! Changelogs for 3.12.1.0

Co-authored-by: Artem Pelenitsyn <a.pelenitsyn@gmail.com>

* fixup! changelog for 3.12.1.0

* fixup! changelog for 3.12.1.0

* fixup! Changelogs for 3.12.1.0

Co-authored-by: ffaf1 <fa-ml@ariis.it>

* fixup! Changelogs for 3.12.1.0

* fixup! Changelogs for 3.12.1.0

* fixup! Changelogs for 3.12.1.0

---------

Co-authored-by: Artem Pelenitsyn <a.pelenitsyn@gmail.com>
Co-authored-by: ffaf1 <fa-ml@ariis.it>
(cherry picked from commit 2067ed1)

# Conflicts:
#	release-notes/Cabal-3.12.0.0.md
  • Loading branch information
geekosaur authored and mergify[bot] committed Jun 21, 2024
1 parent 315e3f3 commit 0cc2c16
Show file tree
Hide file tree
Showing 15 changed files with 120 additions and 153 deletions.
9 changes: 0 additions & 9 deletions changelog.d/issue-10042

This file was deleted.

14 changes: 0 additions & 14 deletions changelog.d/issue-10063

This file was deleted.

13 changes: 0 additions & 13 deletions changelog.d/issue-6750

This file was deleted.

10 changes: 0 additions & 10 deletions changelog.d/issue-8875

This file was deleted.

8 changes: 0 additions & 8 deletions changelog.d/issue-9641

This file was deleted.

4 changes: 0 additions & 4 deletions changelog.d/issue-9919

This file was deleted.

6 changes: 0 additions & 6 deletions changelog.d/issue-9971

This file was deleted.

11 changes: 0 additions & 11 deletions changelog.d/pr-10014

This file was deleted.

11 changes: 0 additions & 11 deletions changelog.d/pr-9766

This file was deleted.

10 changes: 0 additions & 10 deletions changelog.d/pr-9824

This file was deleted.

8 changes: 0 additions & 8 deletions changelog.d/pr-9878

This file was deleted.

21 changes: 0 additions & 21 deletions changelog.d/pr-9950

This file was deleted.

32 changes: 17 additions & 15 deletions release-notes/Cabal-3.12.0.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
`filterPackageChecksById`, this can be used by third-party
tools to filter warnings.

- Add support for `GHC2024` [#9736](https://github.com/haskell/cabal/issues/9736)
- Add support for `GHC2024` [#9736](https://github.com/haskell/cabal/issues/9736) [#9791](https://github.com/haskell/cabal/pull/9791)

Support for the `GHC2024` language edition, introduced by GHC 9.10, has been
added. It can now be used in the `default-language` and `other-languages`
Expand All @@ -73,18 +73,24 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
If you are dealing with a custom setup, you have to invoke
`./Setup repl --repl-multi-file`.

<<<<<<< HEAD
- Cabal and Cabal-syntax 3.12 support GHC version 8.4.4 and up.

Support for all previous GHC versions is deprecated.
=======
- Label error messages with codes (following GHC, Stack)

As with GHC and Stack, Cabal and cabal-install now generate warnings and errors prefixed with error codes of the form `[Cabal-xxxxx]`. These will be documented on https://errors.haskell.org, although very few are as yet.
>>>>>>> 2067ed198 (Changelogs for 3.12.1.0 (#10124))
### Other changes

- `cabal init` should not suggest Cabal < 2.0 [#8680](https://github.com/haskell/cabal/issues/8680)
- `cabal init` should not suggest Cabal < 2.0 [#8680](https://github.com/haskell/cabal/issues/8680) [#8700](https://github.com/haskell/cabal/pull/8700)

'cabal init' no longer suggests users to set cabal-version to less than
2.0.

- Remove Distribution.Utils.TempTestDir module from Cabal library [#9453](https://github.com/haskell/cabal/issues/9453) [#9454](https://github.com/haskell/cabal/pull/9454)
- Remove `Distribution.Utils.TempTestDir` module from Cabal library [#9453](https://github.com/haskell/cabal/issues/9453) [#9454](https://github.com/haskell/cabal/pull/9454)

This library was only used by internal tests, and now lives in the
`Cabal-tests` library which is shared across test components.
Expand All @@ -110,7 +116,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes

- `checkPackage` signature has been simplified,
you do not need to pass a specific configuration of the package, since
we do not flatten GenericPackageDescription any more.
we do not flatten `GenericPackageDescription` any more.
- `checkPackageFileNames` has been removed,
use `checkPackageFiles` instead.
- `checkPackageFilesGPD` has been introduced,
Expand All @@ -122,7 +128,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes

GHC plugins now can store custom data in the 'extra-compilation-artifacts' directory which gets installed with the package.

- Add option to ./Setup repl to write repl arguments to file [#8726](https://github.com/haskell/cabal/pull/8726)
- Add option to `./Setup repl` to write repl arguments to file [#8726](https://github.com/haskell/cabal/pull/8726)

The `./Setup repl` command is modified to allow a user to defer starting
the repl and instead instruct the command to write the necessary build
Expand All @@ -137,7 +143,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
Cabal: Distribution now recognises Haiku as a valid platform, and also
implements Haiku's unique directory layout.

- Installation of .hie files [#8685](https://github.com/haskell/cabal/issues/8685) [#9019](https://github.com/haskell/cabal/pull/9019)
- Installation of `.hie` files [#8685](https://github.com/haskell/cabal/issues/8685) [#9019](https://github.com/haskell/cabal/pull/9019)

Hie files generated by GHC are now stored in the
`extra-compilation-artifacts` directory which gets installed with the
Expand Down Expand Up @@ -180,7 +186,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes

- Document `remote-repo-cache` as implemented. [#8737](https://github.com/haskell/cabal/issues/8737) [#8738](https://github.com/haskell/cabal/pull/8738)

- Deduplicate LD_LIBRARY_PATH when running tests [#8728](https://github.com/haskell/cabal/pull/8728)
- Deduplicate `LD_LIBRARY_PATH` when running tests [#8728](https://github.com/haskell/cabal/pull/8728)

- Add support for a number of architectures:

Expand All @@ -190,21 +196,19 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes

- Don't report `index.html` file as created, if not created by Haddock [#5120](https://github.com/haskell/cabal/issues/5120) [#9332](https://github.com/haskell/cabal/pull/9332)

- Enable using $ORIGIN in RPATH on GNU/Hurd [#9441](https://github.com/haskell/cabal/pull/9441)
- Enable using `$ORIGIN` in `RPATH` on GNU/Hurd [#9441](https://github.com/haskell/cabal/pull/9441)


- Make check comply with Hackage requirements [#8897](https://github.com/haskell/cabal/pull/8897)

- `cabal check` will only return exitcode 1 when the package is not fit
for Hackage. E.g. it will not error anymore when your `synopsis:` is
larger than `description:`, just emit a warning.
- Cabal: Distribution.Client.Check now exports `isHackageDistError`, for
- Cabal: `Distribution.Client.Check` now exports `isHackageDistError`, for
third-party tools to know if a specific error will preclude a package
from being uploaded to Hacakge.

- Add language extension `ExtendedLiterals` [#8992](https://github.com/haskell/cabal/pull/8992)

Adds support for the `ExtendedLiterals` language extension (GHC proposal #451)
- Add language extension `ExtendedLiterals` (GHC proposal #451) [#8992](https://github.com/haskell/cabal/pull/8992)

- Warn about inconsistent indentation [#8975](https://github.com/haskell/cabal/pull/8975)

Expand Down Expand Up @@ -253,9 +257,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes

`cabal` invokes `pkg-config` individually for each lib if querying for all doesn't return the expected result

- Add language extension `ListTuplePuns` [#8854](https://github.com/haskell/cabal/pull/8854)

Adds support for the `ListTuplePuns` language extension (GHC proposal #475)
- Add language extension `ListTuplePuns` (GHC proposal #475) [#8854](https://github.com/haskell/cabal/pull/8854)

- Add `mkVersionIntervals` for creating a `VersionIntervals` from a list [#9034](https://github.com/haskell/cabal/pull/9034)

Expand Down
54 changes: 54 additions & 0 deletions release-notes/Cabal-3.12.1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
Cabal and Cabal-syntax 3.12.1.0 changelog and release notes
---


### Significant changes

- Update GHC arguments normalization and GHC options rendering [#9729](https://github.com/haskell/cabal/issues/9729) [#10014](https://github.com/haskell/cabal/pull/10014)

The flags `-fdiagnostics-as-json`, `-fprint-error-index-lists`, `-fbreak-points`, `-dipe-stats`, `-ffamily-application-cache`, `-fprint-redundant-promotion-ticks`, `-fshow-error-context` and `-funoptimized-core-for-interpreter` have been added to the flags that do not cause recompilation.

- Warn on missing `default-language` [#9620](https://github.com/haskell/cabal/issues/9620) [#9766](https://github.com/haskell/cabal/pull/9766)

- To help the adoption of GHC language editions, `cabal check` will now
warn about missing `default-language`.

- Add MHS ([MicroHS](https://github.com/augustss/MicroHs)) as a known Haskell compiler [#9878](https://github.com/haskell/cabal/pull/9878)

- Re-instate `initialBuildSteps` [#9856](https://github.com/haskell/cabal/issues/9856) [#9950](https://github.com/haskell/cabal/pull/9950)

The `initialBuildSteps` function from `Distribution.Simple.Build`, which had
been hastily removed, has been reinstated.

It now comes with a deprecation warning: calling that function does not suffice
to prepare the sources for a package, as there are other steps that one might
also need to perform:

- running pre-processors (such as alex/happy);
- running pre-build hooks or custom logic
(in build-type: Hooks or build-type: Custom or Configure).

Consumers wanting to prepare the sources of a package, e.g. in order to launch a
REPL session, are advised to run `setup repl --repl-multi-file=<fn>` instead.

- Label error messages with codes (following GHC, Stack)

As with GHC and Stack, Cabal and cabal-install now generate warnings and errors prefixed with error codes of the form `[Cabal-xxxxx]`. These will be documented on https://errors.haskell.org, although very few are as yet.

This change was actually present in Cabal-3.12.0.0, but was inadvertently omitted from the changelog.

### Other changes

- Don't recommend deprecated/removed `extensions` field [#10042](https://github.com/haskell/cabal/issues/10042) [#10044](https://github.com/haskell/cabal/pull/10044)

When applicable, field `default-extensions` is recommended (rather than
deprecated/removed `extensions:`).

- Make `Setup copy` and `Setup install` succeed when there's no executable or library [#6750](https://github.com/haskell/cabal/issues/6750) [#9926](https://github.com/haskell/cabal/pull/9926)

Historically the Setup copy and install steps would fail if the package didn't
contain an executable or library component. In this case there's nothing to do.

This required workarounds for downstream users of Cabal to handle this edge case.
Now that this error has been downgraded to a warning, Cabal will succeed if
there's nothing to do.
Loading

0 comments on commit 0cc2c16

Please sign in to comment.