Skip to content

Commit 2067ed1

Browse files
geekosaurulysses4everffaf1
authored
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]>
1 parent f54d0dc commit 2067ed1

20 files changed

+118
-220
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-8680

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

changelog.d/issue-8875

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

changelog.d/issue-9098-lexbraces

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

changelog.d/issue-9641

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

changelog.d/issue-9678

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

changelog.d/issue-9736

Lines changed: 0 additions & 12 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/pkgconfig-once

Lines changed: 0 additions & 9 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`
@@ -73,14 +73,18 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
7373
If you are dealing with a custom setup, you have to invoke
7474
`./Setup repl --repl-multi-file`.
7575
76+
- Label error messages with codes (following GHC, Stack)
77+
78+
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.
79+
7680
### Other changes
7781
78-
- `cabal init` should not suggest Cabal < 2.0 [#8680](https://github.com/haskell/cabal/issues/8680)
82+
- `cabal init` should not suggest Cabal < 2.0 [#8680](https://github.com/haskell/cabal/issues/8680) [#8700](https://github.com/haskell/cabal/pull/8700)
7983
8084
'cabal init' no longer suggests users to set cabal-version to less than
8185
2.0.
8286
83-
- Remove Distribution.Utils.TempTestDir module from Cabal library [#9453](https://github.com/haskell/cabal/issues/9453) [#9454](https://github.com/haskell/cabal/pull/9454)
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)
8488
8589
This library was only used by internal tests, and now lives in the
8690
`Cabal-tests` library which is shared across test components.
@@ -106,7 +110,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
106110
107111
- `checkPackage` signature has been simplified,
108112
you do not need to pass a specific configuration of the package, since
109-
we do not flatten GenericPackageDescription any more.
113+
we do not flatten `GenericPackageDescription` any more.
110114
- `checkPackageFileNames` has been removed,
111115
use `checkPackageFiles` instead.
112116
- `checkPackageFilesGPD` has been introduced,
@@ -118,7 +122,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
118122
119123
GHC plugins now can store custom data in the 'extra-compilation-artifacts' directory which gets installed with the package.
120124
121-
- Add option to ./Setup repl to write repl arguments to file [#8726](https://github.com/haskell/cabal/pull/8726)
125+
- Add option to `./Setup repl` to write repl arguments to file [#8726](https://github.com/haskell/cabal/pull/8726)
122126
123127
The `./Setup repl` command is modified to allow a user to defer starting
124128
the repl and instead instruct the command to write the necessary build
@@ -133,7 +137,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
133137
Cabal: Distribution now recognises Haiku as a valid platform, and also
134138
implements Haiku's unique directory layout.
135139
136-
- Installation of .hie files [#8685](https://github.com/haskell/cabal/issues/8685) [#9019](https://github.com/haskell/cabal/pull/9019)
140+
- Installation of `.hie` files [#8685](https://github.com/haskell/cabal/issues/8685) [#9019](https://github.com/haskell/cabal/pull/9019)
137141
138142
Hie files generated by GHC are now stored in the
139143
`extra-compilation-artifacts` directory which gets installed with the
@@ -176,7 +180,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
176180
177181
- Document `remote-repo-cache` as implemented. [#8737](https://github.com/haskell/cabal/issues/8737) [#8738](https://github.com/haskell/cabal/pull/8738)
178182
179-
- Deduplicate LD_LIBRARY_PATH when running tests [#8728](https://github.com/haskell/cabal/pull/8728)
183+
- Deduplicate `LD_LIBRARY_PATH` when running tests [#8728](https://github.com/haskell/cabal/pull/8728)
180184
181185
- Add support for a number of architectures:
182186
@@ -186,21 +190,19 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
186190
187191
- 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)
188192
189-
- Enable using $ORIGIN in RPATH on GNU/Hurd [#9441](https://github.com/haskell/cabal/pull/9441)
193+
- Enable using `$ORIGIN` in `RPATH` on GNU/Hurd [#9441](https://github.com/haskell/cabal/pull/9441)
190194
191195
192196
- Make check comply with Hackage requirements [#8897](https://github.com/haskell/cabal/pull/8897)
193197
194198
- `cabal check` will only return exitcode 1 when the package is not fit
195199
for Hackage. E.g. it will not error anymore when your `synopsis:` is
196200
larger than `description:`, just emit a warning.
197-
- Cabal: Distribution.Client.Check now exports `isHackageDistError`, for
201+
- Cabal: `Distribution.Client.Check` now exports `isHackageDistError`, for
198202
third-party tools to know if a specific error will preclude a package
199203
from being uploaded to Hacakge.
200204
201-
- Add language extension `ExtendedLiterals` [#8992](https://github.com/haskell/cabal/pull/8992)
202-
203-
Adds support for the `ExtendedLiterals` language extension (GHC proposal #451)
205+
- Add language extension `ExtendedLiterals` (GHC proposal #451) [#8992](https://github.com/haskell/cabal/pull/8992)
204206
205207
- Warn about inconsistent indentation [#8975](https://github.com/haskell/cabal/pull/8975)
206208
@@ -249,9 +251,7 @@ Cabal and Cabal-syntax 3.12.0.0 changelog and release notes
249251
250252
`cabal` invokes `pkg-config` individually for each lib if querying for all doesn't return the expected result
251253
252-
- Add language extension `ListTuplePuns` [#8854](https://github.com/haskell/cabal/pull/8854)
253-
254-
Adds support for the `ListTuplePuns` language extension (GHC proposal #475)
254+
- Add language extension `ListTuplePuns` (GHC proposal #475) [#8854](https://github.com/haskell/cabal/pull/8854)
255255
256256
- Add `mkVersionIntervals` for creating a `VersionIntervals` from a list [#9034](https://github.com/haskell/cabal/pull/9034)
257257

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)