Skip to content

Commit dee5f41

Browse files
committed
WIP
1 parent b28ec92 commit dee5f41

File tree

6 files changed

+110
-126
lines changed

6 files changed

+110
-126
lines changed

changelog.d/cabal-init

+2-4
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,8 @@ description: {
1212
- Fix an infinite loop when invalid license was passed on command line
1313
- `Setup.hs` is not written anymore
1414
- Default to --source-dir=src and --application-dir=app
15-
- Add FileCreators.generateCabalFile unit tests.
16-
- Default cabal init application-dir to app, and source-dir to src.
15+
- Add `FileCreators.generateCabalFile` unit tests.
16+
- Default cabal init application-dir to `app`, and source-dir to `src`.
1717
- Default to SPDX.NONE license in cabal init interactive mode.
1818

19-
TODO: complete the description
20-
2119
}

changelog.d/documentation

-6
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,3 @@ synopsis: Documentation updates and typo-fixes
22
prs:
33
#6613 #6560 #6660 #6668 #6669 #6697 #6761 #6940
44
#6504 #6550 #6686 #6928 #6954 #6953 #6951
5-
6-
description: {
7-
8-
TODO: Highlight larged changes
9-
10-
}

changelog.d/ghc-8.12

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ description: {
1212
- Add support for WINIO to Cabal
1313
- Adopt to simplfied subsumption changes
1414

15-
There are no magical 'IO = WithCallStack Prelude.IO` alias in Cabal,
15+
There are no magical `IO = WithCallStack Prelude.IO` alias in Cabal,
1616
as it is hard to get working with GHC-8.12's simplified subsumption.
1717

1818
}

changelog.d/issue-6083

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
synopsis: Treat pkg:sublib dependency syntax as is in `cabal-version: 3.4`
1+
synopsis: Treat `pkg:sublib` dependency syntax as is in `cabal-version: 3.4`
22
issues: #6083
33
prs: #6907 #6893
44
significance: significant

notes/Cabal-3.4.0.0.md

+41-44
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
### Significant changes
22

3-
- Add cabal-version: 3.4 [#6663](https://github.com/haskell/cabal/pull/6663)
3+
- Add cabal-version: 3.4 [!6663](https://github.com/haskell/cabal/pull/6663)
44

55
See various changes in https://cabal.readthedocs.io/en/latest/file-format-changelog.html#cabal-version-3-4
66

7-
- Support GHC-8.12 [#6903](https://github.com/haskell/cabal/issues/6903) [#6904](https://github.com/haskell/cabal/issues/6904) [#6905](https://github.com/haskell/cabal/issues/6905) [#6545](https://github.com/haskell/cabal/pull/6545) [#6552](https://github.com/haskell/cabal/pull/6552) [#6553](https://github.com/haskell/cabal/pull/6553) [#6563](https://github.com/haskell/cabal/pull/6563) [#6735](https://github.com/haskell/cabal/pull/6735) [#6844](https://github.com/haskell/cabal/pull/6844) [#6848](https://github.com/haskell/cabal/pull/6848) [#6865](https://github.com/haskell/cabal/pull/6865) [#6908](https://github.com/haskell/cabal/pull/6908) [#6947](https://github.com/haskell/cabal/pull/6947)
7+
- Support GHC-8.12 [#6903](https://github.com/haskell/cabal/issues/6903) [#6904](https://github.com/haskell/cabal/issues/6904) [#6905](https://github.com/haskell/cabal/issues/6905) [!6545](https://github.com/haskell/cabal/pull/6545) [!6552](https://github.com/haskell/cabal/pull/6552) [!6553](https://github.com/haskell/cabal/pull/6553) [!6563](https://github.com/haskell/cabal/pull/6563) [!6735](https://github.com/haskell/cabal/pull/6735) [!6844](https://github.com/haskell/cabal/pull/6844) [!6848](https://github.com/haskell/cabal/pull/6848) [!6865](https://github.com/haskell/cabal/pull/6865) [!6908](https://github.com/haskell/cabal/pull/6908) [!6947](https://github.com/haskell/cabal/pull/6947)
88

99
- Support for `-this-package-key` deprecation
1010
- Use process `createPipe`
1111
- Add support for WINIO to Cabal
1212
- Adopt to simplfied subsumption changes
1313

14-
There are no magical 'IO = WithCallStack Prelude.IO` alias in Cabal,
14+
There are no magical `IO = WithCallStack Prelude.IO` alias in Cabal,
1515
as it is hard to get working with GHC-8.12's simplified subsumption.
1616

17-
- Treat pkg:sublib dependency syntax as is in `cabal-version: 3.4` [#6083](https://github.com/haskell/cabal/issues/6083) [#6893](https://github.com/haskell/cabal/pull/6893) [#6907](https://github.com/haskell/cabal/pull/6907)
17+
- Treat `pkg:sublib` dependency syntax as is in `cabal-version: 3.4` [#6083](https://github.com/haskell/cabal/issues/6083) [!6893](https://github.com/haskell/cabal/pull/6893) [!6907](https://github.com/haskell/cabal/pull/6907)
1818

1919
In `cabal-version: 3.4` cabal files the dependency definition
2020

@@ -31,7 +31,7 @@
3131
This fixes an issue, where it was impossible to refer to extenral
3232
library, if you had sublibrary of the same name.
3333

34-
- Dependency type refactorings [#5570](https://github.com/haskell/cabal/issues/5570) [#6894](https://github.com/haskell/cabal/issues/6894) [#6768](https://github.com/haskell/cabal/pull/6768) [#6798](https://github.com/haskell/cabal/pull/6798) [#6895](https://github.com/haskell/cabal/pull/6895) [#6896](https://github.com/haskell/cabal/pull/6896) [#6897](https://github.com/haskell/cabal/pull/6897) [#6898](https://github.com/haskell/cabal/pull/6898)
34+
- Dependency type refactorings [#5570](https://github.com/haskell/cabal/issues/5570) [#6894](https://github.com/haskell/cabal/issues/6894) [!6768](https://github.com/haskell/cabal/pull/6768) [!6798](https://github.com/haskell/cabal/pull/6798) [!6895](https://github.com/haskell/cabal/pull/6895) [!6896](https://github.com/haskell/cabal/pull/6896) [!6897](https://github.com/haskell/cabal/pull/6897) [!6898](https://github.com/haskell/cabal/pull/6898)
3535

3636
With additions of (public) sublibraries, `Dependency` type use for multiple needs become painful.
3737
Therefore a new type `PackageVersionConstraint` was added to serve *constraint on package* use-case.
@@ -42,13 +42,13 @@
4242

4343
### Other changes
4444

45-
- Tests additions [#6409](https://github.com/haskell/cabal/issues/6409) [#6753](https://github.com/haskell/cabal/pull/6753) [#6759](https://github.com/haskell/cabal/pull/6759) [#6802](https://github.com/haskell/cabal/pull/6802) [#6842](https://github.com/haskell/cabal/pull/6842) [#6872](https://github.com/haskell/cabal/pull/6872)
45+
- Tests additions [#6409](https://github.com/haskell/cabal/issues/6409) [!6753](https://github.com/haskell/cabal/pull/6753) [!6759](https://github.com/haskell/cabal/pull/6759) [!6802](https://github.com/haskell/cabal/pull/6802) [!6842](https://github.com/haskell/cabal/pull/6842) [!6872](https://github.com/haskell/cabal/pull/6872)
4646

4747
- Add shrinker, so writing big non-generic product shrinkers is easier
4848
- Add `hs-source-dirs: NL .` test-case
4949
- Add public multilib test(s)
5050

51-
- Code organization [#6599](https://github.com/haskell/cabal/pull/6599) [#6642](https://github.com/haskell/cabal/pull/6642) [#6734](https://github.com/haskell/cabal/pull/6734) [#6745](https://github.com/haskell/cabal/pull/6745) [#6746](https://github.com/haskell/cabal/pull/6746) [#6817](https://github.com/haskell/cabal/pull/6817) [#6818](https://github.com/haskell/cabal/pull/6818) [#6821](https://github.com/haskell/cabal/pull/6821) [#6867](https://github.com/haskell/cabal/pull/6867)
51+
- Code organization [!6599](https://github.com/haskell/cabal/pull/6599) [!6642](https://github.com/haskell/cabal/pull/6642) [!6734](https://github.com/haskell/cabal/pull/6734) [!6745](https://github.com/haskell/cabal/pull/6745) [!6746](https://github.com/haskell/cabal/pull/6746) [!6817](https://github.com/haskell/cabal/pull/6817) [!6818](https://github.com/haskell/cabal/pull/6818) [!6821](https://github.com/haskell/cabal/pull/6821) [!6867](https://github.com/haskell/cabal/pull/6867)
5252

5353
- Split `Distribution.Client.Types` module
5454
- Move cabal-testsuite code into `src/`
@@ -60,29 +60,25 @@
6060
- Refactor shared `TargetProblem` data types into their own module.
6161
- Template `cabal-install.cabal` using zinza
6262

63-
- The grammar of most package description fields is formally documented [#6591](https://github.com/haskell/cabal/pull/6591) [#6593](https://github.com/haskell/cabal/pull/6593) [#6704](https://github.com/haskell/cabal/pull/6704) [#6766](https://github.com/haskell/cabal/pull/6766) [#6778](https://github.com/haskell/cabal/pull/6778) [#6780](https://github.com/haskell/cabal/pull/6780) [#6781](https://github.com/haskell/cabal/pull/6781) [#6791](https://github.com/haskell/cabal/pull/6791) [#6800](https://github.com/haskell/cabal/pull/6800)
63+
- The grammar of most package description fields is formally documented [!6591](https://github.com/haskell/cabal/pull/6591) [!6593](https://github.com/haskell/cabal/pull/6593) [!6704](https://github.com/haskell/cabal/pull/6704) [!6766](https://github.com/haskell/cabal/pull/6766) [!6778](https://github.com/haskell/cabal/pull/6778) [!6780](https://github.com/haskell/cabal/pull/6780) [!6781](https://github.com/haskell/cabal/pull/6781) [!6791](https://github.com/haskell/cabal/pull/6791) [!6800](https://github.com/haskell/cabal/pull/6800)
6464

6565
See https://cabal.readthedocs.io/en/latest/buildinfo-fields-reference.html
6666

67-
- Documentation updates and typo-fixes [#6504](https://github.com/haskell/cabal/pull/6504) [#6550](https://github.com/haskell/cabal/pull/6550) [#6560](https://github.com/haskell/cabal/pull/6560) [#6613](https://github.com/haskell/cabal/pull/6613) [#6660](https://github.com/haskell/cabal/pull/6660) [#6668](https://github.com/haskell/cabal/pull/6668) [#6669](https://github.com/haskell/cabal/pull/6669) [#6686](https://github.com/haskell/cabal/pull/6686) [#6697](https://github.com/haskell/cabal/pull/6697) [#6761](https://github.com/haskell/cabal/pull/6761) [#6928](https://github.com/haskell/cabal/pull/6928) [#6940](https://github.com/haskell/cabal/pull/6940) [#6951](https://github.com/haskell/cabal/pull/6951) [#6953](https://github.com/haskell/cabal/pull/6953) [#6954](https://github.com/haskell/cabal/pull/6954)
68-
69-
TODO: Highlight larged changes
70-
71-
- Fix ghci being launched before other sources are built. [#6923](https://github.com/haskell/cabal/pull/6923)
67+
- Fix ghci being launched before other sources are built. [!6923](https://github.com/haskell/cabal/pull/6923)
7268

7369
Related to foreign calls to C-sources.
7470

75-
- Remove `-any` and `-none` syntax for version ranges in cabal-version: 3.4 [#6589](https://github.com/haskell/cabal/issues/6589) [#6786](https://github.com/haskell/cabal/pull/6786)
71+
- Remove `-any` and `-none` syntax for version ranges in cabal-version: 3.4 [#6589](https://github.com/haskell/cabal/issues/6589) [!6786](https://github.com/haskell/cabal/pull/6786)
7672

7773
Use `>=0` (or empty in dependencies) and `<0` respectively.
7874

79-
- Add pijul to known repository type [#6610](https://github.com/haskell/cabal/issues/6610) [#6684](https://github.com/haskell/cabal/pull/6684)
75+
- Add pijul to known repository type [#6610](https://github.com/haskell/cabal/issues/6610) [!6684](https://github.com/haskell/cabal/pull/6684)
8076

8177
Pijul is now explicitly recognized version control system.
8278
However `cabal-install` isn't yet able to use it in
8379
`source-repository-package`.
8480

85-
- Rename Flag to CompilerFlag and PackageFlag [#6710](https://github.com/haskell/cabal/issues/6710) [#6725](https://github.com/haskell/cabal/pull/6725)
81+
- Rename Flag to CompilerFlag and PackageFlag [#6710](https://github.com/haskell/cabal/issues/6710) [!6725](https://github.com/haskell/cabal/pull/6725)
8682

8783
There was three Flag's. Now they are
8884

@@ -92,15 +88,15 @@
9288

9389
This allows wild-imports without `hiding (Flag)`.
9490

95-
- Accept "linux-androideabi" as an alias for Android for determining buildOS [#6301](https://github.com/haskell/cabal/pull/6301) [#6949](https://github.com/haskell/cabal/pull/6949)
91+
- Accept "linux-androideabi" as an alias for Android for determining buildOS [!6301](https://github.com/haskell/cabal/pull/6301) [!6949](https://github.com/haskell/cabal/pull/6949)
9692

9793
`Cabal` will able to parse `linux-androideabi` from the value of `System.Info.os`.
9894

99-
- Refactor Distribution.PackageDescription module [#6855](https://github.com/haskell/cabal/pull/6855)
95+
- Refactor Distribution.PackageDescription module [!6855](https://github.com/haskell/cabal/pull/6855)
10096

10197
Now it re-exports a collection of modules, not individual symbols.
10298

103-
- Use process jobs when spawning subprocesses [#6529](https://github.com/haskell/cabal/pull/6529) [#6536](https://github.com/haskell/cabal/pull/6536)
99+
- Use process jobs when spawning subprocesses [!6529](https://github.com/haskell/cabal/pull/6529) [!6536](https://github.com/haskell/cabal/pull/6536)
104100

105101
Many toolchain tools written for POSIX systems rely on the exec system
106102
call. Unfortunately, it is not possible to implement exec in a
@@ -119,32 +115,33 @@
119115
broken and was only recently fixed. Consequently, we only enable job
120116
object support for process releases >= 1.6.8.
121117

122-
- Remove `AnyVersion` and `WildcardVersion` constructors from `Version` [#6742](https://github.com/haskell/cabal/pull/6742)
118+
- Remove `AnyVersion` and `WildcardVersion` constructors from `Version` [!6742](https://github.com/haskell/cabal/pull/6742)
123119

124120
This changes makes `Version` type less "syntactic",
125121
i.e. contains less constructors for semantically same version ranges.
126122

127-
- Cabal-QuickCheck package with `Arbirary` instances [#6882](https://github.com/haskell/cabal/issues/6882) [#6557](https://github.com/haskell/cabal/pull/6557) [#6891](https://github.com/haskell/cabal/pull/6891)
128-
- Create Cabal-tree-diff package with `ToExpr` instances [#6789](https://github.com/haskell/cabal/pull/6789)
129-
- `Cabal.Distribution.Compiler`: add `Traversable` instance for `PerCompilerFlavor` [#6763](https://github.com/haskell/cabal/pull/6763)
130-
- Improvements to cabal-testsuite framework [#6643](https://github.com/haskell/cabal/pull/6643)
131-
- Update copyright years to 2020 [#6644](https://github.com/haskell/cabal/pull/6644)
132-
- Flag assignment parsing refactorings [#6853](https://github.com/haskell/cabal/issues/6853) [#6854](https://github.com/haskell/cabal/pull/6854) [#6858](https://github.com/haskell/cabal/pull/6858)
133-
- Add foo:bar syntax to mixins [#6281](https://github.com/haskell/cabal/issues/6281) [#6912](https://github.com/haskell/cabal/pull/6912)
134-
- default-language field is optional in cabal-version: 3.4 [#6288](https://github.com/haskell/cabal/issues/6288) [#6924](https://github.com/haskell/cabal/pull/6924) [#6926](https://github.com/haskell/cabal/pull/6926)
135-
- Split `KnownRepoType` out of `RepoType` [#6432](https://github.com/haskell/cabal/issues/6432) [#6612](https://github.com/haskell/cabal/pull/6612)
136-
- Include component name in unit-id [#6485](https://github.com/haskell/cabal/issues/6485) [#6547](https://github.com/haskell/cabal/pull/6547)
137-
- Change 'optional-packages' default to empty, when cabal.project is mising. [#4797](https://github.com/haskell/cabal/issues/4797) [#6739](https://github.com/haskell/cabal/issues/6739) [#6740](https://github.com/haskell/cabal/pull/6740)
138-
- Fix rpmvercmp (trailing non-digit characters) [#6805](https://github.com/haskell/cabal/issues/6805) [#6808](https://github.com/haskell/cabal/pull/6808)
139-
- other changes [#6556](https://github.com/haskell/cabal/pull/6556) [#6598](https://github.com/haskell/cabal/pull/6598) [#6910](https://github.com/haskell/cabal/pull/6910)
140-
- Package description parser benchmark [#6594](https://github.com/haskell/cabal/pull/6594)
141-
- Add `licenceIsFsfLibre` [#6878](https://github.com/haskell/cabal/pull/6878)
142-
- Add `+stderr` modifier to `Verbosity` [#6929](https://github.com/haskell/cabal/pull/6929)
143-
- Mark public-libs as experimental feature [#6605](https://github.com/haskell/cabal/pull/6605)
144-
- Add rewriteFileLBS and use it to write setup wrapper [#6574](https://github.com/haskell/cabal/pull/6574)
145-
- Add SPDX License List 3.9 [#6879](https://github.com/haskell/cabal/issues/6879) [#6662](https://github.com/haskell/cabal/pull/6662) [#6944](https://github.com/haskell/cabal/pull/6944)
146-
- Change specVersion to have CabalSpecVersion type [#6653](https://github.com/haskell/cabal/pull/6653)
147-
- Better UTF8 handling, parsed `ShortText` is now valid. [#6588](https://github.com/haskell/cabal/pull/6588)
148-
- More checks in version range parser [#6586](https://github.com/haskell/cabal/pull/6586)
149-
- Require cabal-versions `>=1.25` to be exact [#6654](https://github.com/haskell/cabal/pull/6654)
150-
- Add and use weeder [#6779](https://github.com/haskell/cabal/pull/6779) [#6790](https://github.com/haskell/cabal/pull/6790)
123+
- Cabal-QuickCheck package with `Arbirary` instances [#6882](https://github.com/haskell/cabal/issues/6882) [!6557](https://github.com/haskell/cabal/pull/6557) [!6891](https://github.com/haskell/cabal/pull/6891)
124+
- Create Cabal-tree-diff package with `ToExpr` instances [!6789](https://github.com/haskell/cabal/pull/6789)
125+
- `Cabal.Distribution.Compiler`: add `Traversable` instance for `PerCompilerFlavor` [!6763](https://github.com/haskell/cabal/pull/6763)
126+
- Improvements to cabal-testsuite framework [!6643](https://github.com/haskell/cabal/pull/6643)
127+
- Update copyright years to 2020 [!6644](https://github.com/haskell/cabal/pull/6644)
128+
- Documentation updates and typo-fixes [!6504](https://github.com/haskell/cabal/pull/6504) [!6550](https://github.com/haskell/cabal/pull/6550) [!6560](https://github.com/haskell/cabal/pull/6560) [!6613](https://github.com/haskell/cabal/pull/6613) [!6660](https://github.com/haskell/cabal/pull/6660) [!6668](https://github.com/haskell/cabal/pull/6668) [!6669](https://github.com/haskell/cabal/pull/6669) [!6686](https://github.com/haskell/cabal/pull/6686) [!6697](https://github.com/haskell/cabal/pull/6697) [!6761](https://github.com/haskell/cabal/pull/6761) [!6928](https://github.com/haskell/cabal/pull/6928) [!6940](https://github.com/haskell/cabal/pull/6940) [!6951](https://github.com/haskell/cabal/pull/6951) [!6953](https://github.com/haskell/cabal/pull/6953) [!6954](https://github.com/haskell/cabal/pull/6954)
129+
- Flag assignment parsing refactorings [#6853](https://github.com/haskell/cabal/issues/6853) [!6854](https://github.com/haskell/cabal/pull/6854) [!6858](https://github.com/haskell/cabal/pull/6858)
130+
- Add foo:bar syntax to mixins [#6281](https://github.com/haskell/cabal/issues/6281) [!6912](https://github.com/haskell/cabal/pull/6912)
131+
- default-language field is optional in cabal-version: 3.4 [#6288](https://github.com/haskell/cabal/issues/6288) [!6924](https://github.com/haskell/cabal/pull/6924) [!6926](https://github.com/haskell/cabal/pull/6926)
132+
- Split `KnownRepoType` out of `RepoType` [#6432](https://github.com/haskell/cabal/issues/6432) [!6612](https://github.com/haskell/cabal/pull/6612)
133+
- Include component name in unit-id [#6485](https://github.com/haskell/cabal/issues/6485) [!6547](https://github.com/haskell/cabal/pull/6547)
134+
- Change 'optional-packages' default to empty, when cabal.project is mising. [#4797](https://github.com/haskell/cabal/issues/4797) [#6739](https://github.com/haskell/cabal/issues/6739) [!6740](https://github.com/haskell/cabal/pull/6740)
135+
- Fix rpmvercmp (trailing non-digit characters) [#6805](https://github.com/haskell/cabal/issues/6805) [!6808](https://github.com/haskell/cabal/pull/6808)
136+
- other changes [!6556](https://github.com/haskell/cabal/pull/6556) [!6598](https://github.com/haskell/cabal/pull/6598) [!6910](https://github.com/haskell/cabal/pull/6910)
137+
- Package description parser benchmark [!6594](https://github.com/haskell/cabal/pull/6594)
138+
- Add `licenceIsFsfLibre` [!6878](https://github.com/haskell/cabal/pull/6878)
139+
- Add `+stderr` modifier to `Verbosity` [!6929](https://github.com/haskell/cabal/pull/6929)
140+
- Mark public-libs as experimental feature [!6605](https://github.com/haskell/cabal/pull/6605)
141+
- Add rewriteFileLBS and use it to write setup wrapper [!6574](https://github.com/haskell/cabal/pull/6574)
142+
- Add SPDX License List 3.9 [#6879](https://github.com/haskell/cabal/issues/6879) [!6662](https://github.com/haskell/cabal/pull/6662) [!6944](https://github.com/haskell/cabal/pull/6944)
143+
- Change specVersion to have CabalSpecVersion type [!6653](https://github.com/haskell/cabal/pull/6653)
144+
- Better UTF8 handling, parsed `ShortText` is now valid. [!6588](https://github.com/haskell/cabal/pull/6588)
145+
- More checks in version range parser [!6586](https://github.com/haskell/cabal/pull/6586)
146+
- Require cabal-versions `>=1.25` to be exact [!6654](https://github.com/haskell/cabal/pull/6654)
147+
- Add and use weeder [!6779](https://github.com/haskell/cabal/pull/6779) [!6790](https://github.com/haskell/cabal/pull/6790)

0 commit comments

Comments
 (0)