-
-
Notifications
You must be signed in to change notification settings - Fork 389
nix update #2892
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
nix update #2892
Conversation
no-op commit was to no-opy, it skipped the job again 🙈 maybe touch a nix file? |
It's actually unrelated. It just skipped the entire |
configuration-ghc-810.nix
Outdated
|
||
let | ||
disabledPlugins = [ | ||
"hls-brittany-plugin" |
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.
Theses plugins are broken with GHC 8.10?
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.
Copy/paste, I don't know. Can iterate on this too, on a separate task
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.
Fixed
configuration-ghc-88.nix
Outdated
{ pkgs, inputs }: | ||
|
||
let | ||
disabledPlugins = [ |
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.
Similarly, are theses plugins broken with ghc 8.8?
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.
It came as I copied the config file from newer versions, I don't know much how disabledPlugins
work. I'm happy to iterate on this in a separate task
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.
It's fixed now
docs/troubleshooting.md
Outdated
@@ -174,7 +174,7 @@ cabal update && cabal install :pkg:haskell-language-server | |||
If you are compiling with a ghc version with a specific `cabal-ghc${ghcVersion}.project` in the repo you will have to use it. For example for ghc-9.0.x: | |||
|
|||
```bash | |||
cabal update && cabal install :pkg:haskell-language-server --project-file=cabal-ghc90.project | |||
cabal update && cabal install pkg:haskell-language-server |
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.
Why did you change this line, it is now incoherent with the above documentation which states that "If you are compiling with a ghc version with a specific cabal...project".
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.
Came with @pepeiborra changes
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.
resolved now that @pepeiborra has merged his changes in master branch
hie-compat/hie-compat.cabal
Outdated
@@ -24,7 +24,7 @@ library | |||
default-language: Haskell2010 | |||
build-depends: | |||
base < 4.17, array, bytestring, containers, directory, filepath, transformers | |||
if flag(ghc-lib) | |||
if flag(ghc-lib) && impl(ghc < 9) |
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 surprised by this change. It was working fine before.
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.
It was a rebase from @pepeiborra branch
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.
@guibou this is resolved, @pepeiborra changes have been merged into the master branch
If build are passing, I'm OK with this. However I don't understand why you introduced new "configuration" files for different version of GHC and why you disabled some plugins for theses versions, could you check that? |
b0e2eca
to
e341c44
Compare
Different versions of GHC have different requirements: ghc-exactprint, ghc-lib{parser,parser-ex}, hlint36 vs hlint34... I have now addressed the situation with the @guibou , @michaelpj - can you help review and merge this? Edit: @July541 (thank you!) re-ran the checks, all tests passed and we've got a green build. |
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.
Thanks again for tackling this!
Could you add some comments on why the various things in the configuration-*.nix
files are needed? That makes it much easier to maintain.
I can't approve my own PR (lol) so can someone else do so please?
|
||
# For markdown support | ||
myst-parser = pkgs.python3Packages.callPackage ./myst-parser.nix {}; |
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.
delete the file
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.
deleted
cabal.project
Outdated
@@ -37,13 +37,13 @@ optional-packages: vendored/*/*.cabal | |||
tests: true | |||
|
|||
package * | |||
-- ghc 8.10 cannot build ghc-lib 9.2 with --haddock | |||
-- ghc-options: -haddock | |||
-- ghc 8.10.7 fails to build ghc-lib-9.2.2 |
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.
probably shouldn't have diffs in this file
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.
spot on! reverted
``` compiler/GHC/CmmToAsm/AArch64/CodeGen.hs:176:15: error: 2081 Error: parse error on input {- | debugIsOn -} 2082 | 2083 176 | ann doc instr {- | debugIsOn -} = ANN doc instr 2084 | ^^^^^^^^^^^^^^^^^ ``` # Please enter the commit message for your changes. Lines starting
Flake lock file updates: • Updated input 'flake-compat': 'github:edolstra/flake-compat/b7547d3eed6f32d06102ead8991ec52ab0a4f1a7' (2022-01-03) → 'github:edolstra/flake-compat/b4a34015c698c7793d592d66adbab377907a2be8' (2022-04-19) • Updated input 'flake-utils': 'github:numtide/flake-utils/997f7efcb746a9c140ce1f13c72263189225f482' (2021-08-20) → 'github:numtide/flake-utils/a4b154ebbdc88c8498a5c7b01589addc9e9cb678' (2022-04-11) • Updated input 'gitignore': 'github:hercules-ci/gitignore.nix/211907489e9f198594c0eb0ca9256a1949c9d412' (2021-01-26) → 'github:hercules-ci/gitignore.nix/bff2832ec341cf30acb3a4d3e2e7f1f7b590116a' (2022-03-05) • Updated input 'hie-bios': 'https://hackage.haskell.org/package/hie-bios-0.9.0/hie-bios-0.9.0.tar.gz?narHash=sha256-nd+FfUQVZNxJfKZkAWA3dF0JwRgXntL+1gGvyNHDbKc=' → 'https://hackage.haskell.org/package/hie-bios-0.9.1/hie-bios-0.9.1.tar.gz?narHash=sha256-5RqspT27rb%2ftMBwrKr4VfSSbq0+c0LMNuaKlTun0Kkk=' • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/c473cc8714710179df205b153f4e9fa007107ff9' (2021-12-13) → 'github:NixOS/nixpkgs/ab83c5d70528f1edc7080dead3a5dee61797b3ff' (2022-04-24) • Updated input 'pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/397f0713d007250a2c7a745e555fa16c5dc8cadb' (2021-06-29) → 'github:cachix/pre-commit-hooks.nix/e5e7b3b542e7f4f96967966a943d7e1c07558042' (2022-04-04) • Updated input 'pre-commit-hooks/flake-utils': 'github:numtide/flake-utils/74f7e4319258e287b0f9cb95426c9853b282730b' (2021-11-28) → 'github:numtide/flake-utils/3cecb5b042f7f209c56ffd8371b2711a290ec797' (2022-02-07) • Updated input 'pre-commit-hooks/nixpkgs': 'github:NixOS/nixpkgs/6f05cfdb1e78d36c0337516df674560e4b51c79b' (2022-01-01) → 'github:nixos/nixpkgs/77a7a4197740213879b9a1d2e1788c6c8ade4274' (2022-02-23)
ghc921 is no longer available on Nix, see: NixOS/nixpkgs#163426
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
Co-authored-by: Michael Peyton Jones <me@michaelpj.com>
@@ -43,7 +43,7 @@ package * | |||
|
|||
write-ghc-environment-files: never | |||
|
|||
index-state: 2022-04-27T09:22:49Z |
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.
Pulls the latest revision of ptr-poker
from hackage
@berberman @guibou - ping |
# Re-generate HLS drv excluding some plugins | ||
haskell-language-server = | ||
hself.callCabal2nixWithOptions "haskell-language-server" ./. | ||
(pkgs.lib.concatStringsSep " " [ "-fpedantic" "-f-hlint" ]) { }; |
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.
This line should be in sync with disabledPlugins
above.
Also, I'm surprised that there is less disabledPlugins with GHC 9.2 compared to GHC 9.0. Is that a mistake or is our support for GHC 9.2 better than 9.0?
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.
disabled "hls-hlint-plugin".
re > why 922 builds more plugins than 902
I have no idea, sorry. Anyone else can help with this?
@@ -0,0 +1,32 @@ | |||
{ stdenv, lib, fetchPypi, buildPythonPackage, isPy3k, python }: |
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.
nixpkgs contains docutils
0.18. Is there a reason to package docutils 0.17? Instead could you bump nixpkgs
?
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.
The RTD theme doesn't work with newer docutils, hence the anchor on docutils-0.17
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.
Ha, great.
@@ -85,6 +123,8 @@ | |||
in hsuper.mkDerivation (args // { | |||
jailbreak = if broken then true else jailbreak; | |||
doCheck = if broken then false else check; | |||
enableLibraryProfiling = false; |
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.
Please add a comment here to justify why your are doing theses changes.
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.
This is a huge MR, thank you.
Looks good to me, if it pass the test, that's fine.
I'm trying to build locally, does not look like it was correctly cached by cachix, so it is slow, but at least there is no nix evaluation failures anymore. |
Fixed with diff --git a/flake.nix b/flake.nix
index 20a8c1dd..f9f30e9c 100644
--- a/flake.nix
+++ b/flake.nix
@@ -395,7 +395,7 @@
nixDevShells = {
haskell-language-server-dev-nix = mkDevShellWithNixDeps ghcDefault "cabal.project";
haskell-language-server-902-dev-nix = mkDevShellWithNixDeps ghc902 "cabal.project";
- haskell-language-server-922-dev-nix = mkDevShellWithNixDeps ghc921 "cabal.project";
+ haskell-language-server-922-dev-nix = mkDevShellWithNixDeps ghc922 "cabal.project";
};
allPackages = { Thinking about it, perhaps the |
Correct, we have never successfully managed to get |
Okay, this is a significant improvement, let's merge this and we can keep working on it from here if there's more stuff to do. |
* Drop -haddock as ghc 8.10.7 fails to build ghc-lib with: ``` compiler/GHC/CmmToAsm/AArch64/CodeGen.hs:176:15: error: 2081 Error: parse error on input {- | debugIsOn -} 2082 | 2083 176 | ann doc instr {- | debugIsOn -} = ANN doc instr 2084 | ^^^^^^^^^^^^^^^^^ ``` # Please enter the commit message for your changes. Lines starting * flake.lock: Update Flake lock file updates: • Updated input 'flake-compat': 'github:edolstra/flake-compat/b7547d3eed6f32d06102ead8991ec52ab0a4f1a7' (2022-01-03) → 'github:edolstra/flake-compat/b4a34015c698c7793d592d66adbab377907a2be8' (2022-04-19) • Updated input 'flake-utils': 'github:numtide/flake-utils/997f7efcb746a9c140ce1f13c72263189225f482' (2021-08-20) → 'github:numtide/flake-utils/a4b154ebbdc88c8498a5c7b01589addc9e9cb678' (2022-04-11) • Updated input 'gitignore': 'github:hercules-ci/gitignore.nix/211907489e9f198594c0eb0ca9256a1949c9d412' (2021-01-26) → 'github:hercules-ci/gitignore.nix/bff2832ec341cf30acb3a4d3e2e7f1f7b590116a' (2022-03-05) • Updated input 'hie-bios': 'https://hackage.haskell.org/package/hie-bios-0.9.0/hie-bios-0.9.0.tar.gz?narHash=sha256-nd+FfUQVZNxJfKZkAWA3dF0JwRgXntL+1gGvyNHDbKc=' → 'https://hackage.haskell.org/package/hie-bios-0.9.1/hie-bios-0.9.1.tar.gz?narHash=sha256-5RqspT27rb%2ftMBwrKr4VfSSbq0+c0LMNuaKlTun0Kkk=' • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/c473cc8714710179df205b153f4e9fa007107ff9' (2021-12-13) → 'github:NixOS/nixpkgs/ab83c5d70528f1edc7080dead3a5dee61797b3ff' (2022-04-24) • Updated input 'pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/397f0713d007250a2c7a745e555fa16c5dc8cadb' (2021-06-29) → 'github:cachix/pre-commit-hooks.nix/e5e7b3b542e7f4f96967966a943d7e1c07558042' (2022-04-04) • Updated input 'pre-commit-hooks/flake-utils': 'github:numtide/flake-utils/74f7e4319258e287b0f9cb95426c9853b282730b' (2021-11-28) → 'github:numtide/flake-utils/3cecb5b042f7f209c56ffd8371b2711a290ec797' (2022-02-07) • Updated input 'pre-commit-hooks/nixpkgs': 'github:NixOS/nixpkgs/6f05cfdb1e78d36c0337516df674560e4b51c79b' (2022-01-01) → 'github:nixos/nixpkgs/77a7a4197740213879b9a1d2e1788c6c8ade4274' (2022-02-23) * nix flake update & bump ghc921 -> ghc922 ghc921 is no longer available on Nix, see: NixOS/nixpkgs#163426 * myst-parser: bump docutils version requirements * fix devShells and packages default * use ghc-exactprint 1.5.0 for ghc922 * ghc902: add flag hlint34 to nix * macosx: add SSE-enabled ptr-poker dependency * ghc902 requires ghc-lib-parser >= 9.2 * nix: ghcDefault supports HLS tweaks * fix typo * add support for pre-commit in mkDevShell * fix typo * add ptr-poker to nix shell * add ghc-884 configuration tweaks * fix stylish-haskell for ghc-884 * fix default ghc lookup * ghc884: fixup brittany version to 0.13.1.2 * ghc884: fixup aeson version to 1.5.2.0 * ghc884: fixup ormolu/fourmolu * add configuration tweak for ghc8107 * rename configuration-ghc-xxx.nix files * update hackage index * use current cabal/hackage to fetch ptr-poker in mkDevShell * reinstate .pre-commit.yaml * nix: temporary disable "build binaries" from the work flow * nix: temporary disable builds and partially populate cachix * nix: temporarily disable ghc 884 and 8107 * nix: temporarily disable nix develop run * nix: re-enable ghc8107/ghc884 builds, disable "build all binaries" * nix: noop push commit to test cachix * nix: touch flake.nix, remove ghc 884 * nix: rm ghc 810, ghc88 + disableLibraryProfiling * nix: build all binaries again * Update flake.nix Co-authored-by: Michael Peyton Jones <me@michaelpj.com> * Update flake.nix Co-authored-by: Michael Peyton Jones <me@michaelpj.com> * Update flake.nix Co-authored-by: Michael Peyton Jones <me@michaelpj.com> * revert change made on comment * rm myst-parser.nix * fix typo (thanks @guibou) * explain why we disable library profiling with nix * ghc922, disable "hls-hlint-plugin" Co-authored-by: Pepe Iborra <pepeiborra@gmail.com> Co-authored-by: Providence Salumu <Providence.Salumu@smunix.com> Co-authored-by: Providence Salumu <smunix@users.noreply.github.com>
* Drop -haddock as ghc 8.10.7 fails to build ghc-lib with: ``` compiler/GHC/CmmToAsm/AArch64/CodeGen.hs:176:15: error: 2081 Error: parse error on input {- | debugIsOn -} 2082 | 2083 176 | ann doc instr {- | debugIsOn -} = ANN doc instr 2084 | ^^^^^^^^^^^^^^^^^ ``` # Please enter the commit message for your changes. Lines starting * flake.lock: Update Flake lock file updates: • Updated input 'flake-compat': 'github:edolstra/flake-compat/b7547d3eed6f32d06102ead8991ec52ab0a4f1a7' (2022-01-03) → 'github:edolstra/flake-compat/b4a34015c698c7793d592d66adbab377907a2be8' (2022-04-19) • Updated input 'flake-utils': 'github:numtide/flake-utils/997f7efcb746a9c140ce1f13c72263189225f482' (2021-08-20) → 'github:numtide/flake-utils/a4b154ebbdc88c8498a5c7b01589addc9e9cb678' (2022-04-11) • Updated input 'gitignore': 'github:hercules-ci/gitignore.nix/211907489e9f198594c0eb0ca9256a1949c9d412' (2021-01-26) → 'github:hercules-ci/gitignore.nix/bff2832ec341cf30acb3a4d3e2e7f1f7b590116a' (2022-03-05) • Updated input 'hie-bios': 'https://hackage.haskell.org/package/hie-bios-0.9.0/hie-bios-0.9.0.tar.gz?narHash=sha256-nd+FfUQVZNxJfKZkAWA3dF0JwRgXntL+1gGvyNHDbKc=' → 'https://hackage.haskell.org/package/hie-bios-0.9.1/hie-bios-0.9.1.tar.gz?narHash=sha256-5RqspT27rb%2ftMBwrKr4VfSSbq0+c0LMNuaKlTun0Kkk=' • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/c473cc8714710179df205b153f4e9fa007107ff9' (2021-12-13) → 'github:NixOS/nixpkgs/ab83c5d70528f1edc7080dead3a5dee61797b3ff' (2022-04-24) • Updated input 'pre-commit-hooks': 'github:cachix/pre-commit-hooks.nix/397f0713d007250a2c7a745e555fa16c5dc8cadb' (2021-06-29) → 'github:cachix/pre-commit-hooks.nix/e5e7b3b542e7f4f96967966a943d7e1c07558042' (2022-04-04) • Updated input 'pre-commit-hooks/flake-utils': 'github:numtide/flake-utils/74f7e4319258e287b0f9cb95426c9853b282730b' (2021-11-28) → 'github:numtide/flake-utils/3cecb5b042f7f209c56ffd8371b2711a290ec797' (2022-02-07) • Updated input 'pre-commit-hooks/nixpkgs': 'github:NixOS/nixpkgs/6f05cfdb1e78d36c0337516df674560e4b51c79b' (2022-01-01) → 'github:nixos/nixpkgs/77a7a4197740213879b9a1d2e1788c6c8ade4274' (2022-02-23) * nix flake update & bump ghc921 -> ghc922 ghc921 is no longer available on Nix, see: NixOS/nixpkgs#163426 * myst-parser: bump docutils version requirements * fix devShells and packages default * use ghc-exactprint 1.5.0 for ghc922 * ghc902: add flag hlint34 to nix * macosx: add SSE-enabled ptr-poker dependency * ghc902 requires ghc-lib-parser >= 9.2 * nix: ghcDefault supports HLS tweaks * fix typo * add support for pre-commit in mkDevShell * fix typo * add ptr-poker to nix shell * add ghc-884 configuration tweaks * fix stylish-haskell for ghc-884 * fix default ghc lookup * ghc884: fixup brittany version to 0.13.1.2 * ghc884: fixup aeson version to 1.5.2.0 * ghc884: fixup ormolu/fourmolu * add configuration tweak for ghc8107 * rename configuration-ghc-xxx.nix files * update hackage index * use current cabal/hackage to fetch ptr-poker in mkDevShell * reinstate .pre-commit.yaml * nix: temporary disable "build binaries" from the work flow * nix: temporary disable builds and partially populate cachix * nix: temporarily disable ghc 884 and 8107 * nix: temporarily disable nix develop run * nix: re-enable ghc8107/ghc884 builds, disable "build all binaries" * nix: noop push commit to test cachix * nix: touch flake.nix, remove ghc 884 * nix: rm ghc 810, ghc88 + disableLibraryProfiling * nix: build all binaries again * Update flake.nix Co-authored-by: Michael Peyton Jones <me@michaelpj.com> * Update flake.nix Co-authored-by: Michael Peyton Jones <me@michaelpj.com> * Update flake.nix Co-authored-by: Michael Peyton Jones <me@michaelpj.com> * revert change made on comment * rm myst-parser.nix * fix typo (thanks @guibou) * explain why we disable library profiling with nix * ghc922, disable "hls-hlint-plugin" Co-authored-by: Pepe Iborra <pepeiborra@gmail.com> Co-authored-by: Providence Salumu <Providence.Salumu@smunix.com> Co-authored-by: Providence Salumu <smunix@users.noreply.github.com>
Reopening this, hopefully cachix will push stuff now since I have write access.