Skip to content
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: Upgrade 8.10 to 8.10.7, Haddock to 9.0.2 #2201

Merged
merged 3 commits into from
May 13, 2022
Merged

Conversation

DigitalBrains1
Copy link
Member

Now that the ghc package documentation is on Hackage for 8.10.7, we can
upgrade our build version.

Furthermore, we now build Haddock documentation for Hackage with 9.0.2
now.

This fixes a Haddock bug we encountered:

Fixes #2200

Still TODO:

  • Write a changelog entry (see changelog/README.md)
  • Check copyright notices are up to date in edited files

@DigitalBrains1 DigitalBrains1 force-pushed the upgrade-ghc-8.10 branch 2 times, most recently from 943065d to 426cf3b Compare May 10, 2022 15:17
leonschoorl added a commit that referenced this pull request May 11, 2022
As seen in #2201, updates to the docker images can cause stuff in the
cache to be broken.
By putting the docker image into the cache key we always start clean
whenever we update the docker images.
DigitalBrains1 pushed a commit that referenced this pull request May 11, 2022
As seen in #2201, updates to the docker images can cause stuff in the
cache to be broken.
By putting the docker image into the cache key we always start clean
whenever we update the docker images.
leonschoorl and others added 3 commits May 12, 2022 13:43
The haddock shipped with GHC 9 was generating warnings about not being
able to link to `Tracked` and `Naming` because those types aren't being
exported.

But the docs making those references are on things which weren't
exported either.

The doc for the internal constructor `U` mistakenly referred to the no
longer existing `unsafeToInteger`.

Co-authored-by: Peter Lebbing <[email protected]>
As seen in #2201, updates to the docker images can cause stuff in the
cache to be broken.
By putting the docker image into the cache key we always start clean
whenever we update the docker images.

The `-3` is the cache bust suffix that gitlab automatically adds,
except to the fallback key. See:
https://docs.gitlab.com/ee/ci/caching/#clear-the-cache-manually
https://docs.gitlab.com/ee/ci/caching/#cache-key-names
Now that the ghc package documentation is on Hackage for 8.10.7, we can
upgrade our build version.

Furthermore, we now build Haddock documentation for Hackage with 9.0.2
now.

This fixes a Haddock bug we encountered:

Fixes #2200
@martijnbastiaan martijnbastiaan merged commit a7b10fb into master May 13, 2022
@martijnbastiaan martijnbastiaan deleted the upgrade-ghc-8.10 branch May 13, 2022 09:26
DigitalBrains1 pushed a commit that referenced this pull request May 30, 2022
As seen in #2201, updates to the docker images can cause stuff in the
cache to be broken.
By putting the docker image into the cache key we always start clean
whenever we update the docker images.

The `-3` is the cache bust suffix that gitlab automatically adds,
except to the fallback key. See:
https://docs.gitlab.com/ee/ci/caching/#clear-the-cache-manually
https://docs.gitlab.com/ee/ci/caching/#cache-key-names
DigitalBrains1 added a commit that referenced this pull request May 30, 2022
CI: Upgrade 8.10 to 8.10.7, Haddock to 9.0.2 (copy #2201)
DigitalBrains1 added a commit that referenced this pull request Feb 14, 2023
The full tests that are run on the `1.6` branch accidentally refer to a
non-existing docker image for 8.10: PR #2201 introduces 8.10.7 as the
version for the docker image, but omitted the GHC version bump for the
`build_and_test` target.
DigitalBrains1 added a commit that referenced this pull request Feb 14, 2023
The full tests that are run on the `1.6` branch accidentally refer to a
non-existing docker image for 8.10: PR #2201 introduces 8.10.7 as the
version for the docker image, but omitted the GHC version bump for the
`build_and_test` target.
DigitalBrains1 added a commit that referenced this pull request Mar 5, 2025
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.
DigitalBrains1 added a commit that referenced this pull request Mar 6, 2025
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.
mergify bot pushed a commit that referenced this pull request Mar 6, 2025
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)

# Conflicts:
#	.ci/docker/build-and-publish-docker-image.sh
#	.ci/gitlab/benchmark.yml
#	.ci/gitlab/common.yml
#	.github/workflows/ci.yml
DigitalBrains1 added a commit that referenced this pull request Mar 6, 2025
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)
DigitalBrains1 added a commit that referenced this pull request Mar 6, 2025
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]>
DigitalBrains1 added a commit that referenced this pull request Mar 7, 2025
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]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Haddock before GHC 8.10.5 doesn't support dashes in anchors
4 participants