* 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
* Don't run hlint on testdata directories
* Bump hlint version
* Remove quotes
* Ignore test data directories in .hlint.yaml
---------
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
Co-authored-by: Patrick Wales <fwy996602672@gmail.com>
The plugin was implemented by calling "load" which circumvents all of
HLSs caching mechanisms for interface files and linkables. Instead we
should work like the other typechecking functions which get all the
stuff we need using HLS rules and setup the HscEnv with all the state in
the right places.
The key part to this is setting up all the HPT modules with linkables if
they are depenedencies of the module we are trying to run a function
from.
- ban load functions from GHC driver
- Enable CI for hls-eval-plugin and fix a bug due to clearing of mi_globals
1. Recompilation avoidance regresses in GHC 9.4 due to interactions between GHC and HLS's implementations.
Avoid this by filtering out the information that causes the conflict
See https://gitlab.haskell.org/ghc/ghc/-/issues/22744.
2. The recompilation avoidance info GHC stores in interfaces can blow up to be
extremely large when deserialised from disk. See https://gitlab.haskell.org/ghc/ghc/-/issues/22744
Deduplicate these filepaths.
* Add partial functions under alternative import names
* Ban tracing functions also
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* HLint partial functions
* Delete commented out stuff
* Delete flag-based warnings, unclear they add much
* Delete DA-specific hints
* Delete extra cpp args
* Delete extension options relating to dead build system
* Don't bother trying to restrict CPP for now, it's everywhere
* Make the hlint job fail if there are any errors
* Fix for rebase, add unsafePerformIO and fold1 variants
* Add some more indexing functions
* Try turning off hlint on this test file
* Add .hlint.yaml file for hls-hlint-plugin
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>