Skip to content

Commit 88c8ccf

Browse files
CI: Downgrade Cabal for GHC 8.10.7 (#2899) (#2902)
Cabal 3.14 silently ignores `haddock-options` in `cabal.project`. The change is deliberate (though not warning about it probably is not). The change is documented in some places: https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-3.14.0.0.md https://github.com/haskell/cabal/blob/master/release-notes/WIP-Cabal-3.12.x.0.md haskell/cabal#9177 (Note that the deprecation message apparently never made it to the release notes) We should probably think about how to fix this in the future, but for now rolling back to Cabal 3.12 will allow us to build the documentation as we want to again. The mentioned `haddock-version-cpp` flag in the linked cabal PR 9177 above to get a CPP define for `__HADDOCK_VERSION__` did not work at all for me. PR #2201 was supposed to update our Haddock generation to 9.0.2 but accidentally picked 8.10.7 for the uploads to Hackage, which also fixed issue #2200. I'm careful about upgrading Haddock now as I've experienced several times now that there were undocumented changes going from one version to the next that broke some rendering, and carefully rereading our complete Haddock to scan for such breakage is an impossible task. One day we'll have to upgrade, when we drop GHC 8.10 from Clash. (cherry picked from commit 9d94353) Co-authored-by: Peter Lebbing <[email protected]>
1 parent 0829840 commit 88c8ccf

File tree

6 files changed

+8
-9
lines changed

6 files changed

+8
-9
lines changed

.ci/docker/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ RUN git clone https://github.com/verilator/verilator verilator \
111111

112112
FROM builder AS build-ghc
113113

114-
ARG ghcup_version="0.1.30.0"
114+
ARG ghcup_version="0.1.40.0"
115115

116116
# Must be explicitly set
117117
ARG ghc_version

.ci/docker/build-and-publish-docker-image.sh

+3-2
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ elif [[ "$1" != "" ]]; then
1414
exit 1
1515
fi
1616

17-
UBUNTU_VERSION=jammy-20240911.1
17+
UBUNTU_VERSION=jammy-20250126
1818
GHC_VERSIONS=("9.10.1" "9.8.4" "9.6.6" "9.4.8" "9.2.8" "9.0.2" "8.10.7" "8.8.4" "8.6.5")
19-
CABAL_VERSION="3.14.1.0"
19+
CABAL_VERSIONS=("3.14.1.1" "3.14.1.1" "3.14.1.1" "3.14.1.1" "3.14.1.1" "3.14.1.1" "3.12.1.0" "3.14.1.1" "3.14.1.1")
2020

2121
# We want to use docker buildkit so that our layers are built in parallel. This
2222
# is ignored completely on versions of docker which don't support buildkit.
@@ -25,6 +25,7 @@ export DOCKER_BUILDKIT=1
2525
for i in "${!GHC_VERSIONS[@]}"
2626
do
2727
GHC_VERSION="${GHC_VERSIONS[i]}"
28+
CABAL_VERSION="${CABAL_VERSIONS[i]}"
2829

2930
docker build \
3031
--build-arg UBUNTU_VERSION=${UBUNTU_VERSION} \

.ci/gitlab/benchmark.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
.benchmark:
2-
image: ghcr.io/clash-lang/clash-ci:$GHC_VERSION-20250102
2+
image: ghcr.io/clash-lang/clash-ci:$GHC_VERSION-20250306
33
stage: test
44
timeout: 2 hours
55
variables:

.ci/gitlab/common.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ default:
88
- stuck_or_timeout_failure
99

1010
.common:
11-
image: ghcr.io/clash-lang/clash-ci:$GHC_VERSION-20250102
11+
image: ghcr.io/clash-lang/clash-ci:$GHC_VERSION-20250306
1212
timeout: 10 minutes
1313
stage: build
1414
variables:
1515
# Note that we copy+paste the image name into CACHE_FALLBACK_KEY. If we don't,
1616
# $GHC_VERSION gets inserted at verbatim, instead of resolving to some ghc version.
17-
CACHE_FALLBACK_KEY: $CI_JOB_NAME-master-ghcr.io/clash-lang/clash-ci:$GHC_VERSION-20250102-3-3-non_protected
17+
CACHE_FALLBACK_KEY: $CI_JOB_NAME-master-ghcr.io/clash-lang/clash-ci:$GHC_VERSION-20250306-3-3-non_protected
1818
GIT_SUBMODULE_STRATEGY: recursive
1919
TERM: xterm-color
2020
cache:

.github/workflows/ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ jobs:
139139

140140
# Run steps inside the clash CI docker image
141141
container:
142-
image: ghcr.io/clash-lang/clash-ci:${{ matrix.ghc }}-20250102
142+
image: ghcr.io/clash-lang/clash-ci:${{ matrix.ghc }}-20250306
143143

144144
env:
145145
THREADS: 2

.gitlab-ci.yml

-2
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,6 @@ haddock:
8282
extends: .common-local
8383
needs: []
8484
stage: test
85-
variables:
86-
GHC_VERSION: 9.0.2
8785
artifacts:
8886
paths:
8987
- hadocs/*/*

0 commit comments

Comments
 (0)