-
Notifications
You must be signed in to change notification settings - Fork 696
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
Reduce amount of CI round-tripping required by contributors #10263
Comments
We do but it is not enforced strictly. |
It's possible to predict these, actually: the PR number is shared with issue numbers, but otherwise your only problem is someone else getting an issue or PR in before you do. I haven't specifically dealt with this, but multiple times have predicted links to PRs I'm about to put up. |
These tell us when core structures change, which among other things is an indication that a |
An example from my recent PR: #10287 The job is killed after Why not always run all the tests and report all the failures at once to a user? |
@mpickering I think there's no strong opposition to what you propose — just a matter of cooking a PR flipping the right switch. If memory serves, @andreasabel worked a bit on orchestrating CI, maybe he has an opinion? |
iirc it was done to conserve resources. However since then we got more free ci time and parallelism from github, so changing it should be fine. |
I agree. I generally use
|
Thanks all! I submitted #10291 setting |
Which means that if a Windows job fails, all other jobs in the matrix will be allowed to finish (other platforms, as well as other compilers on Windows, etc.) Inspired by the discussion at #10263
Which means that if a Windows job fails, all other jobs in the matrix will be allowed to finish (other platforms, as well as other compilers on Windows, etc.) Inspired by the discussion at #10263
I wonder how big the benefit of enforcing a formatter automatically is instead of requesting it for larger patches manually. I've set out to put up the rather simple mr here: #10488 today and besides the old base branch issue my experience was:
The benefits for regular contributors might well outweigh the cost of such friction. But if how a formatter is encouraged/recommended/required/enforced is reevaluated in the future I wanted to put this down here so it can be considered as an additional data point. |
I think automatic code formatting is a lousy idea, but I don't run this project. :/ |
As the most active contributor to the project, I would certainly hope your opinions about how things should be done were taken seriously. Thanks for all your work recently! |
I just proposed on Matrix that, if we're going to do this at all, we should change CI from "complain" to "fix" like we did for the Whitespace job. |
And I just opined on Matrix that having CI fix anything will run into endless merge conflicts on contributors' side. |
There is currently quite a lot of back-and-forth which is required when contributing patches to Cabal which makes the developer experience sometimes cumbersome.
In my mind, the goal should be to perform 1 round-trip with CI. A developer submits a MR, sees ALL issues with the patch and can update the patch once in order to fix all the problems. Ideally all the issues are reproducible locally so that iteration can be performed locally on a specific test.
Off the top of my head here are some reasons why you might have to perform multiple CI rounds:
changelog.d
template has a MR number field, which can only be filled in after a MR is created.There is also the suggestion of adding a file which tracks the API of
Cabal
andCabal-syntax
(#10259) which would add another bullet point to this list.In order to fix these issues, here are some possible suggestions:
The text was updated successfully, but these errors were encountered: