-
Notifications
You must be signed in to change notification settings - Fork 702
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
CI RFC: remove dependency on cabal-plan #8891
Labels
Comments
I’m ok with this. I remember that when I tried replacing |
I think it was because of #7679 (and also it started building stuff according to #7648 (comment) ?!?) If cabal list-bin works now, i agree on removing cabal-plan |
Me too. Mostly for simplicity. One less moving part. |
ulysses4ever
added a commit
that referenced
this issue
Apr 3, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 5, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 6, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 6, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 8, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 8, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 13, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 13, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 14, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 14, 2023
ulysses4ever
added a commit
that referenced
this issue
Apr 17, 2023
mergify bot
added a commit
that referenced
this issue
Apr 17, 2023
CI: remove dependency on cabal-plan (#8891)
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Currently, our CI
cabal install
scabal-plan
on every validate job. Here're timings of every step in a Validate ubuntu-20.04 ghc-9.4.2 run (only longer-than-minute steps are shown):My rough calculation is that the cabal-plan step takes more than 10% of time (~13% perhaps). I think it's a non-negligable price. Why do we pay it?
If you look into
validate.sh
-- the actual validation script, it usescabal-plan
for two use cases:cabal-plan list-bin
to find executables built bycabal
cabal-plan top
to list all packages planned for the build topologically sorted.The first use case is obsolete since we have
cabal list-bin
. It should be easy to swap one for another.The second use case doesn't feel useful to me. Does anyone have a different feeling? Does it make sense to pay 13% of time for it?
If the answer for the latter question is No, I think we should consider removing dependency on cabal-plan.
There's one more reason I'd like to remove this dependency:
cabal-plan
does not update for newer GHCs particularly fast. E.g. GHC 9.6.1 has been released more than one month ago, andcabal-plan
still does not build withoutallow-newer
.If people think that we should have
cabal-plan
in CI, I think we could do it and solve the two problems I mention here via prebuilt binaries: downloading those will both save most of the time and relieve us of compatibility considerations.The text was updated successfully, but these errors were encountered: