Skip to content

Commit 93db940

Browse files
authored
Changelogs 3.14 (haskell#10338)
* Bumpo “Redefine `build-type: Configure`” importance * Move “`pkg-config` error message” entry to “Other changes” * Fix typo * cabal file → `.cabal` file * Remove haskell#9702 from `cabal-install` changelog It is invisible to `cabal-install` user * Changelog: add OrPatterns extension * Changelog: add SPDX note * Make release notes for cabal-install 3.14 We are after all releasing cabal-install 3.14 * Fix SPDX entry We are not doing the sensible thing anymore.
1 parent ce7546b commit 93db940

File tree

2 files changed

+34
-56
lines changed

2 files changed

+34
-56
lines changed

release-notes/Cabal-3.14.0.0.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,8 @@
8181

8282
- Add `NamedDefaults` extension (GHC proposal #409) [#9740](https://github.com/haskell/cabal/pull/9740)
8383

84+
- Add `OrPatterns` extension (GHC proposal #958) [#10339](https://github.com/haskell/cabal/pull/10339)
85+
8486

8587
### Other changes
8688

@@ -150,3 +152,8 @@
150152
things (Setup configure, the package's "configure" script, or "cabal
151153
configure"). This has recently caught out even Cabal devs. Clarify these
152154
messages. [#9476](https://github.com/haskell/cabal/pull/9476)
155+
156+
- Update the SPDX License List to version 3.25
157+
158+
The LicenseId and LicenseExceptionId types are updated to reflect the SPDX
159+
License List version 3.25 (2024-08-19).

release-notes/cabal-install-3.16.0.0.md renamed to release-notes/cabal-install-3.14.0.0.md

Lines changed: 27 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,13 @@
1-
### THIS iS A WIP CHANGELOG FOR 3.16
1+
cabal-install 3.14.0.0 changelog and release notes.
2+
---
23

3-
**It will have to be updated with whatever gets added between 3.14 and 3.16**
4-
5-
6-
- Clarify error message when `pkg-config` is not found [#10122](https://github.com/haskell/cabal/pull/10122)
7-
8-
- The error message when `pkg-config` is not found or querying it fails will no
9-
longer incorrectly claim that the package is missing in the database.
104

115
### Significant changes
126

137
- `haddock-project` support for subcomponents [#9821](https://github.com/haskell/cabal/pull/9821)
148

159
- `haddock-project` handles sublibraries, test suites and benchmarks.
16-
- `haddock` receives `--package-name` flag whcih allows to set names of
10+
- `haddock` receives `--package-name` flag which allows to set names of
1711
components which are included in the main `index.html` file.
1812
- added `--use-unicode` flag to `haddock` and `haddock-project` commands.
1913
- The directory structure of `./dist-newstyle` has changed. `haddock`
@@ -23,6 +17,20 @@
2317
support of sublibraries. See
2418
https://github.com/haskell/cabal/pull/9821#discussion_r1548557115.
2519

20+
- Redefine `build-type: Configure` in terms of `Hooks` [#9969](https://github.com/haskell/cabal/pull/9969)
21+
22+
The `build-type: Configure` is now implemented in terms of `build-type: Hooks`
23+
rather than in terms of `build-type: Custom`. This moves the `Configure`
24+
build-type away from the `Custom` issues. Eventually, `build-type: Hooks` will
25+
no longer imply packages are built in legacy-fallback mode. When that
26+
happens, `Configure` will also stop implying `legacy-fallback`.
27+
28+
The observable aspect of this change is `runConfigureScript` now having a
29+
different type, and `autoconfSetupHooks` being exposed from `Distribution.Simple`.
30+
The former is motivated by internal implementation details, while the latter
31+
provides the `SetupHooks` value for the `Configure` build type, which can be
32+
consumed by other `Hooks` clients (e.g. eventually HLS).
33+
2634
### Other changes
2735

2836
- Add support for building profiled dynamic way [#4816](https://github.com/haskell/cabal/issues/4816) [#9900](https://github.com/haskell/cabal/pull/9900)
@@ -37,7 +45,7 @@
3745
Support for using `profiling-shared` is guarded behind a constraint
3846
which ensures you are using `Cabal >= 3.13`.
3947

40-
In the cabal file:
48+
In the `.cabal` file:
4149

4250
* `ghc-prof-shared-options`, for passing options when building in
4351
profiling dynamic way
@@ -62,39 +70,6 @@
6270
* `--enable-executable-dynamic --enable-profiling` will automatically turn on building
6371
shared profiling libraries (if supported by your compiler).
6472

65-
- Working directory support for `Cabal` [#9702](https://github.com/haskell/cabal/issues/9702) [#9718](https://github.com/haskell/cabal/pull/9718)
66-
67-
The `Cabal` library is now able to handle a passed-in working directory, instead
68-
of always relying on the current working directory of the parent process.
69-
70-
In order to achieve this, the `SymbolicPath` abstraction was fleshed out, and
71-
all fields of `PackageDescription` that, if relative, should be interpreted
72-
with respect to e.g. the package root, use `SymbolicPath` instead of `FilePath`.
73-
74-
This means that many library functions in `Cabal` take an extra argument of type
75-
`Maybe (SymbolicPath CWD (Dir "Package"))`, which is an optional (relative or
76-
absolute) path to the package root (if relative, relative to the current working
77-
directory). In addition, many functions that used to manipulate `FilePath`s now
78-
manipulate `SymbolicPath`s, require explicit conversion using e.g. `getSymbolicPath`.
79-
80-
To illustrate with file searching, the `Cabal` library defines:
81-
82-
```haskell
83-
findFileCwd
84-
:: forall dir1 dir2 file
85-
. Verbosity
86-
-> Maybe (SymbolicPath CWD (Dir dir1))
87-
88-
-> [SymbolicPath dir1 (Dir dir2)]
89-
90-
-> RelativePath dir2 File
91-
92-
-> IO (SymbolicPath dir1 File)
93-
```
94-
95-
See Note [Symbolic paths] in `Distribution.Utils.Path` for further information
96-
on the design of this API.
97-
9873
- `curl` transport now supports Basic authentication [#10089](https://github.com/haskell/cabal/pull/10089)
9974

10075
- The `curl` HTTP transport previously only supported the HTTP Digest
@@ -151,20 +126,16 @@
151126
* `documentation: true` or `--enable-documentation` now implies `-haddock` for
152127
GHC.
153128

154-
- Redefine `build-type: Configure` in terms of `Hooks` [#9969](https://github.com/haskell/cabal/pull/9969)
129+
- Bug fix - Don't pass `--coverage-for` for non-dependency libs of testsuite [#10046](https://github.com/haskell/cabal/issues/10046) [#10250](https://github.com/haskell/cabal/pull/10250)
155130

156-
The `build-type: Configure` is now implemented in terms of `build-type: Hooks`
157-
rather than in terms of `build-type: Custom`. This moves the `Configure`
158-
build-type away from the `Custom` issues. Eventually, `build-type: Hooks` will
159-
no longer imply packages are built in legacy-fallback mode. When that
160-
happens, `Configure` will also stop implying `legacy-fallback`.
131+
- Added `--all` and `--haddock-all` switches to `haddock-project` subcommand [#10051](https://github.com/haskell/cabal/issues/10051) [#10163](https://github.com/haskell/cabal/pull/10163)
161132

162-
The observable aspect of this change is `runConfigureScript` now having a
163-
different type, and `autoconfSetupHooks` being exposed from `Distribution.Simple`.
164-
The former is motivated by internal implementation details, while the latter
165-
provides the `SetupHooks` value for the `Configure` build type, which can be
166-
consumed by other `Hooks` clients (e.g. eventually HLS).
133+
- Clarify error message when `pkg-config` is not found [#10122](https://github.com/haskell/cabal/pull/10122)
167134

168-
- Bug fix - Don't pass `--coverage-for` for non-dependency libs of testsuite [#10046](https://github.com/haskell/cabal/issues/10046) [#10250](https://github.com/haskell/cabal/pull/10250)
135+
- The error message when `pkg-config` is not found or querying it fails will no
136+
longer incorrectly claim that the package is missing in the database.
169137

170-
- Added `--all` and `--haddock-all` switches to `haddock-project` subcommand [#10051](https://github.com/haskell/cabal/issues/10051) [#10163](https://github.com/haskell/cabal/pull/10163)
138+
- Update the SPDX License List to version 3.25
139+
140+
The LicenseId and LicenseExceptionId types are updated to reflect the SPDX
141+
License List version 3.25 (2024-08-19).

0 commit comments

Comments
 (0)