haskell-language-server/stack.yaml

95 lines
2.3 KiB
YAML
Raw Normal View History

2022-08-19 05:24:02 +03:00
resolver: nightly-2022-08-15
2020-01-25 17:33:53 +03:00
packages:
- .
- ./hie-compat
- ./hls-graph
- ./ghcide/
- ./ghcide/test
- ./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-qualify-imported-names-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-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
- ./plugins/hls-code-range-plugin
- ./plugins/hls-change-type-signature-plugin
- ./plugins/hls-gadt-plugin
- ./plugins/hls-explicit-fixity-plugin
- ./plugins/hls-refactor-plugin
2020-07-20 14:19:42 +03:00
2020-01-30 02:24:19 +03:00
extra-deps:
- floskell-0.10.6@sha256:e77d194189e8540abe2ace2c7cb8efafc747ca35881a2fefcbd2d40a1292e036,3819
- hiedb-0.4.2.0
- implicit-hie-0.1.2.7@sha256:82bbbb1a8c05f99c8af3c16ac53e80c8648d8bf047b25ed5ce45a135bd736907,3122
- implicit-hie-cradle-0.5.0.0@sha256:4276f60f3a59bc22df03fd918f73bca9f777de9568f85e3a8be8bd7566234a59,2368
- monad-dijkstra-0.1.1.3@sha256:d2fc098d7c122555e726830a12ae0423ac187f89de9228f32e56e2f6fc2238e1,1900
- retrie-1.2.0.1
- co-log-core-0.3.1.0
- lsp-1.6.0.0
- lsp-types-1.6.0.0
- lsp-test-0.14.1.0
- hie-bios-0.11.0
# currently needed for ghcide>extra, etc.
allow-newer: true
ghc-options:
"$everything": -haddock
configure-options:
ghcide:
- --disable-library-for-ghci
haskell-language-server:
- --disable-library-for-ghci
heapsize:
- --disable-library-for-ghci
2020-12-30 01:58:59 +03:00
flags:
haskell-language-server:
pedantic: true
ignore-plugins-ghc-bounds: true
brittany: false
haddockComments: false
retrie: false
splice: false
tactic: false
2020-12-30 01:58:59 +03:00
retrie:
BuildExecutable: false
Ghc 9.0.1 support for ghcide (#1649) * hie-compat: Add basic support for ghc-9.0.1 A tiny step towards #297 * hie-compat: Remove dependency on ghc-api-compat * hie-compat: Add more backwards compatability * Import a bunch of upstream ghc9 fixes * cabal.project: allow-newer: *:* The lazy solution to making things compile * Add more upstream fixes * Bump patch of ghc-check * ghcide: Add basic support for GHC-9.0.1 I tried to limit the use of CPP to the Compat module as much as possible by re-exporting the new functions under the old names, but there is still plenty of pragmas all over the code. I'm using ghc-api-compat so the imports doesn't need to be changed as much. * ghcide: Fix backwards compatability with ghc-8.8.4 * ghc9-ghcide: Fix some more issues that caused runtime errors * Restore initDynLinker for older versions of ghc It was probably important for something * Fix ghc-8.6.5 compatability * Fix completion test failures for ghc9 With this example: f asdfgh = asd it would suggest to complete `asd` into `asd_arNC`, which seems to be a name it generated because of deferred-out-of-scope-variables * Ghc-check now supports ghc-9.0.1 * Retrie now supports ghc-9.0.1 But it's not on hackage yet. * Restore retrie orphans * tests: Ghc9 shows [Char] as String by default This seems like an improvement, so just update the test-suite * tests: Ghc9 shows TH-errors after the dollar sign Instead of including it like older versions did $(foo) ~~~~ some TH error/warning * Fix two more test failures - GHC9 uses a more lenient haddock parser - TH2.17 has polymorphic Q monad with a type class * ghc9: Fix "Remove redundant imports" code action In ghc9, only the specific unused function is highlighted, instead of the whole line. * ghcide-tests: Show errors where they are caused instead of deep inside some generic helper function * Only use nub on SrcSpan for ghc>=9 * Remove more CPP pragmas * Remove a bit more CPP This could almost be handled by ghc-api-compat, but if it was imported from TyCoPpr, it doesn't work with ghc < 8.10 * Update stack files to support new versions * Use the version of retire on hackage The new version is now released * Don't use allow-newer: *:* * ghcide-tests: Enable test no longer broken in ghc9 * Update hiedb version for ghcide * Adjust for a minor change in test output for ghc9 * Fix benchmark test for ghc9 Cabal-3.2 is not buildable on ghc9, but 3.4 is builable on older ghc. * Mark minor issues as broken for ghc9 Ghc9 highlights both the constructor and the other fields Maybe this should just be accepted and not seen as broken? * haddock-comments-plugin: Ghc9 support * hls-eval-plugin: Partial ghc9 support * WIP: hls-eval-plugin: Partial ghc9 support * hls-explicit-imports-plugin: Add ghc9 support Now ignores any imports with Unhelpful locations, since we can't make a map of SrcLoc * hls-retrie-plugin: Add ghc9 support * hls-hlint-plugin: Add ghc9 support * Fix backwards compatability of hlint plugin * Fix stack builds (Broken by previous hlint fixes) * Disable tests when their required plugins are disabled Not all plugins are supported on ghc9 yet, but we still want to run the tests for the supported parts * ghc9: Fix module name plugin * Add a stack file and run tests for ghc9 in ci * Add missing packages to ghc-9 stack * Resolve rebase issues Maybe it's better to create merge commits instead? * Allow newer for more packages so cabal stops complaining These aren't really working, but since they are dependencies of packages in the `packages:` section the resolver won't allow us to build anything without this, even if those plugins are disabled. * Replace MIN_GHC_API_VERSION with MIN_VERSION_ghc * Revert incorrect change to hlint code * Remove remaining traces of GHC_LIB flag * Add back ghc 9 to github workflow * Revert "Add back ghc 9 to github workflow" This reverts commit c465a1e51aaaabf56dc7ef8f7fa801ef0abf8fdc. * hie-compat: Add basic support for ghc-9.0.1 A tiny step towards #297 * hie-compat: Remove dependency on ghc-api-compat * hie-compat: Add more backwards compatability * Disable CI for ghc9 * Use newer version of apply-refact * Don't needlessly duplicate code from ghc * hie-compat: Reexport the original version of HieBin * Don't include broken "allow-newer"s * FIx stack build for ghc9 * Fix warning from imperfect merge commit * Don't needlessly duplicate code from ghc * hie-compat: Reexport the original version of HieBin * Add missing ghc-api-compat * Fix ghc9 build for ModuleName * Add more conditionals on flags for tests * Add a separate cabal.project file for ghc9 As far as I know, this is the only way to disable the packages who's dependencies doesn't compile in GHC9 yet. * Fix and re-enable CI for GHC9 * Remove accidental non-breaking space * Fix CI build for ghc9 Since we are changing the flags for haskell-language-server, which CI renames to hls, we need to use the shortened name in those flags as well * Run tests for ghc9 in CI * Minor CI changes * Use proper values when enriching hie * Don't try to test hls-refine-imports-plugin on ghc9 * Update comment about ghc9 crashing on initDynLinker * setSessionDynamicFlags to prevent ghc9 from crashing The only way to set the dynamic linker is with the function `setSessionDynFlags` so we call it with the result from `getSessionDynFlags` to give it a (hopefully sensible) argument. See also this commit: https://gitlab.haskell.org/ghc/ghc/commit/18757cab04c5c5c48eaceea19469d4811c5d0371 * Revert "setSessionDynamicFlags to prevent ghc9 from crashing" This reverts commit 4065ac8394065f8aa15b1b36e0d56e3ba7762e44. That change made the "ghcide.cradle.muli" tests fail. * Simplify logic in hls-hlint-plugin.cabal * Add comment on OldRealSrcSpan * Remove source overrides for non-ghc9 builds in cabal.project * Remove commented out code Co-authored-by: Pepe Iborra <pepeiborra@me.com> * Remove resolved question from comment "This code is only concerned with extracting argument names, so I don't see how multiplicity would be relevant here" https://github.com/haskell/haskell-language-server/pull/1649#discussion_r642606967 * ghc9: Update to latest version of LSP per * cabal-ghc901.project: Remove commented out code * Update the lsp commit hash for stack as well * Use a version of lsp without haskell/lsp#326 That patch was causing test failures, but the issues should be fixed for real at some point, so that patch can be incluede Co-authored-by: Pepe Iborra <pepeiborra@gmail.com> Co-authored-by: Pepe Iborra <pepeiborra@me.com>
2021-06-06 20:16:29 +03:00
# Stack doesn't support automatic flags.
# Use ghc-lib force instead of ghc itself
ghc-lib-parser-ex:
auto: false
hlint:
ghc-lib: true
stylish-haskell:
ghc-lib: true
hyphenation:
embed: true
2020-12-30 01:58:59 +03:00
nix:
packages: [ icu libcxx zlib ]
2020-01-30 00:15:40 +03:00
concurrent-tests: false
system-ghc: true