-
Notifications
You must be signed in to change notification settings - Fork 724
make sure cabal-install is compatible with Cabal #10264
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
|
|
Problem is, I need the sdists from an earlier step, or else generate them myself and then make sure the tree doesn't interfere with my install from the sdist somehow. |
65cd68a to
8c0b60e
Compare
|
Also, it's bad enough that |
2db6a88 to
056ea72
Compare
|
Repeating some steps in a separate workflow may be a lesser evil, I think. Storing the matrix in a json file sounds like a reasonable idea too. |
c610092 to
6ae49f7
Compare
|
Can't test this further without backporting it to a release branch. Although it'd be nice if I could identify a PR targeting |
6ae49f7 to
590dc63
Compare
Actually, I would; they just become conditions for the workflow to run instead of conditions for various steps to run. |
|
Which conditions would you check on a standalone workflow? You can select the platform, the GHC version, and the target branch declaratively. Not that this was super important. Most of all, I'm concerned and wary about adding anything to validate.yml at this point. |
0423c5f to
c36d094
Compare
6e078c0 to
3ef5b02
Compare
b844e82 to
d29c2ed
Compare
Mikolaj
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's amazing!
6b7d532 to
2f18811
Compare
|
Most recent change corrected it to actually test the problematic case: it now succeeds trivially if This also means it shouldn't test the latest release of GHC branches, it should test the first release. (Which in turn means that there wouldn't be any duplication with |
92a8009 to
a4544b3
Compare
ulysses4ever
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cool!
See haskell#9833 If a ghc ships with a compatible Cabal, it will be preferred by the solver on `cabal install cabal-install`; the new `cabal-install` should in fact be compatible. So we test this on release branches that have had at least one release on Hackage. (Ideally we'd check ghc instead, but we can't do that from GHA. Even checking Hackage is pretty painful.)
a4544b3 to
3a7a0b7
Compare
|
@mergify backport 3.12 |
✅ Backports have been created
|
|
@mergify backport 3.14 |
✅ Backports have been created
|
|
Note: it's fine to do this post-release, since it will only do anything once a ghc is shipped with |
make sure cabal-install is compatible with Cabal (backport #10264)
See #9833
If a ghc ships with a compatible Cabal, it will be preferred by the solver on
cabal install cabal-install; the newcabal-installshould in fact be compatible. So we test this on release branches that have been included in at least one GHC release.Fixes: #9833
Fixes: #9835
Fixes: #9838
Fixes: #9863
CI note: there's really no way to test this, aside from reproducing #9833 for which it's a bit too late. Testing will only be possible with the 9.12 branch and future release branches. As such, manual CI would mean making an sdist of the
HEADof9.12branch, then trying to build that sdist against 9.10.1 (which is essentially what this does, except that it won't actually do that test until it's backported). Note that that build may well succeed, because I've been trying to be careful with backports specifically to avoid repeating the mistakes we made with 3.10.3; the point of this PR is to try to catch that kind of failure in CI before we make a release with a breaking change.Template B: This PR does not modify behaviour or interface
E.g. the PR only touches documentation or tests, does refactorings, etc.
Include the following checklist in your PR: