-
-
Notifications
You must be signed in to change notification settings - Fork 389
9.6 support for HLS #3480
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
9.6 support for HLS #3480
Changes from all commits
e9000e2
c328033
e958c9d
81a7485
84daa88
e7273d8
c69ba63
c640f0a
677e0e5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
[ "9.4.4" , "9.2.5" , "9.0.2" , "8.10.7" ] | ||
[ "9.6.1", "9.4.4" , "9.2.5" , "9.0.2" , "8.10.7" ] |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -42,15 +42,26 @@ packages: | |
-- See https://github.com/haskell/haskell-language-server/blob/master/.gitlab-ci.yml | ||
optional-packages: vendored/*/*.cabal | ||
|
||
tests: true | ||
tests: True | ||
|
||
-- mfsolve has duplicate instances in its test suite | ||
-- See: https://github.com/kuribas/mfsolve/issues/8 | ||
package mfsolve | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm confused by this. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not sure, maybe a cabal bug? |
||
tests: False | ||
|
||
if impl(ghc >= 9.5) | ||
wz1000 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
source-repository-package | ||
type:git | ||
location: https://github.com/wz1000/retrie | ||
tag: 0a2dbfc00e745737f249f16325b2815d2e3a14eb | ||
|
||
package * | ||
ghc-options: -haddock | ||
test-show-details: direct | ||
|
||
write-ghc-environment-files: never | ||
|
||
index-state: 2023-03-15T00:00:00Z | ||
index-state: 2023-03-23T00:00:00Z | ||
|
||
constraints: | ||
-- For GHC 9.4, older versions of entropy fail to build on Windows | ||
|
@@ -67,8 +78,9 @@ constraints: | |
ghc-lib-parser-ex -auto, | ||
stylish-haskell +ghc-lib, | ||
fourmolu -fixity-th, | ||
-- http2 doesn't build with -haddock on ghc-8.10 | ||
http2 < 4.0.0 | ||
setup.happy == 1.20.1.1, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. why aren't these constraints in the conditional block? comments? can we put the 9.4 constraints in a conditional block also? |
||
happy == 1.20.1.1, | ||
filepath installed, | ||
|
||
-- This is benign and won't affect our ability to release to Hackage, | ||
-- because we only depend on `ekg-json` when a non-default flag | ||
|
@@ -81,7 +93,6 @@ source-repository-package | |
type:git | ||
location: https://github.com/pepeiborra/ekg-json | ||
tag: 7a0af7a8fd38045fd15fb13445bdcc7085325460 | ||
-- https://github.com/tibbe/ekg-json/pull/12 | ||
-- END DELETE | ||
|
||
allow-newer: | ||
|
@@ -107,3 +118,23 @@ allow-newer: | |
uuid:time, | ||
vector-space:base, | ||
ekg-wai:time, | ||
|
||
if impl(ghc >= 9.5) | ||
allow-newer: | ||
-- ghc-9.6 | ||
algebraic-graphs:transformers, | ||
cryptohash-md5:base, | ||
cryptohash-sha1:base, | ||
ekg-core:ghc-prim, | ||
focus:transformers, | ||
ghc-trace-events:base, | ||
implicit-hie-cradle:transformers, | ||
retrie:base, | ||
retrie:ghc, | ||
retrie:ghc-exactprint, | ||
retrie:mtl, | ||
retrie:transformers, | ||
semigroupoids:base, | ||
stm-hamt:transformers, | ||
entropy:Cabal, | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
{ pkgs, inputs }: | ||
|
||
let | ||
disabledPlugins = [ | ||
# That one is not technically a plugin, but by putting it in this list, we | ||
# get it removed from the top level list of requirement and it is not pull | ||
# in the nix shell. | ||
"shake-bench" | ||
"hls-retrie-plugin" | ||
"hls-splice-plugin" | ||
"hls-class-plugin" | ||
"hls-rename-plugin" | ||
"hls-gadt-plugin" | ||
"hls-refactor-plugin" | ||
]; | ||
|
||
hpkgsOverride = hself: hsuper: | ||
with pkgs.haskell.lib; | ||
{ | ||
hlsDisabledPlugins = disabledPlugins; | ||
|
||
# Override for all derivation | ||
# If they are considered as broken, we just disable jailbreak and hope for the best | ||
mkDerivation = args: | ||
hsuper.mkDerivation (args // | ||
{ | ||
jailbreak = true; | ||
broken = false; | ||
doCheck = false; | ||
}); | ||
apply-refact = hsuper.apply-refact_0_12_0_0; | ||
tagged = hself.callHackage "tagged" "0.8.7" { }; | ||
primitive = hself.callHackage "primitive" "0.8.0.0" { }; | ||
unix-compat = hself.callCabal2nix "unix-compat" inputs.haskell-unix-compat { }; | ||
MonadRandom = hself.callHackage "MonadRandom" "0.6" { }; | ||
hiedb = hself.callCabal2nix "hiedb" inputs.haskell-hiedb { }; | ||
hie-bios = hself.callCabal2nix "hie-bios" inputs.haskell-hie-bios { }; | ||
ghc-exactprint = hself.callCabal2nix "ghc-exactprint" inputs.haskell-ghc-exactprint { }; | ||
|
||
# ptr-poker breaks on MacOS without SSE2 optimizations | ||
# https://github.com/nikita-volkov/ptr-poker/issues/11 | ||
ptr-poker = hself.callCabal2nix "ptr-poker" inputs.ptr-poker { }; | ||
|
||
ormolu = hself.ormolu_0_5_3_0; | ||
|
||
stylish-haskell = appendConfigureFlag hsuper.stylish-haskell "-fghc-lib"; | ||
|
||
# Re-generate HLS drv excluding some plugins | ||
haskell-language-server = | ||
hself.callCabal2nixWithOptions "haskell-language-server" ./. | ||
# Pedantic cannot be used due to -Werror=unused-top-binds | ||
# Check must be disabled due to some missing required files | ||
(pkgs.lib.concatStringsSep " " [ "--no-check" "-f-pedantic" "-f-hlint" "-f-refactor" "-f-retrie" "-f-class" "-f-gadt" "-f-splice" "-f-rename" ]) { }; | ||
}; | ||
in { | ||
inherit disabledPlugins; | ||
tweakHpkgs = hpkgs: hpkgs.extend hpkgsOverride; | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm confused by this. Is this pervasively wrong with everyone using these workflows? Do you have a reference?