* Bump to ghc 9.6.4 based lts-22.9
* Try more recent haskell image
* Fool around
* Cleanup and rename back to nightly
---------
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
* Bump lsp versions
Broadly:
- A few places where we need to pipe `ProgressToken`s around.
- I also just removed the progress reporting from resolve commands,
since it's going to often be costly to do progress reporting on
something that short. Possibly we could revisit after https://github.com/haskell/lsp/issues/549
- Some changes to the registration options we infer
- A few places where we need to adapt to ignoring registrations or not
- Adapting to use the ghcide verison of `getCompletionPrefix` everywhere
- Adapting to use the new mixed rope format
* stack
* More fixes
* Add -Wunused-packages to common warnings
* Get rid of common deps
* Wrapper needs process on windows
* Refine
* Does it work like this?
* More cleanups in ghcide
* Fix build with stack
* Also fix stack --test
* Less noisy workaround
* Fix new warnings
A follow up of #3958 , we have added a tokenizor to walk the hieAst along with the file rope, it means we no longer need to do the detour of storing temperal result as Map Range (Set identifier), instead we can optimize by fusing most of the logic into tokenizer and return [(Range, HsSemanticTokenType)] directly.
* Bump ghcide-test-utils to 2.0.0.0
We need this so we can release a version compatible with 2.6.0.0
I will need to make hackage revisions to all the plugin packages that depend on it
* update ghcide-test-utils tested with
* Fix warnings in hls-graph, enable pedantic in CI
* Fix build with flags
* stylish-haskell
* Split Key stuff to separate module with explicit export list
* Try the cabal configure suggestion in CI flags job
* Newline fix
* Enable pedantic for all
* Typo
* stylish-haskell
* pedantic is already enabled for all
* Fix error in hls-plugin-api
* Address nitpick, use lsp-types in tests instead
* Set test options via cabal.project
This means we can set the default properly for people using the project,
and also set things more simply in the test workflow.
* Set options after testing hls-graph
* Revert "Set options after testing hls-graph"
This reverts commit 73fa801315.
* Quote filters
* Use cabal configure instead
* Try better
* Use relative file paths for HIE files and Stan's config maps
Stan expects relative paths. Without this change, file names won't map
correctly to their associated language extension data, which means no
enabled extensions will be detected. This causes annoying false
positives with, e.g., the `StrictData` extension. (See issue #3174.)
* Un-exclude Stan diagnostics related to `StrictData`
We specifically want to test this diagnostic, so we need it to fire.
* Add tests to ensure the Stan plugin detects a module's language extensions
Includes test cases for both `LANGUAGE` pragmas and extensions enabled
in a project's `.cabal` file.
* Tighten up Stan plugin language extension test cases
These changes ensure that the tests will fail given bad mappings in
either the `cabalExtensionsMap` OR the `checksMap`. Either of these
could cause bad behavior as seen in issue #3174.
* Use correct extension/file mappings even in the case of a config fiasco
The Stan plugin will still operate as expected even if we can't load a
config -- it will simply default to showing all inspections.
* Remove a slew of unused imports
* Use OS-agnostic path separators in tests
* Run `stylish-haskell`
* Ensure `hs-source-dirs` in test cabal files don't contain path separators
Related to (what I assume is) a bug in Stan, or its `extensions`
library. Regardless of OS, the `hs-source-dirs` field is prepended
as-is to the module name to create the file paths used in the cabal
extensions map. This means the maps won't work in Windows if your cabal
file contains `/` path separators. Working around the limitation here
to ensure tests work on all platforms.
---------
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* Reuse pickActionWithTitle
* More reuse and homogeneity
* Use tasty's TestName, remove pre ghc 9.0 workaround
* Fix test on windows
---------
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
* Fix various issues
- Make sure that we are always referring to the local libraries and not
the published Hackage packages!
- This needs a `cabal-version` bump
- Make sure every component imports the default stanzas
- Add a `defaults` stanza for `default-language`
- Add a `tests-default` stanza for making sure test suites are built
threaded
- Remove unnecessary warning-related `ghc-options`
- Use the `pedantic` stanza instead of manual checks for `pedantic`
* Comments
* Turn off tasty-rerun
* Eval plugin test fixups
* Revert "Turn off tasty-rerun"
This reverts commit 2736950515.
* Instead just turn off the test log caching
* Try this
* More eval plugin
* Add a comment
fix https://github.com/haskell/haskell-language-server/issues/3957
Things have been done:
1. Switch `Name` to `Identifier` in the implementation and add `ModuleName` to the `HsSemanticTokenType`
2. Strip ``` ` ` ``` and `()`, and split out qualified names. e.g.``` `Preclude.length` ``` to ```Preclude.``` `length`
3. add tokenizer to walk ast with the souce rope to get more accurate result and faster. Should fix https://github.com/haskell/haskell-language-server/issues/3983.
4. add type sig to semanticConfig's TH result
* Fix -Wall and -Wunused-packages in stylish-haskell plugin
* Format
---------
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* Stylish-haskell now supports 9.8
* Ormolu and fourmolu already support 9.8
* New version of floskell in fact builds with 9.8
* New hlint builds with 9.8
* Fix most -Wall in ghcide
* Fix ghc 9.2.8
* No spaces after CPP #
---------
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>