Skip to content

Commit 7ba6279

Browse files
authored
Add GHC 8.10.5 support (#1899)
* Add GHC 8.10.5 * Remove GHC 8.10.2 * Fix cabal build * Downgrade bench to 8.10.4 as master do not have 8.10.5 * Add missing window builds * Update ghc-api-compat location * Mark a test as broken in GHC 8.10.5 * Exclude ghc 8.10.5 for MacOS CI * Update build.yml * Revert "Remove GHC 8.10.2" This reverts commit b85b029.
1 parent 7ea2f65 commit 7ba6279

19 files changed

+167
-25
lines changed

.circleci/config.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,11 @@ jobs:
103103
- STACK_FILE: "stack-8.10.4.yaml"
104104
<<: *defaults
105105

106+
ghc-8.10.5:
107+
environment:
108+
- STACK_FILE: "stack-8.10.5.yaml"
109+
<<: *defaults
110+
106111
ghc-9.0.1:
107112
environment:
108113
- STACK_FILE: "stack-9.0.1.yaml"
@@ -126,5 +131,6 @@ workflows:
126131
- ghc-8.10.2
127132
- ghc-8.10.3
128133
- ghc-8.10.4
134+
- ghc-8.10.5
129135
- ghc-9.0.1
130136
- ghc-default

.github/workflows/build.yml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
strategy:
1717
fail-fast: false
1818
matrix:
19-
ghc: ['8.10.4', '8.10.3', '8.10.2', '8.8.4', '8.8.3', '8.8.2', '8.6.5', '8.6.4']
19+
ghc: ['8.10.5', '8.10.4', '8.10.3', '8.10.2', '8.8.4', '8.8.3', '8.8.2', '8.6.5', '8.6.4']
2020
os: [ubuntu-18.04, macOS-latest, windows-latest]
2121
exclude:
2222
- os: windows-latest
@@ -27,6 +27,8 @@ jobs:
2727
ghc: '8.8.3' # fails due to segfault
2828
- os: windows-latest
2929
ghc: '8.8.2' # fails due to error with Cabal
30+
- os: macOS-latest
31+
ghc: '8.10.5' # https://gitlab.haskell.org/ghc/ghc/-/issues/19968
3032
include:
3133
- os: windows-latest
3234
ghc: '8.10.2.2' # only available for windows and choco
@@ -113,11 +115,11 @@ jobs:
113115
path: ${{ steps.compress_server_binary.outputs.path }}
114116

115117
- name: Build Wrapper
116-
if: matrix.ghc == '8.10.4'
118+
if: matrix.ghc == '8.10.5'
117119
run: cabal build exe:hls-wrapper -O2 $LINUX_CABAL_ARGS
118120

119121
- name: Compress Wrapper Binary
120-
if: matrix.ghc == '8.10.4'
122+
if: matrix.ghc == '8.10.5'
121123
id: compress_wrapper_binary
122124
run: |
123125
HLS_WRAPPER_BUILD=$(find dist-newstyle \( -name 'hls-wrapper' -o -name 'hls-wrapper.exe' \) -type f)
@@ -136,7 +138,7 @@ jobs:
136138
fi
137139
138140
- name: Upload Wrapper
139-
if: matrix.ghc == '8.10.4'
141+
if: matrix.ghc == '8.10.5'
140142
uses: actions/upload-release-asset@v1.0.2
141143
env:
142144
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -147,7 +149,7 @@ jobs:
147149
asset_content_type: ${{ steps.compress_wrapper_binary.outputs.content_type}}
148150

149151
- uses: actions/upload-artifact@v2
150-
if: matrix.ghc == '8.10.4'
152+
if: matrix.ghc == '8.10.5'
151153
with:
152154
name: haskell-language-server-wrapper-${{ runner.OS }}${{env.EXE_EXT}}.${{ steps.compress_wrapper_binary.outputs.extension }}
153155
path: ${{ steps.compress_wrapper_binary.outputs.path }}

.github/workflows/test.yml

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,36 +33,44 @@ jobs:
3333
strategy:
3434
fail-fast: true
3535
matrix:
36-
ghc: ["9.0.1", "8.10.4", "8.10.3", "8.10.2", "8.8.4", "8.8.3", "8.8.2", "8.6.5", "8.6.4"]
36+
ghc: ["9.0.1", "8.10.5", "8.10.4", "8.10.3", "8.10.2", "8.8.4", "8.8.3", "8.8.2", "8.6.5", "8.6.4"]
3737
os: [ubuntu-latest, macOS-latest]
3838
include:
3939
# only test supported ghc major versions
4040
- os: ubuntu-latest
4141
ghc: '9.0.1'
4242
test: true
4343
- os: ubuntu-latest
44-
ghc: '8.10.4'
45-
test: true
46-
- os: windows-latest
47-
ghc: '8.10.4'
44+
ghc: '8.10.5'
4845
test: true
4946
- os: ubuntu-latest
5047
ghc: '8.8.4'
5148
test: true
5249
- os: ubuntu-latest
5350
ghc: '8.6.5'
5451
test: true
52+
# only build rest of supported ghc versions for windows
53+
# Disable window test temporarily because choco does not have GHC 8.10.5 yet
5554
- os: windows-latest
56-
ghc: '8.6.5'
55+
ghc: '8.10.5'
5756
test: true
58-
# only build rest of supported ghc versions for windows
5957
- os: windows-latest
60-
ghc: '8.10.2.2'
58+
ghc: '8.10.4'
6159
- os: windows-latest
6260
ghc: '8.10.3'
61+
- os: windows-latest
62+
ghc: '8.10.2.2'
63+
- os: windows-latest
64+
ghc: '8.6.5'
65+
test: true
6366
# This build get stuck frequently
6467
# - os: windows-latest
6568
# ghc: '8.6.4'
69+
exclude:
70+
# Not able to build 'network' package
71+
# See https://gitlab.haskell.org/ghc/ghc/-/issues/19968
72+
- os: macOS-latest
73+
ghc: '8.10.5'
6674

6775
steps:
6876
- if: ${{ needs.pre_job.outputs.should_skip != 'true' }}

cabal-ghc901.project

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ source-repository-package
5151
source-repository-package
5252
type: git
5353
location: https://github.com/hsyl20/ghc-api-compat
54-
tag: 6178d75772c7d923918dfffa0b1f503dfb36d0a6
54+
tag: 8fee87eac97a538dbe81ff1ab18cff10f2f9fa15
5555

5656
source-repository-package
5757
type: git

cabal.project

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,12 @@ package *
2828
ghc-options: -haddock
2929
test-show-details: direct
3030

31+
-- ghc-api-compat-8.6
32+
source-repository-package
33+
type: git
34+
location: https://github.com/hsyl20/ghc-api-compat
35+
tag: 8fee87eac97a538dbe81ff1ab18cff10f2f9fa15
36+
3137
write-ghc-environment-files: never
3238

3339
index-state: 2021-05-21T05:01:41Z

flake.nix

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -167,6 +167,7 @@
167167
pkgs.haskellPackages.ghc.version);
168168
ghc884 = pkgs.hlsHpkgs "ghc884";
169169
ghc8104 = pkgs.hlsHpkgs "ghc8104";
170+
ghc8105 = pkgs.hlsHpkgs "ghc8105";
170171
ghc901 = pkgs.hlsHpkgs "ghc901";
171172

172173
# Create a development shell of hls project
@@ -216,12 +217,14 @@
216217
haskell-language-server-dev = mkDevShell ghcDefault;
217218
haskell-language-server-884-dev = mkDevShell ghc884;
218219
haskell-language-server-8104-dev = mkDevShell ghc8104;
220+
haskell-language-server-8105-dev = mkDevShell ghc8105;
219221
haskell-language-server-901-dev = mkDevShell ghc901;
220222

221223
# hls package
222224
haskell-language-server = mkExe ghcDefault;
223225
haskell-language-server-884 = mkExe ghc884;
224226
haskell-language-server-8104 = mkExe ghc8104;
227+
haskell-language-server-8105 = mkExe ghc8105;
225228
haskell-language-server-901 = mkExe ghc901;
226229
};
227230

ghcide/ghcide.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ description:
1313
A library for building Haskell IDE's on top of the GHC API.
1414
homepage: https://github.com/haskell/haskell-language-server/tree/master/ghcide#readme
1515
bug-reports: https://github.com/haskell/haskell-language-server/issues
16-
tested-with: GHC == 8.6.4 || == 8.6.5 || == 8.8.2 || == 8.8.3 || == 8.8.4 || == 8.10.2 || == 8.10.3 || == 8.10.4 || == 9.0.1
16+
tested-with: GHC == 8.6.4 || == 8.6.5 || == 8.8.2 || == 8.8.3 || == 8.8.4 || == 8.10.2 || == 8.10.3 || == 8.10.4 || == 8.10.5 || == 9.0.1
1717
extra-source-files: README.md CHANGELOG.md
1818
test/data/**/*.project
1919
test/data/**/*.cabal

ghcide/test/exe/Main.hs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3653,6 +3653,9 @@ checkFileCompiles fp diag =
36533653
pluginSimpleTests :: TestTree
36543654
pluginSimpleTests =
36553655
ignoreInWindowsForGHC88And810 $
3656+
#if __GLASGOW_HASKELL__ == 810 && __GLASGOW_HASKELL_PATCHLEVEL1__ == 5
3657+
expectFailBecause "known broken (see GHC #19763)" $
3658+
#endif
36563659
testSessionWithExtraFiles "plugin-knownnat" "simple plugin" $ \dir -> do
36573660
_ <- openDoc (dir </> "KnownNat.hs") "haskell"
36583661
liftIO $ writeFile (dir</>"hie.yaml")

haskell-language-server.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ copyright: The Haskell IDE Team
1414
license: Apache-2.0
1515
license-file: LICENSE
1616
build-type: Simple
17-
tested-with: GHC == 8.6.4 || == 8.6.5 || == 8.8.2 || == 8.8.3 || == 8.8.4 || == 8.10.2 || == 8.10.3 || == 8.10.4
17+
tested-with: GHC == 8.6.4 || == 8.6.5 || == 8.8.2 || == 8.8.3 || == 8.8.4 || == 8.10.2 || == 8.10.3 || == 8.10.4 || == 8.10.5
1818
extra-source-files:
1919
README.md
2020
ChangeLog.md

stack-8.10.2.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ extra-deps:
3636
- data-tree-print-0.1.0.2@rev:2
3737
- floskell-0.10.4
3838
- fourmolu-0.3.0.0
39-
- ghc-api-compat-8.6
39+
- # ghc-api-compat-8.6
40+
github: hsyl20/ghc-api-compat
41+
commit: 8fee87eac97a538dbe81ff1ab18cff10f2f9fa15
4042
- ghc-check-0.5.0.4
4143
- ghc-exactprint-0.6.4
4244
- ghc-lib-8.10.4.20210206

0 commit comments

Comments
 (0)