Skip to content

Changelogs 3.18#12058

Merged
mergify[bot] merged 9 commits into
haskell:3.18from
ffaf1:changelogs-3.18
Jul 10, 2026
Merged

Changelogs 3.18#12058
mergify[bot] merged 9 commits into
haskell:3.18from
ffaf1:changelogs-3.18

Conversation

@ffaf1

@ffaf1 ffaf1 commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator

I have not added a “Unresolved” section yet. added
Once we decide how to deal with all regressions I will incorporate the relevant changelogs or add to the “Unresolved” section. Then (and only then) we can backport this to master.


  • Patches conform to the coding conventions.
  • no. Is this a PR that fixes CI? If so, it will need to be backported to older cabal release branches (ask maintainers for directions).

@Bodigrim

Copy link
Copy Markdown
Collaborator

Might be easier to land #12055 first, or it will be a pain to backport.

Comment thread release-notes/Cabal-3.18.0.0.md Outdated
Comment thread release-notes/Cabal-3.18.0.0.md Outdated
Comment thread release-notes/Cabal-3.18.0.0.md Outdated
Comment thread release-notes/Cabal-3.18.0.0.md
Comment thread release-notes/Cabal-3.18.0.0.md Outdated
Comment thread release-notes/cabal-install-3.18.0.0.md Outdated
Comment thread release-notes/cabal-install-3.18.0.0.md Outdated
Comment thread release-notes/cabal-install-3.18.0.0.md Outdated
Comment thread release-notes/cabal-install-3.18.0.0.md
@Mikolaj

Mikolaj commented Jul 2, 2026

Copy link
Copy Markdown
Member

Thank you all for your reviews. Could you kindly re-review now that @ffaf1 answered the questions?

@Bodigrim

Bodigrim commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

I've been migrating my projects to support Cabal 3.18 (see Bodigrim/cabal-add@08b7913). Here are a few breaking changes, which are not reflected in the changelogs.

  • Distribution.Parsec.Error used to contain only PError and showPError. Now it also includes PErrorWithSource and showPErrorWithSource, both lacking @since pragma and AFAICT missing from changelogs.

    Further, runParseResult used to return NonEmpty PError, but now it is NonEmpty PErrorWithSource. Again, I cannot find this mentioned in the changelog.

  • readProjectConfig now requires an additional argument ProjectFileParser. While the changelog discusses changes to cabal.project parsing (under "Replace cabal project parsing with parsec parser"), it does not mention explicitly that this function changed its type.

    Even more concerningly, the changelog says that in the next release we will remove the legacy parser, so presumably ProjectFileParser argument will be gone again. This is awful, breaking API twice only to do a full circle. Could we just go ahead and drop the legacy parser already?

  • In the same area, the type synonym ProjectConfigSkeleton has changed its meaning from CondTree ConfVar [ProjectConfigPath] ProjectConfig to CondTree ConfVar ([(Maybe URI, ProjectConfigPath)], ProjectConfig). Again, this should be at least briefly mentioned in the changelog, perhaps under the same section as above.

@philderbeast

Copy link
Copy Markdown
Collaborator

@Bodigrim, sorry I missed that1 in the changelog for #10933. Here's the diff:

- type ProjectConfigSkeleton = CondTree ConfVar ([ProjectConfigPath], ProjectConfig)
+ type ProjectConfigSkeleton = CondTree ConfVar ([(Maybe URI, ProjectConfigPath)], ProjectConfig)

Footnotes

  1. I should have checked hoogle. Even though library users would pick up the change via the type synonym, those that use the explicit type it was a synonym for wouldn't be so lucky.

@Bodigrim

Bodigrim commented Jul 3, 2026

Copy link
Copy Markdown
Collaborator

@philderbeast to be clear, my concern is not a breaking change per se: I fully recognise that the nature of cabal-install is that its API is rather fluent. My issue is just that the changelog does not mention it explicitly.

@Mikolaj

Mikolaj commented Jul 7, 2026

Copy link
Copy Markdown
Member

@Bodigrim: thank you for spotting the missing mention of breakage. Could you identify from which PRs the first two come?

In particular, I don't remember the parser decision any more. Maybe we could ask the author.

@ulysses4ever

Copy link
Copy Markdown
Collaborator

Generally, we have failed to find a satisfactory solution for the problem of tracking api changes (we discussed it several times, and there was a solution based on print-api, but I also learned recently that streamly folks have their own solution based on haddock-for-hoogle, I think). Cabal is big and manually tracking those changes looks like a nightmare. Anyone who comes up with a robust automated solution will be my hero!

@ffaf1 ffaf1 force-pushed the changelogs-3.18 branch from 78c50f5 to 0da205f Compare July 8, 2026 11:19
@ffaf1

ffaf1 commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator Author

Backports are in.

I have also added the missing changes (main culprit being #8889), plus added an “Unresolved” section with a lone regression.

@Mikolaj

Mikolaj commented Jul 8, 2026

Copy link
Copy Markdown
Member

May I ask for the last round of reviews, please?

@Bodigrim

Bodigrim commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator

I have also added the missing changes (main culprit being #8889), plus added an “Unresolved” section with a lone regression.

I cannot find it, git diff origin/3.18 ffaf1/changelogs-3.18 | grep Unresolved returns no matches?..

@ffaf1 ffaf1 force-pushed the changelogs-3.18 branch from 0da205f to f7df9e9 Compare July 8, 2026 19:42
@ffaf1

ffaf1 commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator Author

Thanks, I forgot to push that commit. It is in the PR now!

Comment thread release-notes/Cabal-3.10.1.0.md Outdated
Comment thread release-notes/cabal-install-3.18.0.0.md Outdated
@ffaf1 ffaf1 force-pushed the changelogs-3.18 branch from f7df9e9 to ee098ed Compare July 8, 2026 20:57
@mergify mergify Bot added the queued label Jul 10, 2026
@mergify

mergify Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

This pull request spent 2 hours 3 minutes 42 seconds in the queue, including 1 hour 52 minutes 52 seconds running CI.

Required conditions to merge
  • #review-threads-unresolved = 0 [🛡 GitHub branch protection]
  • github-review-approved [🛡 GitHub branch protection]
  • any of [🛡 GitHub branch protection]:
    • check-success = Doctest Cabal
    • check-neutral = Doctest Cabal
    • check-skipped = Doctest Cabal
  • any of [🛡 GitHub branch protection]:
    • check-success = Meta checks
    • check-neutral = Meta checks
    • check-skipped = Meta checks
  • any of [🛡 GitHub branch protection]:
    • check-success = Validate post job
    • check-neutral = Validate post job
    • check-skipped = Validate post job
  • any of [🛡 GitHub branch protection]:
    • check-success = docs/readthedocs.org:cabal
    • check-neutral = docs/readthedocs.org:cabal
    • check-skipped = docs/readthedocs.org:cabal
  • any of [🛡 GitHub branch protection]:
    • check-success = Bootstrap post job
    • check-neutral = Bootstrap post job
    • check-skipped = Bootstrap post job
  • any of [🛡 GitHub branch protection]:
    • check-success = whitespace
    • check-neutral = whitespace
    • check-skipped = whitespace
  • any of [🛡 GitHub branch protection]:
    • check-success = Check sdist post job
    • check-neutral = Check sdist post job
    • check-skipped = Check sdist post job
  • any of [🛡 GitHub branch protection]:
    • check-success = Changelogs
    • check-neutral = Changelogs
    • check-skipped = Changelogs

mergify Bot added a commit that referenced this pull request Jul 10, 2026
@mergify mergify Bot added the merge delay passed Applied (usually by Mergify) when PR approved and received no updates for 2 days label Jul 10, 2026
@mergify mergify Bot merged commit 0fc7cc0 into haskell:3.18 Jul 10, 2026
58 checks passed
@mergify mergify Bot removed the queued label Jul 10, 2026
@ffaf1

ffaf1 commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator Author

@mergify backport master

@mergify

mergify Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

backport master

✅ Backports have been created

Details

@mergify mergify Bot mentioned this pull request Jul 10, 2026
2 tasks
mergify Bot added a commit that referenced this pull request Jul 13, 2026
e-kwsm pushed a commit to e-kwsm/cabal that referenced this pull request Jul 13, 2026
* Add changelogs 3.18.0.0

* Add/update changelog references

* Remove changelog files

* Fix whitespace

* Integrate Bodigrim’s suggestions

* Integrate backports (changelog entries)

* Fix missing changes

Thanks to Bodigrim

* Fix PR number

* Add “Unresolved” section

(cherry picked from commit 0fc7cc0)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

attention: needs-backport master merge delay passed Applied (usually by Mergify) when PR approved and received no updates for 2 days priority: high 🔥 squash+merge me Tell Mergify Bot to squash-merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants