PVP breakage in Cabal releases
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
**Describe the bug**
As a dev team, we are failing in spotting PVP breakage.
**To Reproduce**
Last `Cabal` release (`3.12.1.0`) was a minor one (that is from from `3.12.0.0` to `3.12.1.0`).
This means no PVP breaking changes should have been introduced.
Alas, at least two of those breaking changes are present in the release, see PRs #9766 and #9878. Both those PRs introduce a new constructor, hence the backport actually changed the API for `Cabal`.
**Expected behavior**
We don't let breaking changes slip in minor cabal releases, be it with the help of a checklist or automated testing or anything else (suggestion welcome).
Contributor guide
Research direction
Start by reviewing PRs #9766 and #9878 and the open linked PR #10259 to understand the reported constructor additions and current proposed approach. Then inspect the Cabal release process for where PVP compatibility is checked. Done means minor Cabal releases reliably prevent or flag breaking API changes, whether through a checklist or automated testing.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell
- Domain
- build-system, release
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100