-
Notifications
You must be signed in to change notification settings - Fork 701
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
Add a workflow to dry run cabal-install #10740
base: master
Are you sure you want to change the base?
Conversation
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.
We already have something very similar in purpose: https://github.com/haskell/cabal/blob/master/.github/workflows/check-sdist.yml Could you instead look why that one didn't help and possibly improve it? Maybe, ask the author @geekosaur if necessary. Otherwise, I'm worried about proliferation of small workflows: it's quickly becoming unmanageable!
@ulysses4ever on the description of #10738, I mentioned why the existing workflow doesn't catch this problem.
Also the existing workflow runs on a matrix whereas this one runs only on the latest GHC and I think that would be sufficient to catch these kinds of errors. cabal/.github/workflows/check-sdist.yml Lines 49 to 50 in 8e35c5d
I've requested a review from @geekosaur, knowing that he's been involved in maintaining the GitHub workflows. |
It didn't help because it only runs on released versions, not As to "out of hand", we have a lot of moving parts; we should not be surprised that a lot of things need to be checked. And combining them to shrink the checks list causes other problems, especially if the checks aren't very related. |
Great, let’s make it do more! How about that?
Fair, but let’s just add the new stuff under an |
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.
Also see my mainline comment about check-sdist
; that may make sense to merge with this, but it'll need a bit of an overhaul including removing the docs hack as mentioned in the first comment.
Why does it say |
Leftover from debugging (I removed similar things from the release branch but apparently missed that one on |
0aa7d62
to
293e517
Compare
Could the actual fix for #10738 please be merged soon? And then you can spend eternity discussing CI jobs. |
293e517
to
430193f
Compare
I'd like to see this merged as-is, if possible. Mentioned GitHub workflow script changes, such as merging workflows, could be done separately afterwards, couldn't they? Without the fix, any contributor that wants to install cabal-install built from source is going to be met with:
For that reason, I've added a high priority label. |
@geekosaur, @ulysses4ever: are you fine with removing your change requests and moving these considerations to future work? If you'd like to open a ticket with these, that may be a good idea, too. |
I'm fine with removing mine. I think Brandon's request is more important, and that I'm not sure. But he can decide it, I guess. |
It's really bad that this PR lumps together two absolutely unrelated things: the casing fix, which is indeed critical, and the new CI job, which is the main point of contention in our comments. I thing it'd be good to be principled here, @Mikolaj, and request the author to resubmit as two separate PRs. But I won't die over it. |
I did that because it was a cheap way to ensure this doesn't happen again. Happy to split if need be. |
I should note that this still won't detect the |
430193f
to
64d7304
Compare
I do and have moved the |
At the risk of derailing even further, I'm surprised that the main CI pipeline does not go through Adapting Haskell CI boilerplate could take quite a long time, and just firing I don't quite understand why there is a carefully crafted list of file exclusions when build is not triggered - is saving CI resources really that critical? On the other hand, even if this job is not fired on the very first change to (End of unsolicited advices ;) |
@geekosaur, @ulysses4ever: if I'm not asking for too much, could you bring back your change requests now? :) And, in general, let's discuss. I think what @Bodigrim says is very on point. |
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.
LGTM, thanks!
We should, perhaps, continue discussing issues raised by Bodigrim above. Maybe open a ticket?
61a5238
to
6e9b141
Compare
- Push to any branch - Only check with the latest GHC version - Shorten name of job - Don't skip if run on master - Don't ignore **/README.md files - Ignore known test paths - Don't ignore change logs
6e9b141
to
54229cd
Compare
@ulysses4ever, I've opened "Mix include and exclude paths in workflows", #10777. |
That's not what I meant but thank you! I meant a ticket out of Bodigrim's comment: we might need a simple sdist workflow. Apparently, the existing one is very special. |
Fixes #10738. Adds a dry run check of
cabal install cabal-install
and then fixes the casing ofextra-source-files
inCabal-hooks
.Here's a failing run, https://github.com/haskell/cabal/actions/runs/12736390756/job/35496224194.
Excluding
.cabal
files that are test packages, only 4 of our packages useextra-source-files
: