Skip to content

Commit 06ec06c

Browse files
authored
Merge plugins into the HLS package (#3976)
* Reorganize flags * hls-alternate-number-format-plugin * hls-cabal-fmt-plugin * cabal plugin * Class plugin * Call hierarchy plugin * Eval plugin * Explicit imports plugin * Rename plugin * Retrie plugin * Hlint plugin * stan plugin * Module name plugin * pragmas plugin * Splice plugin * Qualify imported names plugin * code range plugin * change type signature plugin * gadt plugin * explicit fixity plugin * explicit record fields plugin * Overloaded record dot plugin * Floskell plugin * fourmolu plugin * ormolu plugin * Stylish-haskell plugin * refactor plugin * semantic tokesn * fixup worklows * Rogue cabal fmt plugin cabal file * Fix pedantic build * fix extra-source-files globs * Fix test name * Remove pointless version constraints * Try to just exclude windows+9.2 * More * More * More * more
1 parent 4788bfc commit 06ec06c

File tree

89 files changed

+1715
-7185
lines changed

Some content is hidden

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

89 files changed

+1715
-7185
lines changed

.github/workflows/test.yml

Lines changed: 44 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,23 @@ jobs:
7474
- ubuntu-latest
7575
- macOS-latest
7676
- windows-latest
77-
# Mark which GHC versions on which platforms we want to test.
78-
include:
79-
# Test all supported versions, but only on ubuntu and windows
80-
- os: ubuntu-latest
81-
test: true
82-
- os: windows-latest
83-
test: true
77+
test:
78+
- true
79+
- false
80+
exclude:
81+
# Don't do anything for windows on 9.2, it has particularly bad long-path issues
82+
- os: windows-latest
83+
ghc: "9.2"
84+
# Exclude the test configuration on macos, it's sufficiently similar to other OSs
85+
# that it mostly just burns CI time. Buiding is still useful since it catches
86+
# solver issues.
87+
- os: macOS-latest
88+
test: true
89+
# Exclude the build-only configurations for windows and ubuntu
90+
- os: windows-latest
91+
test: false
92+
- os: ubuntu-latest
93+
test: false
8494

8595
steps:
8696
- uses: actions/checkout@v3
@@ -137,112 +147,112 @@ jobs:
137147

138148
- if: matrix.test
139149
name: Test hls-refactor-plugin
140-
run: cabal test hls-refactor-plugin --test-options="$TEST_OPTS" || cabal test hls-refactor-plugin --test-options="$TEST_OPTS"
150+
run: cabal test hls-refactor-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-refactor-plugin-tests --test-options="$TEST_OPTS"
141151

142152
- if: matrix.test
143153
name: Test hls-floskell-plugin
144-
run: cabal test hls-floskell-plugin --test-options="$TEST_OPTS" || cabal test hls-floskell-plugin --test-options="$TEST_OPTS"
154+
run: cabal test hls-floskell-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-floskell-plugin-tests --test-options="$TEST_OPTS"
145155

146156
- if: matrix.test
147157
name: Test hls-class-plugin
148-
run: cabal test hls-class-plugin --test-options="$TEST_OPTS" || cabal test hls-class-plugin --test-options="$TEST_OPTS"
158+
run: cabal test hls-class-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-class-plugin-tests --test-options="$TEST_OPTS"
149159

150160
- if: matrix.test
151161
name: Test hls-pragmas-plugin
152-
run: cabal test hls-pragmas-plugin --test-options="$TEST_OPTS" || cabal test hls-pragmas-plugin --test-options="$TEST_OPTS"
162+
run: cabal test hls-pragmas-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-pragmas-plugin-tests --test-options="$TEST_OPTS"
153163

154164
- if: matrix.test
155165
name: Test hls-eval-plugin
156-
run: cabal test hls-eval-plugin --test-options="$TEST_OPTS" || cabal test hls-eval-plugin --test-options="$TEST_OPTS"
166+
run: cabal test hls-eval-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-eval-plugin-tests --test-options="$TEST_OPTS"
157167

158168
- if: matrix.test
159169
name: Test hls-splice-plugin
160-
run: cabal test hls-splice-plugin --test-options="$TEST_OPTS" || cabal test hls-splice-plugin --test-options="$TEST_OPTS"
170+
run: cabal test hls-splice-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-splice-plugin-tests --test-options="$TEST_OPTS"
161171

162172
- if: matrix.test && matrix.ghc != '9.2'
163173
name: Test hls-stan-plugin
164-
run: cabal test hls-stan-plugin --test-options="$TEST_OPTS" || cabal test hls-stan-plugin --test-options="$TEST_OPTS"
174+
run: cabal test hls-stan-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-stan-plugin-tests --test-options="$TEST_OPTS"
165175

166176
- if: matrix.test
167177
name: Test hls-stylish-haskell-plugin
168-
run: cabal test hls-stylish-haskell-plugin --test-options="$TEST_OPTS" || cabal test hls-stylish-haskell-plugin --test-options="$TEST_OPTS"
178+
run: cabal test hls-stylish-haskell-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-stylish-haskell-plugin-tests --test-options="$TEST_OPTS"
169179

170180
- if: matrix.test
171181
name: Test hls-ormolu-plugin
172-
run: cabal test hls-ormolu-plugin --test-options="$TEST_OPTS" || cabal test hls-ormolu-plugin --test-options="$TEST_OPTS"
182+
run: cabal test hls-ormolu-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-ormolu-plugin-tests --test-options="$TEST_OPTS"
173183

174184
- if: matrix.test
175185
name: Test hls-fourmolu-plugin
176-
run: cabal test hls-fourmolu-plugin --test-options="$TEST_OPTS" || cabal test hls-fourmolu-plugin --test-options="$TEST_OPTS"
186+
run: cabal test hls-fourmolu-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-fourmolu-plugin-tests --test-options="$TEST_OPTS"
177187

178188
- if: matrix.test
179189
name: Test hls-explicit-imports-plugin test suite
180-
run: cabal test hls-explicit-imports-plugin --test-options="$TEST_OPTS" || cabal test hls-explicit-imports-plugin --test-options="$TEST_OPTS"
190+
run: cabal test hls-explicit-imports-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-explicit-imports-plugin-tests --test-options="$TEST_OPTS"
181191

182192
- if: matrix.test
183193
name: Test hls-call-hierarchy-plugin test suite
184-
run: cabal test hls-call-hierarchy-plugin --test-options="$TEST_OPTS" || cabal test hls-call-hierarchy-plugin --test-options="$TEST_OPTS"
194+
run: cabal test hls-call-hierarchy-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-call-hierarchy-plugin-tests --test-options="$TEST_OPTS"
185195

186196
- if: matrix.test && matrix.os != 'windows-latest'
187197
name: Test hls-rename-plugin test suite
188-
run: cabal test hls-rename-plugin --test-options="$TEST_OPTS" || cabal test hls-rename-plugin --test-options="$TEST_OPTS"
198+
run: cabal test hls-rename-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-rename-plugin-tests --test-options="$TEST_OPTS"
189199

190200
- if: matrix.test
191201
name: Test hls-hlint-plugin test suite
192-
run: cabal test hls-hlint-plugin --test-options="$TEST_OPTS" || cabal test hls-hlint-plugin --test-options="$TEST_OPTS"
202+
run: cabal test hls-hlint-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-hlint-plugin-tests --test-options="$TEST_OPTS"
193203

194204
- if: matrix.test
195205
name: Test hls-module-name-plugin test suite
196-
run: cabal test hls-module-name-plugin --test-options="$TEST_OPTS" || cabal test hls-module-name-plugin --test-options="$TEST_OPTS"
206+
run: cabal test hls-module-name-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-module-name-plugin-tests --test-options="$TEST_OPTS"
197207

198208
- if: matrix.test
199209
name: Test hls-alternate-number-format-plugin test suite
200-
run: cabal test hls-alternate-number-format-plugin --test-options="$TEST_OPTS" || cabal test hls-alternate-number-format-plugin --test-options="$TEST_OPTS"
210+
run: cabal test hls-alternate-number-format-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-alternate-number-format-plugin-tests --test-options="$TEST_OPTS"
201211

202212
- if: matrix.test
203213
name: Test hls-qualify-imported-names-plugin test suite
204-
run: cabal test hls-qualify-imported-names-plugin --test-options="$TEST_OPTS" || cabal test hls-qualify-imported-names-plugin --test-options="$TEST_OPTS"
214+
run: cabal test hls-qualify-imported-names-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-qualify-imported-names-plugin-tests --test-options="$TEST_OPTS"
205215

206216
- if: matrix.test
207217
name: Test hls-code-range-plugin test suite
208-
run: cabal test hls-code-range-plugin --test-options="$TEST_OPTS" || cabal test hls-code-range-plugin --test-options="$TEST_OPTS"
218+
run: cabal test hls-code-range-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-code-range-plugin-tests --test-options="$TEST_OPTS"
209219

210220
- if: matrix.test
211221
name: Test hls-change-type-signature test suite
212-
run: cabal test hls-change-type-signature-plugin --test-options="$TEST_OPTS" || cabal test hls-change-type-signature-plugin --test-options="$TEST_OPTS"
222+
run: cabal test hls-change-type-signature-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-change-type-signature-plugin-tests --test-options="$TEST_OPTS"
213223

214224
- if: matrix.test
215225
name: Test hls-gadt-plugin test suit
216-
run: cabal test hls-gadt-plugin --test-options="$TEST_OPTS" || cabal test hls-gadt-plugin --test-options="$TEST_OPTS"
226+
run: cabal test hls-gadt-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-gadt-plugin-tests --test-options="$TEST_OPTS"
217227

218228
- if: matrix.test
219229
name: Test hls-explicit-fixity-plugin test suite
220-
run: cabal test hls-explicit-fixity-plugin --test-options="$TEST_OPTS" || cabal test hls-explicit-fixity-plugin --test-options="$TEST_OPTS"
230+
run: cabal test hls-explicit-fixity-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-explicit-fixity-plugin-tests --test-options="$TEST_OPTS"
221231

222232
- if: matrix.test
223233
name: Test hls-explicit-record-fields-plugin test suite
224-
run: cabal test hls-explicit-record-fields-plugin --test-options="$TEST_OPTS" || cabal test hls-explicit-record-fields-plugin --test-options="$TEST_OPTS"
234+
run: cabal test hls-explicit-record-fields-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-explicit-record-fields-plugin-tests --test-options="$TEST_OPTS"
225235

226236
## version needs to be limited since the tests depend on cabal-fmt which only builds using specific ghc versions
227237
- if: matrix.test && matrix.ghc == '9.2'
228238
name: Test hls-cabal-fmt-plugin test suite
229-
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"
239+
run: cabal test hls-cabal-fmt-plugin-tests --flag=isolateTests --test-options="$TEST_OPTS" || cabal test hls-cabal-fmt-plugin-tests --flag=isolateTests --test-options="$TEST_OPTS"
230240

231241
- if: matrix.test
232242
name: Test hls-cabal-plugin test suite
233-
run: cabal test hls-cabal-plugin --test-options="$TEST_OPTS" || cabal test hls-cabal-plugin --test-options="$TEST_OPTS"
243+
run: cabal test hls-cabal-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-cabal-plugin-tests --test-options="$TEST_OPTS"
234244

235245
- if: matrix.test
236246
name: Test hls-retrie-plugin test suite
237-
run: cabal test hls-retrie-plugin --test-options="$TEST_OPTS" || cabal test hls-retrie-plugin --test-options="$TEST_OPTS"
247+
run: cabal test hls-retrie-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-retrie-plugin-tests --test-options="$TEST_OPTS"
238248

239249
- if: matrix.test
240250
name: Test hls-overloaded-record-dot-plugin test suite
241-
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"
251+
run: cabal test hls-overloaded-record-dot-plugin-tests --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-tests --test-options="$TEST_OPTS"
242252

243253
- if: matrix.test
244254
name: Test hls-semantic-tokens-plugin test suite
245-
run: cabal test hls-semantic-tokens-plugin --test-options="$TEST_OPTS" || cabal test hls-semantic-tokens-plugin --test-options="$TEST_OPTS"
255+
run: cabal test hls-semantic-tokens-plugin-tests --test-options="$TEST_OPTS" || cabal test hls-semantic-tokens-plugin-tests --test-options="$TEST_OPTS"
246256

247257

248258
test_post_job:

cabal.project

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -8,33 +8,6 @@ packages:
88
./ghcide/test
99
./hls-plugin-api
1010
./hls-test-utils
11-
./plugins/hls-cabal-plugin
12-
./plugins/hls-cabal-fmt-plugin
13-
./plugins/hls-stylish-haskell-plugin
14-
./plugins/hls-fourmolu-plugin
15-
./plugins/hls-class-plugin
16-
./plugins/hls-eval-plugin
17-
./plugins/hls-explicit-imports-plugin
18-
./plugins/hls-hlint-plugin
19-
./plugins/hls-rename-plugin
20-
./plugins/hls-retrie-plugin
21-
./plugins/hls-splice-plugin
22-
./plugins/hls-floskell-plugin
23-
./plugins/hls-pragmas-plugin
24-
./plugins/hls-module-name-plugin
25-
./plugins/hls-ormolu-plugin
26-
./plugins/hls-call-hierarchy-plugin
27-
./plugins/hls-alternate-number-format-plugin
28-
./plugins/hls-qualify-imported-names-plugin
29-
./plugins/hls-code-range-plugin
30-
./plugins/hls-change-type-signature-plugin
31-
./plugins/hls-stan-plugin
32-
./plugins/hls-gadt-plugin
33-
./plugins/hls-explicit-fixity-plugin
34-
./plugins/hls-explicit-record-fields-plugin
35-
./plugins/hls-refactor-plugin
36-
./plugins/hls-overloaded-record-dot-plugin
37-
./plugins/hls-semantic-tokens-plugin
3811

3912
index-state: 2024-01-21T00:00:00Z
4013

0 commit comments

Comments
 (0)