Skip to content

Commit

Permalink
Add CI flows for GHC 9.2.5 (#3376)
Browse files Browse the repository at this point in the history
* Add CI flows for GHC 9.2.5

* Prefer GHC 9.2.5 over 9.2.4

* Update list of tested-with GHC versions, as we only *test* 9.2.5

* Add GHC 9.2.5 as a supported GHC version

* Update comment in cabal-plugin about disabled test-case

* Disable GHC 9.2.5 on windows

* Fix CI for windows

* Run tests on windows for GHC 9.2.4

Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
Co-authored-by: Pepe Iborra <pepeiborra@gmail.com>
  • Loading branch information
3 people authored Dec 7, 2022
1 parent 47e04f8 commit 9cb3485
Show file tree
Hide file tree
Showing 9 changed files with 28 additions and 15 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/bench.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ jobs:
strategy:
fail-fast: false
matrix:
ghc: ['8.10.7', '9.2.4']
ghc: ['8.10.7', '9.2.5']
os: [ubuntu-latest]

# This code is fitted to the strategy: assumes Linux is used ... etc,
Expand Down Expand Up @@ -104,7 +104,7 @@ jobs:
strategy:
fail-fast: false
matrix:
ghc: ['8.10.7', '9.2.4']
ghc: ['8.10.7', '9.2.5']
os: [ubuntu-latest]
cabal: ['3.6']
example: ['cabal', 'lsp-types']
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/caching.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ jobs:
# specified in 'test.yml'
ghc: [ "9.4.2"
, "9.4.1"
, "9.2.5"
, "9.2.4"
, "9.2.3"
, "9.0.2"
Expand All @@ -96,6 +97,10 @@ jobs:
exclude:
- os: windows-latest
ghc: '9.4.1'
# Exclude until https://github.com/haskell/actions/issues/129
# is resolved.
- os: windows-latest
ghc: '9.2.5'

steps:
- uses: actions/checkout@v3
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/flags.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
strategy:
fail-fast: true
matrix:
ghc: [ "9.2.4"
ghc: [ "9.2.5"
, "9.0.2"
, "8.10.7"
]
Expand All @@ -65,8 +65,8 @@ jobs:
- name: Build `ghcide` with flags
run: cabal v2-build ghcide --flags="ghc-patched-unboxed-bytecode test-exe executable bench-exe ekg"

# we have to clean up warnings for 9.0 and 9.2 before enable -WAll
- if: matrix.ghc != '9.0.2' && matrix.ghc != '9.2.4'
# we have to clean up warnings for 9.0 and 9.2 before enable -Wall
- if: matrix.ghc != '9.0.2' && matrix.ghc != '9.2.5'
name: Build with pedantic (-WError)
run: cabal v2-build --flags="pedantic"

Expand Down
17 changes: 12 additions & 5 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ jobs:
matrix:
ghc: [ "9.4.2"
, "9.4.1"
, "9.2.5"
, "9.2.4"
, "9.2.3"
, "9.0.2"
Expand All @@ -77,14 +78,18 @@ jobs:
exclude:
- os: windows-latest
ghc: '9.4.1'
# Exclude until https://github.com/haskell/actions/issues/129
# is resolved.
- os: windows-latest
ghc: '9.2.5'
# Mark which GHC versions on which platform we want to test.
include:
# only test supported ghc major versions
- os: ubuntu-latest
ghc: '9.4.2'
test: true
- os: ubuntu-latest
ghc: '9.2.4'
ghc: '9.2.5'
test: true
- os: ubuntu-latest
ghc: '9.0.2'
Expand All @@ -95,6 +100,8 @@ jobs:
- os: windows-latest
ghc: '9.4.2'
test: true
# Test on 9.2.4 until https://github.com/haskell/actions/issues/129
# is resolved. Then switch to 9.2.5
- os: windows-latest
ghc: '9.2.4'
test: true
Expand Down Expand Up @@ -158,7 +165,7 @@ jobs:
HLS_WRAPPER_TEST_EXE: hls-wrapper
run: cabal test wrapper-test --test-options="$TEST_OPTS --rerun-log-file .tasty-rerun-log-wrapper"

- if: matrix.test && matrix.ghc != '9.2.4' && matrix.ghc != '9.4.2'
- if: matrix.test && matrix.ghc != '9.2.4' && matrix.ghc != '9.2.5' && matrix.ghc != '9.4.2'
name: Test hls-brittany-plugin
run: cabal test hls-brittany-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-brittany-plugin --test-options="$TEST_OPTS"

Expand All @@ -182,7 +189,7 @@ jobs:
name: Test hls-eval-plugin
run: cabal test hls-eval-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-eval-plugin --test-options="$TEST_OPTS"

- if: matrix.test && matrix.ghc != '9.2.4' && matrix.ghc != '9.4.2'
- if: matrix.test && matrix.ghc != '9.2.4' && matrix.ghc != '9.2.5' && matrix.ghc != '9.4.2'
name: Test hls-haddock-comments-plugin
run: cabal test hls-haddock-comments-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-haddock-comments-plugin --test-options="$TEST_OPTS"

Expand All @@ -202,7 +209,7 @@ jobs:
name: Test hls-fourmolu-plugin
run: cabal test hls-fourmolu-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-fourmolu-plugin --test-options="$TEST_OPTS"

- if: matrix.test && matrix.ghc != '9.2.4' && matrix.ghc != '9.4.2'
- if: matrix.test && matrix.ghc != '9.2.4' && matrix.ghc != '9.2.5' && matrix.ghc != '9.4.2'
name: Test hls-tactics-plugin test suite
run: cabal test hls-tactics-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-tactics-plugin --test-options="$TEST_OPTS"

Expand All @@ -226,7 +233,7 @@ jobs:
name: Test hls-hlint-plugin test suite
run: cabal test hls-hlint-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-hlint-plugin --test-options="$TEST_OPTS"

- if: matrix.test && matrix.ghc != '9.0.1' && matrix.ghc != '9.0.2' && matrix.ghc != '9.2.4' && matrix.ghc != '9.4.2'
- if: matrix.test && matrix.ghc != '9.0.1' && matrix.ghc != '9.0.2' && matrix.ghc != '9.2.4' && matrix.ghc != '9.2.5' && matrix.ghc != '9.4.2'
name: Test hls-stan-plugin test suite
run: cabal test hls-stan-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-stan-plugin --test-options="$TEST_OPTS"

Expand Down
2 changes: 2 additions & 0 deletions docs/support/ghc-version-support.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ Support status (see the support policy below for more details):
|--------------|------------------------------------------------------------------------------------|-----------------------------------------------------------------------------|
| 9.4.2 | [latest](https://github.com/haskell/haskell-language-server/releases/latest) | basic support |
| 9.4.1 | [latest](https://github.com/haskell/haskell-language-server/releases/latest) | basic support |
| 9.2.5 | unreleased | full support |

| 9.2.4 | [latest](https://github.com/haskell/haskell-language-server/releases/latest) | full support |
| 9.2.3 | [latest](https://github.com/haskell/haskell-language-server/releases/latest) | full support |
| 9.2.(1,2) | [1.7.0.0](https://github.com/haskell/haskell-language-server/releases/tag/1.7.0.0) | deprecated |
Expand Down
3 changes: 1 addition & 2 deletions ghcide-bench/ghcide-bench.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ synopsis: An LSP client for running performance experiments on HLS
description: An LSP client for running performance experiments on HLS
homepage: https://github.com/haskell/haskell-language-server/tree/master/ghcide#readme
bug-reports: https://github.com/haskell/haskell-language-server/issues
tested-with: GHC == 8.10.7 || == 9.0.2 || == 9.2.3 || == 9.2.4
tested-with: GHC == 8.10.7 || == 9.0.2 || == 9.2.5

source-repository head
type: git
Expand Down Expand Up @@ -137,4 +137,3 @@ test-suite test
TupleSections
TypeApplications
ViewPatterns

2 changes: 1 addition & 1 deletion ghcide/ghcide.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ description:
A library for building Haskell IDE's on top of the GHC API.
homepage: https://github.com/haskell/haskell-language-server/tree/master/ghcide#readme
bug-reports: https://github.com/haskell/haskell-language-server/issues
tested-with: GHC == 8.10.7 || == 9.0.2 || == 9.2.3 || == 9.2.4
tested-with: GHC == 8.10.7 || == 9.0.2 || == 9.2.5
extra-source-files: README.md CHANGELOG.md
test/data/**/*.project
test/data/**/*.cabal
Expand Down
2 changes: 1 addition & 1 deletion haskell-language-server.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ copyright: The Haskell IDE Team
license: Apache-2.0
license-file: LICENSE
build-type: Simple
tested-with: GHC == 8.10.7 || == 9.0.2 || == 9.2.3 || == 9.2.4
tested-with: GHC == 8.10.7 || == 9.0.2 || ==9.2.5
extra-source-files:
README.md
ChangeLog.md
Expand Down
2 changes: 1 addition & 1 deletion plugins/hls-cabal-plugin/test/Main.hs
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ pluginTests = testGroup "Plugin Tests"
expectNoMoreDiagnostics 1 hsDoc "typechecking"
cabalDoc <- openDoc "simple-cabal.cabal" "cabal"
expectNoMoreDiagnostics 1 cabalDoc "parsing"
, ignoreTestBecause "Testcase is flaky for certain GHC versions (e.g. 9.2.4). See #3333 for details." $ do
, ignoreTestBecause "Testcase is flaky for certain GHC versions (e.g. 9.2.5). See #3333 for details." $ do
runCabalTestCaseSession "Diagnostics in .hs files from invalid .cabal file" "simple-cabal" $ do
hsDoc <- openDoc "A.hs" "haskell"
expectNoMoreDiagnostics 1 hsDoc "typechecking"
Expand Down

0 comments on commit 9cb3485

Please sign in to comment.