Skip to content

Commit f58402e

Browse files
authored
Ghc 9.8 upgrade (#1460)
* Bump cabal index state. * Make tls/crypton work. * Thread a connection manager which allows EMS around. * Bump again. * Another bump. * Commentary for reverting the AllowEMS change. * Make fourmolu happy. * Bump versions/packages for compatibility with GHC 9.8. * Fmt fix... * Compatible liftA2 * Format 😢 * Attempt a build. Still need to do haskell-dev-tools eventually. * Turn x-partial into a warning for unit tests. * Attempt to addressing breaking warnings/errors. * Turn off the new x-partial warnings. * Format cabal file. * Update docs, workflows and makefiles to use ghc-9.8. * Lint with new haskell-dev-tools. * Make a release. * learnyouahaskell.com seems to be down. There is a community fork which may be more reliable/up-to-date anyway: https://learnyouahaskell.github.io. * Fix benches.
1 parent cfbcd5b commit f58402e

File tree

22 files changed

+63
-45
lines changed

22 files changed

+63
-45
lines changed

.github/workflows/bench.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ jobs:
55
benchmarks:
66
name: benchmarks
77
runs-on: ubuntu-latest
8-
container: fossa/haskell-static-alpine:ghc-9.4.8
8+
container: fossa/haskell-static-alpine:ghc-9.8.2
99

1010
steps:
1111
- uses: dtolnay/rust-toolchain@stable

.github/workflows/build-all.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ${{ matrix.os }}
1111
container: ${{ matrix.container }}
1212
env:
13-
GHC_VERSION: '9.4.8'
13+
GHC_VERSION: '9.8.2'
1414

1515

1616
defaults:
@@ -23,25 +23,25 @@ jobs:
2323
include:
2424
- os: ubuntu-latest
2525
os-name: Linux
26-
container: fossa/haskell-static-alpine:ghc-9.4.8
26+
container: fossa/haskell-static-alpine:ghc-9.8.2
2727
project-file: cabal.project.ci.linux
28-
ghc: '9.4.8'
28+
ghc: '9.8.2'
2929

3030
# macos-latest pointed at macos-12 this before it was changed to ARM.
3131
- os: macos-12
3232
os-name: macOS-intel
3333
project-file: cabal.project.ci.macos
34-
ghc: '9.4.8'
34+
ghc: '9.8.2'
3535

3636
- os: windows-latest
3737
os-name: Windows
3838
project-file: cabal.project.ci.windows
39-
ghc: '9.4.8'
39+
ghc: '9.8.2'
4040

4141
- os: macos-latest
4242
os-name: macOS-arm64
4343
project-file: cabal.project.ci.macos
44-
ghc: '9.4.8'
44+
ghc: '9.8.2'
4545

4646
steps:
4747

@@ -62,7 +62,7 @@ jobs:
6262
if: ${{ !contains(matrix.os, 'ubuntu') }}
6363
with:
6464
ghc-version: ${{ matrix.ghc }}
65-
cabal-version: '3.10.2.1'
65+
cabal-version: '3.10.3.0'
6666

6767
# Set up Rust.
6868
# This action installs the 'minimal' profile.
@@ -315,8 +315,8 @@ jobs:
315315
echo ${GITHUB_SHA:0:12}
316316
317317
VERSION=$(echo $(Linux-binaries/fossa --version))
318-
EXPECTED="fossa-cli version ${{ steps.get-version.outputs.VERSION }} (revision ${GITHUB_SHA:0:12} compiled with ghc-9.4)"
319-
echo " VERSION: $VERSION"
318+
EXPECTED="fossa-cli version ${{ steps.get-version.outputs.VERSION }} (revision ${GITHUB_SHA:0:12} compiled with ghc-9.8)"
319+
echo "VERSION: $VERSION"
320320
echo "EXPECTED: $EXPECTED"
321321
322322
[ "$GITHUB_REF_TYPE" = "tag" ] && echo "Ref type OK"

.github/workflows/integrations-test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@ jobs:
1313
name: integration-test
1414
runs-on: "fossa-cli-integration-runner"
1515
# Be sure to update the env below too
16-
container: fossa/haskell-static-alpine:ghc-9.4.8
16+
container: fossa/haskell-static-alpine:ghc-9.8.2
1717

1818
env:
19-
GHC_VERSION: '9.4.8'
19+
GHC_VERSION: '9.8.2'
2020

2121
steps:
2222
- uses: dtolnay/rust-toolchain@stable

.github/workflows/lint.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ jobs:
66
linter-check:
77
name: linter-check
88
runs-on: ubuntu-latest
9-
container: ghcr.io/fossas/haskell-dev-tools:9.4.8
9+
container: ghcr.io/fossas/haskell-dev-tools:9.8.2
1010

1111
steps:
1212
- uses: dtolnay/rust-toolchain@stable
@@ -39,7 +39,7 @@ jobs:
3939
format-check:
4040
name: formatter-check
4141
runs-on: ubuntu-latest
42-
container: ghcr.io/fossas/haskell-dev-tools:9.4.8
42+
container: ghcr.io/fossas/haskell-dev-tools:9.8.2
4343

4444
steps:
4545
- uses: dtolnay/rust-toolchain@stable
@@ -56,7 +56,7 @@ jobs:
5656
cabal-format-check:
5757
name: cabal-format-check
5858
runs-on: ubuntu-latest
59-
container: ghcr.io/fossas/haskell-dev-tools:9.4.8
59+
container: ghcr.io/fossas/haskell-dev-tools:9.8.2
6060

6161
steps:
6262
- uses: actions/checkout@v4

Changelog.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
# FOSSA CLI Changelog
22

3-
## Unreleased
3+
## 3.9.31
44

55
- Resolve an issue parsing toml configuration files. ([#1459](https://github.com/fossas/fossa-cli/pull/1459))
66
- Gradle: ignore deprecated configurations ([#1457](https://github.com/fossas/fossa-cli/pull/1457))
7+
- Upgrade the GHC we use to build the CLI. ([#1460](https://github.com/fossas/fossa-cli/pull/1460))
78

89
## 3.9.30
910

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ current_dir := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
33

44
FMT_OPTS := -co -XTypeApplications -o -XImportQualifiedPost
55
FIND_OPTS := src test integration-test -type f -name '*.hs'
6-
GHC_VERSION := 9.4.8
6+
GHC_VERSION := 9.8.2
77
DEV_TOOLS := ghcr.io/fossas/haskell-dev-tools:${GHC_VERSION}
88
MOUNTED_DEV_TOOLS_OPTS := --rm
99
MOUNTED_DEV_TOOLS_OPTS += --mount "type=bind,source=${current_dir},target=/fossa-cli"

cabal.project.ci.linux

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ packages: .
99
import: ./cabal.project.common
1010

1111
package spectrometer
12-
ghc-options: -Werror
12+
ghc-options: -Werror -Wwarn=x-partial

cabal.project.ci.macos

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ packages: .
77
import: ./cabal.project.common
88

99
package spectrometer
10-
ghc-options: -Werror
10+
ghc-options: -Werror -Wwarn=x-partial

cabal.project.ci.windows

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ packages: .
99
import: ./cabal.project.common
1010

1111
package spectrometer
12-
ghc-options: -Werror
12+
ghc-options: -Werror -Wwarn=x-partial

cabal.project.common

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,16 @@ allow-newer:
1414
-- was in 2018, so we may have to fork when breakage occurs
1515
, codec-rpm:attoparsec
1616

17+
-- transformers has a few breaking changes from 0.5 -> 0.6.
18+
-- But the removed symbols were already deprecated in 0.5.
19+
-- fused-effects-exceptions has a PR out: https://github.com/fused-effects/fused-effects-exceptions/pull/22
20+
-- When that merges you should be able to remove it from here.
21+
-- lzma-conduit seems kind of moribund.
22+
-- I've left an issue checking for signs of life: https://github.com/alphaHeavy/lzma-conduit/issues/27
23+
-- I'll make a PR if someone responds. The lib is small enough we could just vendor it if not.
24+
, lzma-conduit:transformers
25+
, fused-effects-exceptions:transformers
26+
1727
-- the semver package only exposes lens-style accessors for its Version type;
1828
-- normal accessors are in an un-exposed Internal module. on master, the
1929
-- Internal module is exposed, but a new release hasn't been cut to hackage yet
@@ -55,6 +65,6 @@ source-repository-package
5565
source-repository-package
5666
type: git
5767
location: https://github.com/fossas/codec-rpm
58-
tag: 0f7431423d47fdf36945e4ff31fbee76005b7e68
68+
tag: 55e6cc0c0b7906ca257cb7c6268b2d99592bb30f
5969

6070
index-state: hackage.haskell.org 2024-08-14T18:49:08Z

0 commit comments

Comments
 (0)