Skip to content

Commit 06a5280

Browse files
mergify[bot]geekosaur
authored andcommitted
Changelogs for 3.12.1.0 (backport haskell#10124) (haskell#10132)
* Changelogs for 3.12.1.0 (haskell#10124) * 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 <[email protected]> * 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 <[email protected]> * 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 <[email protected]> Co-authored-by: ffaf1 <[email protected]> (cherry picked from commit 2067ed1) # Conflicts: # release-notes/Cabal-3.12.0.0.md * fixup! Changelogs for 3.12.1.0 (backport haskell#10124) --------- Co-authored-by: brandon s allbery kf8nh <[email protected]> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
1 parent c932a1c commit 06a5280

15 files changed

+118
-153
lines changed

changelog.d/issue-10042

Lines changed: 0 additions & 9 deletions
This file was deleted.

changelog.d/issue-10063

Lines changed: 0 additions & 14 deletions
This file was deleted.

changelog.d/issue-6750

Lines changed: 0 additions & 13 deletions
This file was deleted.

changelog.d/issue-8875

Lines changed: 0 additions & 10 deletions
This file was deleted.

changelog.d/issue-9641

Lines changed: 0 additions & 8 deletions
This file was deleted.

changelog.d/issue-9919

Lines changed: 0 additions & 4 deletions
This file was deleted.

changelog.d/issue-9971

Lines changed: 0 additions & 6 deletions
This file was deleted.

changelog.d/pr-10014

Lines changed: 0 additions & 11 deletions
This file was deleted.

changelog.d/pr-9766

Lines changed: 0 additions & 11 deletions
This file was deleted.

changelog.d/pr-9824

Lines changed: 0 additions & 10 deletions
This file was deleted.

changelog.d/pr-9878

Lines changed: 0 additions & 8 deletions
This file was deleted.

changelog.d/pr-9950

Lines changed: 0 additions & 21 deletions
This file was deleted.

release-notes/Cabal-3.12.0.0.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
5555
`filterPackageChecksById`, this can be used by third-party
5656
tools to filter warnings.
5757
58-
- Add support for `GHC2024` [#9736](https://github.com/haskell/cabal/issues/9736)
58+
- Add support for `GHC2024` [#9736](https://github.com/haskell/cabal/issues/9736) [#9791](https://github.com/haskell/cabal/pull/9791)
5959
6060
Support for the `GHC2024` language edition, introduced by GHC 9.10, has been
6161
added. It can now be used in the `default-language` and `other-languages`
@@ -77,14 +77,18 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
7777
7878
Support for all previous GHC versions is deprecated.
7979
80+
- Label error messages with codes (following GHC, Stack)
81+
82+
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.
83+
8084
### Other changes
8185
82-
- `cabal init` should not suggest Cabal < 2.0 [#8680](https://github.com/haskell/cabal/issues/8680)
86+
- `cabal init` should not suggest Cabal < 2.0 [#8680](https://github.com/haskell/cabal/issues/8680) [#8700](https://github.com/haskell/cabal/pull/8700)
8387
8488
'cabal init' no longer suggests users to set cabal-version to less than
8589
2.0.
8690
87-
- Remove Distribution.Utils.TempTestDir module from Cabal library [#9453](https://github.com/haskell/cabal/issues/9453) [#9454](https://github.com/haskell/cabal/pull/9454)
91+
- Remove `Distribution.Utils.TempTestDir` module from Cabal library [#9453](https://github.com/haskell/cabal/issues/9453) [#9454](https://github.com/haskell/cabal/pull/9454)
8892
8993
This library was only used by internal tests, and now lives in the
9094
`Cabal-tests` library which is shared across test components.
@@ -110,7 +114,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
110114
111115
- `checkPackage` signature has been simplified,
112116
you do not need to pass a specific configuration of the package, since
113-
we do not flatten GenericPackageDescription any more.
117+
we do not flatten `GenericPackageDescription` any more.
114118
- `checkPackageFileNames` has been removed,
115119
use `checkPackageFiles` instead.
116120
- `checkPackageFilesGPD` has been introduced,
@@ -122,7 +126,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
122126
123127
GHC plugins now can store custom data in the 'extra-compilation-artifacts' directory which gets installed with the package.
124128
125-
- Add option to ./Setup repl to write repl arguments to file [#8726](https://github.com/haskell/cabal/pull/8726)
129+
- Add option to `./Setup repl` to write repl arguments to file [#8726](https://github.com/haskell/cabal/pull/8726)
126130
127131
The `./Setup repl` command is modified to allow a user to defer starting
128132
the repl and instead instruct the command to write the necessary build
@@ -137,7 +141,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
137141
Cabal: Distribution now recognises Haiku as a valid platform, and also
138142
implements Haiku's unique directory layout.
139143
140-
- Installation of .hie files [#8685](https://github.com/haskell/cabal/issues/8685) [#9019](https://github.com/haskell/cabal/pull/9019)
144+
- Installation of `.hie` files [#8685](https://github.com/haskell/cabal/issues/8685) [#9019](https://github.com/haskell/cabal/pull/9019)
141145
142146
Hie files generated by GHC are now stored in the
143147
`extra-compilation-artifacts` directory which gets installed with the
@@ -180,7 +184,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
180184
181185
- Document `remote-repo-cache` as implemented. [#8737](https://github.com/haskell/cabal/issues/8737) [#8738](https://github.com/haskell/cabal/pull/8738)
182186
183-
- Deduplicate LD_LIBRARY_PATH when running tests [#8728](https://github.com/haskell/cabal/pull/8728)
187+
- Deduplicate `LD_LIBRARY_PATH` when running tests [#8728](https://github.com/haskell/cabal/pull/8728)
184188
185189
- Add support for a number of architectures:
186190
@@ -190,21 +194,19 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
190194
191195
- 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)
192196
193-
- Enable using $ORIGIN in RPATH on GNU/Hurd [#9441](https://github.com/haskell/cabal/pull/9441)
197+
- Enable using `$ORIGIN` in `RPATH` on GNU/Hurd [#9441](https://github.com/haskell/cabal/pull/9441)
194198
195199
196200
- Make check comply with Hackage requirements [#8897](https://github.com/haskell/cabal/pull/8897)
197201
198202
- `cabal check` will only return exitcode 1 when the package is not fit
199203
for Hackage. E.g. it will not error anymore when your `synopsis:` is
200204
larger than `description:`, just emit a warning.
201-
- Cabal: Distribution.Client.Check now exports `isHackageDistError`, for
205+
- Cabal: `Distribution.Client.Check` now exports `isHackageDistError`, for
202206
third-party tools to know if a specific error will preclude a package
203207
from being uploaded to Hacakge.
204208
205-
- Add language extension `ExtendedLiterals` [#8992](https://github.com/haskell/cabal/pull/8992)
206-
207-
Adds support for the `ExtendedLiterals` language extension (GHC proposal #451)
209+
- Add language extension `ExtendedLiterals` (GHC proposal #451) [#8992](https://github.com/haskell/cabal/pull/8992)
208210
209211
- Warn about inconsistent indentation [#8975](https://github.com/haskell/cabal/pull/8975)
210212
@@ -253,9 +255,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
253255
254256
`cabal` invokes `pkg-config` individually for each lib if querying for all doesn't return the expected result
255257
256-
- Add language extension `ListTuplePuns` [#8854](https://github.com/haskell/cabal/pull/8854)
257-
258-
Adds support for the `ListTuplePuns` language extension (GHC proposal #475)
258+
- Add language extension `ListTuplePuns` (GHC proposal #475) [#8854](https://github.com/haskell/cabal/pull/8854)
259259
260260
- Add `mkVersionIntervals` for creating a `VersionIntervals` from a list [#9034](https://github.com/haskell/cabal/pull/9034)
261261

release-notes/Cabal-3.12.1.0.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
Cabal and Cabal-syntax 3.12.1.0 changelog and release notes
2+
---
3+
4+
5+
### Significant changes
6+
7+
- Update GHC arguments normalization and GHC options rendering [#9729](https://github.com/haskell/cabal/issues/9729) [#10014](https://github.com/haskell/cabal/pull/10014)
8+
9+
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.
10+
11+
- Warn on missing `default-language` [#9620](https://github.com/haskell/cabal/issues/9620) [#9766](https://github.com/haskell/cabal/pull/9766)
12+
13+
- To help the adoption of GHC language editions, `cabal check` will now
14+
warn about missing `default-language`.
15+
16+
- Add MHS ([MicroHS](https://github.com/augustss/MicroHs)) as a known Haskell compiler [#9878](https://github.com/haskell/cabal/pull/9878)
17+
18+
- Re-instate `initialBuildSteps` [#9856](https://github.com/haskell/cabal/issues/9856) [#9950](https://github.com/haskell/cabal/pull/9950)
19+
20+
The `initialBuildSteps` function from `Distribution.Simple.Build`, which had
21+
been hastily removed, has been reinstated.
22+
23+
It now comes with a deprecation warning: calling that function does not suffice
24+
to prepare the sources for a package, as there are other steps that one might
25+
also need to perform:
26+
27+
- running pre-processors (such as alex/happy);
28+
- running pre-build hooks or custom logic
29+
(in build-type: Hooks or build-type: Custom or Configure).
30+
31+
Consumers wanting to prepare the sources of a package, e.g. in order to launch a
32+
REPL session, are advised to run `setup repl --repl-multi-file=<fn>` instead.
33+
34+
- Label error messages with codes (following GHC, Stack)
35+
36+
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.
37+
38+
This change was actually present in Cabal-3.12.0.0, but was inadvertently omitted from the changelog.
39+
40+
### Other changes
41+
42+
- Don't recommend deprecated/removed `extensions` field [#10042](https://github.com/haskell/cabal/issues/10042) [#10044](https://github.com/haskell/cabal/pull/10044)
43+
44+
When applicable, field `default-extensions` is recommended (rather than
45+
deprecated/removed `extensions:`).
46+
47+
- 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)
48+
49+
Historically the Setup copy and install steps would fail if the package didn't
50+
contain an executable or library component. In this case there's nothing to do.
51+
52+
This required workarounds for downstream users of Cabal to handle this edge case.
53+
Now that this error has been downgraded to a warning, Cabal will succeed if
54+
there's nothing to do.

0 commit comments

Comments
 (0)