Skip to content

Commit 861aba7

Browse files
authored
Drop support for GHC 8.10 (#3434)
* Drop support for 8.10 * Fixes * Try to fix wrapper test * Try to fix wrapper test * Fix
1 parent bfaecfd commit 861aba7

File tree

63 files changed

+114
-3219
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+114
-3219
lines changed

.github/workflows/bench.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ jobs:
4747
fail-fast: false
4848
matrix:
4949
ghc:
50-
- '8.10'
5150
- '9.2'
51+
- '9.4'
5252
os:
5353
- ubuntu-latest
5454

@@ -115,7 +115,7 @@ jobs:
115115
strategy:
116116
fail-fast: false
117117
matrix:
118-
ghc: ['8.10', '9.2']
118+
ghc: ['9.2', '9.4']
119119
os: [ubuntu-latest]
120120
cabal: ['3.10']
121121
example: ['cabal', 'lsp-types']

.github/workflows/caching.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ jobs:
102102
# Fetching from github cache is faster than doing it from hackage
103103
# Sources does not change per ghc and ghc version son only doing it
104104
# for one matrix job (it is arbitrary)
105-
- if: steps.compiled-deps.outputs.cache-hit != 'true' && runner.os == 'Linux' && matrix.ghc == '8.10'
105+
- if: steps.compiled-deps.outputs.cache-hit != 'true' && runner.os == 'Linux' && matrix.ghc == '9.2'
106106
name: Download sources
107107
run: |
108108
cabal $cabalBuild --only-download --enable-benchmarks --enable-tests
@@ -117,7 +117,7 @@ jobs:
117117
# We build ghcide with benchs and test enabled to include its dependencies in the cache
118118
# (including shake-bench)
119119
# Only for the same ghc and os used in the bench workflow, so we save cache space
120-
- if: steps.compiled-deps.outputs.cache-hit != 'true' && runner.os == 'Linux' && matrix.ghc == '8.10'
120+
- if: steps.compiled-deps.outputs.cache-hit != 'true' && runner.os == 'Linux' && matrix.ghc == '9.2'
121121
name: Build ghcide benchmark
122122
run: |
123123
cabal $cabalBuild ghcide --enable-benchmarks --enable-tests
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[ "9.6", "9.4" , "9.2" , "9.0" , "8.10" ]
1+
[ "9.6", "9.4" , "9.2" , "9.0" ]

.github/workflows/test.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,7 @@ jobs:
220220
run: cabal test hls-explicit-record-fields-plugin --test-options="$TEST_OPTS" || cabal test hls-explicit-record-fields-plugin --test-options="$TEST_OPTS"
221221

222222
## version needs to be limited since the tests depend on cabal-fmt which only builds using specific ghc versions
223-
- if: matrix.test && matrix.ghc == '8.10'
223+
- if: matrix.test && matrix.ghc == '9.2'
224224
name: Test hls-cabal-fmt-plugin test suite
225225
run: cabal test hls-cabal-fmt-plugin --flag=isolateTests --test-options="$TEST_OPTS" || cabal test hls-cabal-fmt-plugin --flag=isolateTests --test-options="$TEST_OPTS"
226226

@@ -232,7 +232,7 @@ jobs:
232232
name: Test hls-retrie-plugin test suite
233233
run: cabal test hls-retrie-plugin --test-options="$TEST_OPTS" || cabal test hls-retrie-plugin --test-options="$TEST_OPTS"
234234

235-
- if: matrix.test && matrix.ghc != '8.10' && matrix.ghc != '9.0'
235+
- if: matrix.test && matrix.ghc != '9.0'
236236
name: Test hls-overloaded-record-dot-plugin test suite
237237
run: cabal test hls-overloaded-record-dot-plugin --test-options="$TEST_OPTS" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true cabal test hls-overloaded-record-dot-plugin --test-options="$TEST_OPTS"
238238

docs/contributing/plugin-tutorial.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ And here is the gist of the algorithm:
3434

3535
## Setup
3636

37-
To get started, let’s fetch the HLS repo and build it. You need at least GHC 8.10 for this:
37+
To get started, let’s fetch the HLS repo and build it. You need at least GHC 9.0 for this:
3838

3939
```
4040
git clone --recursive http://github.com/haskell/haskell-language-server hls

docs/support/ghc-version-support.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Support status (see the support policy below for more details):
3131
| 9.2.(1,2) | [1.7.0.0](https://github.com/haskell/haskell-language-server/releases/tag/1.7.0.0) | deprecated |
3232
| 9.0.2 | [latest](https://github.com/haskell/haskell-language-server/releases/latest) | full support |
3333
| 9.0.1 | [1.6.1.0](https://github.com/haskell/haskell-language-server/releases/tag/1.6.1.0) | deprecated |
34-
| 8.10.7 | [latest](https://github.com/haskell/haskell-language-server/releases/latest) | full support |
34+
| 8.10.7 | [2.2.0.0](https://github.com/haskell/haskell-language-server/releases/tag/2.2.0.0) | full support |
3535
| 8.10.6 | [1.6.1.0](https://github.com/haskell/haskell-language-server/releases/tag/1.6.1.0) | deprecated |
3636
| 8.10.5 | [1.5.1](https://github.com/haskell/haskell-language-server/releases/tag/1.5.1) | deprecated |
3737
| 8.10.(4,3,2) | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated |
@@ -42,7 +42,6 @@ Support status (see the support policy below for more details):
4242
| 8.6.5 | [1.8.0.0](https://github.com/haskell/haskell-language-server/releases/tag/1.8.0.0) | deprecated |
4343
| 8.6.4 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated |
4444

45-
4645
GHC versions not in the list have never been supported by HLS.
4746
LTS stands for [Stackage](https://www.stackage.org/) Long Term Support.
4847

docs/troubleshooting.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,7 @@ stack install haskell-language-server
189189
You also can leverage `ghcup compile hls`:
190190

191191
```bash
192-
ghcup compile hls -v 1.6.1.0 --ghc 8.10.7
192+
ghcup compile hls -v 1.9.0.0 --ghc 9.2.5
193193
```
194194

195195
### Preprocessors

ghcide-bench/ghcide-bench.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ synopsis: An LSP client for running performance experiments on HLS
1212
description: An LSP client for running performance experiments on HLS
1313
homepage: https://github.com/haskell/haskell-language-server/tree/master/ghcide#readme
1414
bug-reports: https://github.com/haskell/haskell-language-server/issues
15-
tested-with: GHC == 8.10.7 || == 9.0.2 || == 9.2.5
15+
tested-with: GHC == 9.0.2 || == 9.2.5
1616

1717
source-repository head
1818
type: git

ghcide/ghcide.cabal

Lines changed: 4 additions & 9 deletions
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.10.7 || == 9.0.2 || == 9.2.5
16+
tested-with: GHC == 9.0.2 || == 9.2.5
1717
extra-source-files: README.md CHANGELOG.md
1818
test/data/**/*.project
1919
test/data/**/*.cabal
@@ -44,7 +44,6 @@ library
4444
default-language: Haskell2010
4545
build-depends:
4646
aeson,
47-
aeson-pretty,
4847
array,
4948
async,
5049
base == 4.*,
@@ -104,7 +103,7 @@ library
104103
unliftio-core,
105104
ghc-boot-th,
106105
ghc-boot,
107-
ghc >= 8.10,
106+
ghc >= 9.0,
108107
ghc-check >=0.5.0.8,
109108
ghc-paths,
110109
cryptohash-sha1 >=0.11.100 && <0.12,
@@ -228,6 +227,7 @@ library
228227
-Wall
229228
-Wincomplete-uni-patterns
230229
-Wno-unticked-promoted-constructors
230+
-Wunused-packages
231231
-fno-ignore-asserts
232232

233233
if flag(ghc-patched-unboxed-bytecode)
@@ -254,9 +254,6 @@ library
254254
if impl(ghc >= 9.2) && flag(pedantic)
255255
ghc-options: -Wwarn=ambiguous-fields
256256

257-
if impl(ghc >= 9)
258-
ghc-options: -Wunused-packages
259-
260257
if flag(ekg)
261258
build-depends:
262259
ekg-wai,
@@ -397,10 +394,8 @@ test-suite ghcide-tests
397394
record-hasfield
398395
if impl(ghc < 9.3)
399396
build-depends: ghc-typelits-knownnat
400-
if impl(ghc >= 9)
401-
ghc-options: -Wunused-packages
402397
hs-source-dirs: test/cabal test/exe test/src
403-
ghc-options: -threaded -Wall -Wno-name-shadowing -O0 -Wno-unticked-promoted-constructors
398+
ghc-options: -threaded -Wall -Wno-name-shadowing -O0 -Wno-unticked-promoted-constructors -Wunused-packages
404399
main-is: Main.hs
405400
other-modules:
406401
Development.IDE.Test.Runfiles

ghcide/session-loader/Development/IDE/Session.hs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -768,7 +768,6 @@ emptyHscEnv :: IORef NameCache -> FilePath -> IO HscEnv
768768
#endif
769769
emptyHscEnv nc libDir = do
770770
env <- runGhc (Just libDir) getSession
771-
initDynLinker env
772771
pure $ setNameCache nc (hscSetFlags ((hsc_dflags env){useUnicode = True }) env)
773772

774773
data TargetDetails = TargetDetails

0 commit comments

Comments
 (0)