Conversation
|
Nice! Could you add 9.0 and 9.2 CI jobs too? |
|
IIRC If you checkout the commit it was added, and ( Luckily TBH, #7802 would be useful for weighting in |
I'm a co-maintainer of I see a PR from 5 days ago, and now there is a revision. and no mention that revision was made. (EDT: though it looks like herbert forgot to give me rights on GitHub, though I have them on Hackage). |
|
You're right I should have mentioned the revision on the github. Anyway, I made a revision! |
|
Also Now I have to figure out what was updated in the meantime. |
|
@phadej could you push 8.10.7, 9.0.2, and 9.2.1 containers? |
|
It looks like those images can't be easily updated because they use hvr's PPA: phadej/docker-ghc#8 We'll have to switch to one of
just switching container is easier for now, so let's try that |
phadej's images use hvr's ppa, which stops at ghc 9.0
a0bf449 to
106c99a
Compare
|
One or two jobs are already switched to ghcup, but these jobs are very different beasts, so this wouldn't carry over easily, I'm sure. |
huh. I guess that image does not have profiling libraries? |
Yup, they are stripped out to save some space. This was mimicked from the old haskell debian packages. I don't think this is a huge saving though, I'd be happy to put them back if there is a need. Although the other thing to consider is the official images only keep the last 2-3 major versions of GHC up to date with cabal-install + stack. So for example 8.8 still has cabal-install 3.4 and won't be updated. |
- Remove cabal-plan, we actually never call it (I think) - Remove vendored cabal-doctest - Remove few stray allow-newer clauses no longer necessary, apparently Originally done by @gbaz in PR haskell#7907.
|
What is the plan here? If we continue to be blocked on getting CI working with newer ghcs beyond a certain point, I would rather merge the fixes that allow cabal to build with newer ghcs, and then have a separate pr to actually give CI on those configurations. |
|
@gbaz, @andreabedini is working on it in #7952 |
|
My work on #7952 is going a bit slowly because each workflow run has to be approved by a maintainer, which means it might that days to test again after fixing a typo. Is there any chance we can relax that constraint, even temporarily? |
|
I just found and enabled a setting that does just that, you should be able to iterate quickly now. If that does not work, I believe you can test the workflows on your fork |
|
I'll review this soon but I believe off this changes have been incorporated into #7952. You can see a failed build here. @Mikolaj has already suggested a fix in #7952 (comment). |
* Avoid templating GitHub Actions workflow GitHub Actions workflow have sufficient power to express what we need. We don't need to maintain and additional templating solution on top. * Add GHC 9.2, bump bounds, fix syntax * Switch to official haskell image * Always run cli tests for ghc 8.2 and above * Remove step to regenerate GitHub Actions workflows * Fix missed reference to GHC version * Fix yaml syntax * Fix type in the GHC version * More CI changes - Run bootstrap.yml on ubuntu-latest - Use explicit matrix for linux.yml - Drop containers in favour of haskell setup action - Drop workaround for ancient git * Remove unneeded package from CI setup I belive this is only necessary to run `cabal man` which we do not in the CI. * Drop old GHCs from the CI * Switch macos.yml to haskell/action/setup Also add the same GHC versions as Linux. * Simplify CI - Remove cabal-plan, we actually never call it (I think) - Remove vendored cabal-doctest - Remove few stray allow-newer clauses no longer necessary, apparently Originally done by @gbaz in PR #7907. * Mark GHC 9.2.1 as experimental * Remove reference to cabal-plan from validate.sh * setup-haskell action already runs cabal update * Add missing build matrix in test-windows-dogfood * Replace cabal-plan list-bin with cabal list-bin * Enable caching in the CI * Fix typo * Remove continue-on-error until I figure it out * Keep naming consistent * Temporarily disable 8.0.2 on macos * Add missing step id * Tweaks Remove workaround for nektos/act, it accidentally sneaked in. * More tweaks * Tweaks * Restore cabal-plan, temporarily mark everything experimental cabal list-bin doesn't seem to work like cabal-plan does. * Tweaks * Ensure cabal-plan executable gets built * Install automake on MacOS * Tweaks * Tweaks Link experimental flags to relative GitHub issues * Fix typo
|
It seems this can be closed, no? we have succesful build with failing tests |
|
Could somebody make a diff a verify? I believe this can be done both on commandline (or with gitk) and also using github. |
|
No need. This branch was just intended to get things working. It wasn't special. If another branch has picked up enough changes to get things working, I'm happy :-) |
|
We still fail on 9.2 because of the overlapping patterns (see https://github.com/haskell/cabal/runs/5285920627?check_suite_focus=true#step:8:1574). I will have a go at it today. Tracking in #8012 |
|
FYI cabal now builds with GHC 9.2 but some haddock related tests fail because of #7987 this particular issue is truly done and dusted :) |
* Avoid templating GitHub Actions workflow GitHub Actions workflow have sufficient power to express what we need. We don't need to maintain and additional templating solution on top. * Add GHC 9.2, bump bounds, fix syntax * Switch to official haskell image * Always run cli tests for ghc 8.2 and above * Remove step to regenerate GitHub Actions workflows * Fix missed reference to GHC version * Fix yaml syntax * Fix type in the GHC version * More CI changes - Run bootstrap.yml on ubuntu-latest - Use explicit matrix for linux.yml - Drop containers in favour of haskell setup action - Drop workaround for ancient git * Remove unneeded package from CI setup I belive this is only necessary to run `cabal man` which we do not in the CI. * Drop old GHCs from the CI * Switch macos.yml to haskell/action/setup Also add the same GHC versions as Linux. * Simplify CI - Remove cabal-plan, we actually never call it (I think) - Remove vendored cabal-doctest - Remove few stray allow-newer clauses no longer necessary, apparently Originally done by @gbaz in PR haskell#7907. * Mark GHC 9.2.1 as experimental * Remove reference to cabal-plan from validate.sh * setup-haskell action already runs cabal update * Add missing build matrix in test-windows-dogfood * Replace cabal-plan list-bin with cabal list-bin * Enable caching in the CI * Fix typo * Remove continue-on-error until I figure it out * Keep naming consistent * Temporarily disable 8.0.2 on macos * Add missing step id * Tweaks Remove workaround for nektos/act, it accidentally sneaked in. * More tweaks * Tweaks * Restore cabal-plan, temporarily mark everything experimental cabal list-bin doesn't seem to work like cabal-plan does. * Tweaks * Ensure cabal-plan executable gets built * Install automake on MacOS * Tweaks * Tweaks Link experimental flags to relative GitHub issues * Fix typo
* Avoid templating GitHub Actions workflow GitHub Actions workflow have sufficient power to express what we need. We don't need to maintain and additional templating solution on top. * Add GHC 9.2, bump bounds, fix syntax * Switch to official haskell image * Always run cli tests for ghc 8.2 and above * Remove step to regenerate GitHub Actions workflows * Fix missed reference to GHC version * Fix yaml syntax * Fix type in the GHC version * More CI changes - Run bootstrap.yml on ubuntu-latest - Use explicit matrix for linux.yml - Drop containers in favour of haskell setup action - Drop workaround for ancient git * Remove unneeded package from CI setup I belive this is only necessary to run `cabal man` which we do not in the CI. * Drop old GHCs from the CI * Switch macos.yml to haskell/action/setup Also add the same GHC versions as Linux. * Simplify CI - Remove cabal-plan, we actually never call it (I think) - Remove vendored cabal-doctest - Remove few stray allow-newer clauses no longer necessary, apparently Originally done by @gbaz in PR haskell#7907. * Mark GHC 9.2.1 as experimental * Remove reference to cabal-plan from validate.sh * setup-haskell action already runs cabal update * Add missing build matrix in test-windows-dogfood * Replace cabal-plan list-bin with cabal list-bin * Enable caching in the CI * Fix typo * Remove continue-on-error until I figure it out * Keep naming consistent * Temporarily disable 8.0.2 on macos * Add missing step id * Tweaks Remove workaround for nektos/act, it accidentally sneaked in. * More tweaks * Tweaks * Restore cabal-plan, temporarily mark everything experimental cabal list-bin doesn't seem to work like cabal-plan does. * Tweaks * Ensure cabal-plan executable gets built * Install automake on MacOS * Tweaks * Tweaks Link experimental flags to relative GitHub issues * Fix typo
build all now works with 9.2. For now, removing vendoring of cabal-doctest (not sure why it was vendored to begin with). If that's wrong let me know. There were no real comments why it was vendored. Also removing a few stray allow-newer clauses no longer necessary, apparently.