Remove support for ghc 8.8.3/8.10.5 (#2444)

* Remove support for ghc 8.8.3/8.10.5

* Remove ghc-8.10.5 from circleci

* Correct releases links

* Rename stack test dir

* Parametrize stack wrapper test
This commit is contained in:
Javier Neira 2021-12-10 15:58:30 +01:00 committed by GitHub
parent 60880eba36
commit 1b69975000
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 18 additions and 261 deletions

View File

@ -84,21 +84,11 @@ jobs:
- STACK_FILE: "stack-8.6.5.yaml"
<<: *defaults
ghc-8.8.3:
environment:
- STACK_FILE: "stack-8.8.3.yaml"
<<: *defaults
ghc-8.8.4:
environment:
- STACK_FILE: "stack-8.8.4.yaml"
<<: *defaults
ghc-8.10.5:
environment:
- STACK_FILE: "stack-8.10.5.yaml"
<<: *defaults
ghc-8.10.6:
environment:
- STACK_FILE: "stack-8.10.6.yaml"
@ -125,9 +115,7 @@ workflows:
multiple-ghcs:
jobs:
- ghc-8.6.5
- ghc-8.8.3
- ghc-8.8.4
- ghc-8.10.5
- ghc-8.10.6
- ghc-8.10.7
- ghc-9.0.1

View File

@ -18,12 +18,9 @@ jobs:
strategy:
fail-fast: false
matrix:
ghc: ['9.0.1', '8.10.7', '8.10.6', '8.8.4', '8.8.3', '8.6.5']
ghc: ['9.0.1', '8.10.7', '8.10.6', '8.8.4', '8.6.5']
os: [ubuntu-18.04, macOS-latest, windows-latest]
cabal: ['3.6']
exclude:
- os: windows-latest
ghc: '8.8.3' # fails due to segfault
steps:
- uses: actions/checkout@v2

View File

@ -46,12 +46,9 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
ghc: ["9.0.1", '8.10.7', '8.10.6', "8.8.4", "8.8.3", "8.6.5"]
ghc: ["9.0.1", '8.10.7', '8.10.6', "8.8.4", "8.6.5"]
os: [ubuntu-latest, macOS-latest, windows-latest]
cabal: ['3.6']
exclude:
- os: windows-latest
ghc: '8.8.3'
steps:
- uses: actions/checkout@v2
@ -74,12 +71,6 @@ jobs:
echo "CABAL_STORE_DIR=~/.cabal/store" >> $GITHUB_ENV
echo "CABAL_PKGS_DIR=~/.cabal/packages" >> $GITHUB_ENV
- if: matrix.os == 'macOS-latest' && matrix.ghc == '8.10.5'
name: Workaround for GHC 8.10.5 on macOS
run: |
echo "# uninstalling CommandLineTools (see https://github.com/haskell/haskell-language-server/issues/1913#issuecomment-861667786)"
sudo rm -rf /Library/Developer/CommandLineTools
# Needs to be before Cache Cabal so the cache can detect changes to the modified cabal.project file
- if: matrix.ghc == '9.0.1'
name: Use modified cabal.project for ghc9

View File

@ -40,7 +40,7 @@ jobs:
strategy:
fail-fast: true
matrix:
ghc: ["9.0.1", '8.10.7', '8.10.6', "8.8.4", "8.8.3", "8.6.5"]
ghc: ["9.0.1", '8.10.7', '8.10.6', "8.8.4", "8.6.5"]
os: [ubuntu-latest, macOS-latest]
cabal: ['3.6']
include:

View File

@ -189,12 +189,11 @@ stack ./install.hs hls
Install haskell-language-server for a specific GHC version (and hoogle docs):
```bash
stack ./install.hs hls-8.8.3
stack ./install.hs hls-8.10.7
```
`hls-8.8.3` target will build the project and install `haskell-language-server-wrapper`,
`haskell-language-server`, `haskell-language-server-8.8.3` and `haskell-language-server-8.8`
executables.
`hls-8.10.7` target will build the project and install `haskell-language-server-wrapper`,
`haskell-language-server` and `haskell-language-server-8.10.7` executables.
The Haskell Language Server can also be built with `cabal v2-build` instead of `stack build`.
This has the advantage that you can decide how the GHC versions have been installed.
@ -210,7 +209,7 @@ An example output is:
******************************************************************
Found the following GHC paths:
ghc-8.6.5: /opt/bin/ghc-8.6.5
ghc-8.8.3: /opt/bin/ghc-8.8.3
ghc-8.8.4: /opt/bin/ghc-8.8.4
******************************************************************
```

View File

@ -6,17 +6,17 @@ The current support for different GHC versions is given in the following table.
| GHC version | Last supporting HLS version | Deprecation status |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------- |
| 9.2.0 | not supported yet | |
| 9.2.0 | [not supported](https://github.com/haskell/haskell-language-server/issues/2179) yet | |
| 9.0.1 | [current](https://github.com/haskell/haskell-language-server/releases/latest) ([partial](https://github.com/haskell/haskell-language-server/issues/297)) | |
| 8.10.7 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | |
| 8.10.6 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | will be deprecated after LTS and HLS full support for ghc-9.0 |
| 8.10.5 | [1.5.0](https://github.com/haskell/haskell-language-server/releases/tag/1.5.0) | deprecated |
| 8.10.5 | [1.5.1](https://github.com/haskell/haskell-language-server/releases/tag/1.5.1) | deprecated |
| 8.10.4 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated |
| 8.10.3 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated |
| 8.10.2 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated |
| 8.10.1 | [0.9.0](https://github.com/haskell/haskell-language-server/releases/tag/0.9.0) | deprecated |
| 8.8.4 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | will be deprecated after LTS and HLS full support for ghc-9.2 |
| 8.8.3 | [1.5.0](https://github.com/haskell/haskell-language-server/releases/1.5.0) | deprecated |
| 8.8.3 | [1.5.1](https://github.com/haskell/haskell-language-server/releases/1.5.1) | deprecated |
| 8.8.2 | [1.2.0](https://github.com/haskell/haskell-language-server/releases/tag/1.2.0) | deprecated |
| 8.6.5 | [current](https://github.com/haskell/haskell-language-server/releases/latest) | will be deprecated after LTS and HLS full suppot for ghc-9.2 |
| 8.6.4 | [1.4.0](https://github.com/haskell/haskell-language-server/releases/tag/1.4.0) | deprecated |

View File

@ -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.6.5 || == 8.8.3 || == 8.8.4 || == 8.10.5 || == 8.10.6 || == 8.10.7 || == 9.0.1
tested-with: GHC == 8.6.5 || == 8.8.4 || == 8.10.6 || == 8.10.7 || == 9.0.1
extra-source-files: README.md CHANGELOG.md
test/data/**/*.project
test/data/**/*.cabal

View File

@ -14,7 +14,7 @@ copyright: The Haskell IDE Team
license: Apache-2.0
license-file: LICENSE
build-type: Simple
tested-with: GHC == 8.6.5 || == 8.8.3 || == 8.8.4 || == 8.10.5 || == 8.10.6 || == 8.10.7 || == 9.0.1
tested-with: GHC == 8.6.5 || == 8.8.4 || == 8.10.6 || == 8.10.7 || == 9.0.1
extra-source-files:
README.md
ChangeLog.md

View File

@ -1,102 +0,0 @@
# Fixme once GHC-8.10.5 LTS is out
resolver: nightly-2021-06-01
compiler: ghc-8.10.5
packages:
- .
- ./hie-compat
- ./hls-graph
- ./ghcide/
- ./hls-plugin-api
- ./hls-test-utils
# - ./shake-bench
- ./plugins/hls-call-hierarchy-plugin
- ./plugins/hls-class-plugin
- ./plugins/hls-haddock-comments-plugin
- ./plugins/hls-eval-plugin
- ./plugins/hls-explicit-imports-plugin
- ./plugins/hls-refine-imports-plugin
- ./plugins/hls-hlint-plugin
- ./plugins/hls-rename-plugin
- ./plugins/hls-retrie-plugin
- ./plugins/hls-splice-plugin
- ./plugins/hls-tactics-plugin
- ./plugins/hls-qualify-imported-names-plugin
- ./plugins/hls-brittany-plugin
- ./plugins/hls-stylish-haskell-plugin
- ./plugins/hls-floskell-plugin
- ./plugins/hls-fourmolu-plugin
- ./plugins/hls-pragmas-plugin
- ./plugins/hls-module-name-plugin
- ./plugins/hls-ormolu-plugin
- ./plugins/hls-alternate-number-format-plugin
ghc-options:
"$everything": -haddock
extra-deps:
- ansi-terminal-0.10.3
- apply-refact-0.9.3.0
- brittany-0.13.1.2
- Cabal-3.0.2.0
- clock-0.7.2
- data-tree-print-0.1.0.2@rev:2
- floskell-0.10.5
- fourmolu-0.3.0.0
- ghc-check-0.5.0.4
- ghc-exactprint-0.6.4
- ghc-source-gen-0.4.1.0
- heapsize-0.3.0
- implicit-hie-cradle-0.3.0.5
- implicit-hie-0.1.2.6
- monad-dijkstra-0.1.1.2
# For stylish-haskell-0.12.2.0
- optparse-applicative-0.15.1.0
- refinery-0.4.0.0
- retrie-0.1.1.1
- stylish-haskell-0.12.2.0
- semigroups-0.18.5
- temporary-1.2.1.1
- th-compat-0.1.2@sha256:3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8,2854
- bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727
- hiedb-0.4.1.0
- dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657
- dependent-sum-0.7.1.0@sha256:5599aa89637db434431b1dd3fa7c34bc3d565ee44f0519bfbc877be1927c2531,2068
- dependent-sum-template-0.1.0.3@sha256:0bbbacdfbd3abf2a15aaf0cf2c27e5bdd159b519441fec39e1e6f2f54424adde,1682
- constraints-extras-0.3.1.0
- some-1.0.1@sha256:26e5bab7276f48b25ea8660d3fd1166c0f20fd497dac879a40f408e23211f93e,2055
- unliftio-core-0.2.0.1@sha256:9b3e44ea9aacacbfc35b3b54015af450091916ac3618a41868ebf6546977659a,1082
- lsp-1.2.0.1
- lsp-types-1.3.0.1
- lsp-test-0.14.0.1
# Enable these when supported by all formatters
# - ghc-lib-9.0.1.20210324@sha256:c8b9a2541ea3424c8d0e4f80584477d0f35be03f4a47d931152042d5f446c5fc,19279
# - ghc-lib-parser-9.0.1.20210324@sha256:fb680f78d4ab08b5d089a05bda3b84ad857e5edcc2e4ca7c188c0207d369af80
# - ghc-lib-parser-ex-9.0.0.4@sha256:8282b11c3797fc8ba225b245e736cc9a0745d9c48d0f9fea7f9bffb5c9997709,3642
# - hlint-3.3@sha256:4218ad6e03050f5d68aeba0e025f5f05e366c8fd49657f2a19df04ee31b2bb23,4154
configure-options:
ghcide:
- --disable-library-for-ghci
haskell-language-server:
- --disable-library-for-ghci
heapsize:
- --disable-library-for-ghci
flags:
haskell-language-server:
pedantic: true
retrie:
BuildExecutable: false
# Stack doesn't support automatic flags.
# Until the formatters support ghc-lib-9, we need this flag disabled
hls-hlint-plugin:
hlint33: false
hyphenation:
embed: true
nix:
packages: [ icu libcxx zlib ]
concurrent-tests: false

View File

@ -1,117 +0,0 @@
resolver: lts-16.11 # Last 8.8.3
packages:
- .
- ./hie-compat
- ./hls-graph
- ./ghcide/
- ./shake-bench
- ./hls-plugin-api
- ./hls-test-utils
- ./plugins/hls-call-hierarchy-plugin
- ./plugins/hls-class-plugin
- ./plugins/hls-haddock-comments-plugin
- ./plugins/hls-eval-plugin
- ./plugins/hls-explicit-imports-plugin
- ./plugins/hls-refine-imports-plugin
- ./plugins/hls-hlint-plugin
- ./plugins/hls-rename-plugin
- ./plugins/hls-retrie-plugin
- ./plugins/hls-splice-plugin
- ./plugins/hls-tactics-plugin
- ./plugins/hls-qualify-imported-names-plugin
- ./plugins/hls-brittany-plugin
- ./plugins/hls-stylish-haskell-plugin
- ./plugins/hls-floskell-plugin
- ./plugins/hls-fourmolu-plugin
- ./plugins/hls-pragmas-plugin
- ./plugins/hls-module-name-plugin
- ./plugins/hls-ormolu-plugin
- ./plugins/hls-alternate-number-format-plugin
ghc-options:
"$everything": -haddock
extra-deps:
- aeson-1.5.2.0
- apply-refact-0.9.3.0
- brittany-0.13.1.2
- bytestring-trie-0.2.5.0
- cabal-plan-0.6.2.0
- clock-0.7.2
- constrained-dynamic-0.1.0.0
- floskell-0.10.4
- fourmolu-0.3.0.0
- ghc-check-0.5.0.4
- ghc-exactprint-0.6.4
- ghc-lib-8.10.7.20210828
- ghc-lib-parser-8.10.7.20210828
- ghc-source-gen-0.4.1.0
- ghc-trace-events-0.1.2.1
- haskell-src-exts-1.21.1
- heapsize-0.3.0
- hie-bios-0.7.5
- hlint-3.2.3
- HsYAML-aeson-0.2.0.0@rev:2
- hoogle-5.0.17.11
- hsimport-0.11.0
- ilist-0.3.1.0
- implicit-hie-cradle-0.3.0.5
- implicit-hie-0.1.2.6
- megaparsec-9.0.1
- monad-dijkstra-0.1.1.2
- opentelemetry-0.6.1
- opentelemetry-extra-0.6.1
- ormolu-0.1.4.1
- refinery-0.4.0.0
- retrie-0.1.1.1
- semigroups-0.18.5
- shake-0.19.4
- stylish-haskell-0.12.2.0
- temporary-1.2.1.1
- uniplate-1.6.13
- th-compat-0.1.2@sha256:3d55de1adc542c1a870c9ada90da2fbbe5f4e8bcd3eed545a55c3df9311b32a8,2854
- bytestring-encoding-0.1.0.0@sha256:460b49779fbf0112e8e2f1753c1ed9131eb18827600c298f4d6bb51c4e8c1c0d,1727
- hiedb-0.4.1.0
- sqlite-simple-0.4.18.0@sha256:3ceea56375c0a3590c814e411a4eb86943f8d31b93b110ca159c90689b6b39e5,3002
- direct-sqlite-2.3.26@sha256:04e835402f1508abca383182023e4e2b9b86297b8533afbd4e57d1a5652e0c23,3718
- extra-1.7.9@sha256:f1dec740f0f2025790c540732bfd52c556ec55bde4f5dfd7cf18e22bd44ff3d0,2683
- dependent-map-0.4.0.0@sha256:ca2b131046f4340a1c35d138c5a003fe4a5be96b14efc26291ed35fd08c62221,1657
- dependent-sum-0.7.1.0@sha256:5599aa89637db434431b1dd3fa7c34bc3d565ee44f0519bfbc877be1927c2531,2068
- dependent-sum-template-0.1.0.3@sha256:0bbbacdfbd3abf2a15aaf0cf2c27e5bdd159b519441fec39e1e6f2f54424adde,1682
- constraints-extras-0.3.0.2@sha256:013b8d0392582c6ca068e226718a4fe8be8e22321cc0634f6115505bf377ad26,1853
- some-1.0.1@sha256:26e5bab7276f48b25ea8660d3fd1166c0f20fd497dac879a40f408e23211f93e,2055
- unliftio-core-0.2.0.1@sha256:9b3e44ea9aacacbfc35b3b54015af450091916ac3618a41868ebf6546977659a,1082
- lsp-1.2.0.1
- lsp-types-1.3.0.1
- lsp-test-0.14.0.1
- stm-containers-1.1.0.4
- stm-hamt-1.2.0.6@sha256:fba86ccb4b45c5706c19b0e1315ba63dcac3b5d71de945ec001ba921fae80061,3972
- primitive-extras-0.10.1
- primitive-unlifted-0.1.3.1
configure-options:
ghcide:
- --disable-library-for-ghci
haskell-language-server:
- --disable-library-for-ghci
heapsize:
- --disable-library-for-ghci
flags:
haskell-language-server:
pedantic: true
retrie:
BuildExecutable: false
# Stack doesn't support automatic flags.
# Until the formatters support ghc-lib-9, we need this flag disabled
hls-hlint-plugin:
hlint33: false
hyphenation:
embed: true
nix:
packages: [icu libcxx zlib]
concurrent-tests: false

View File

@ -11,10 +11,8 @@ main = do
projectGhcVersionTests :: TestTree
projectGhcVersionTests = testGroup "--project-ghc-version"
[ testCase "stack with ghc 8.10.7" $
testDir "test/wrapper/testdata/stack-8.10.7" "8.10.7"
, testCase "stack with ghc 8.8.3" $
testDir "test/wrapper/testdata/stack-8.8.3" "8.8.3"
[ stackTest "8.10.7"
, stackTest "8.8.4"
, testCase "cabal with global ghc" $ do
ghcVer <- trimEnd <$> readProcess "ghc" ["--numeric-version"] ""
testDir "test/wrapper/testdata/cabal-cur-ver" ghcVer
@ -24,6 +22,9 @@ projectGhcVersionTests = testGroup "--project-ghc-version"
testProjectType "test/wrapper/testdata/stack-with-dist-newstyle"
("cradleOptsProg = CradleAction: Cabal" `isInfixOf`)
]
where
stackTest ghcVer= testCase ("stack with ghc " ++ ghcVer) $
testDir ("test/wrapper/testdata/stack-" ++ ghcVer) ghcVer
testDir :: FilePath -> String -> Assertion
testDir dir expectedVer =

View File

@ -1 +0,0 @@
resolver: ghc-8.8.3

View File

@ -0,0 +1 @@
resolver: ghc-8.8.4