Skip to content
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

Fix ghcjs 8.6 #96141

Closed
wants to merge 461 commits into from
Closed

Fix ghcjs 8.6 #96141

wants to merge 461 commits into from

Conversation

dhruvio
Copy link
Contributor

@dhruvio dhruvio commented Aug 24, 2020

Fixes #84563 and #95931

I have added inline comments in this PR to explain the changes.

Tested by building haskell.compiler.ghcjs86 without any overrides.

cc @cdepillabout @maralorn @ElvishJerricco

r-ryantm and others added 30 commits August 22, 2020 09:07
lattice-diamond: add libusb-compat-0_1 dependency
logstash: fix support for multiple plugin paths
vscode, vscodium: 1.48.0 -> 1.48.1
ashuffle: init at version 3.4.0
Signed-off-by: Sirio Balmelli <sirio@b-ad.ch>
Co-Authored-By: Doron Behar <doron.behar@gmail.com>
perlPackages.Apprainbarf: init at 1.4
ghc-api-ghcjs = super.ghc-api-ghcjs.override
{
happy = self.happy_1_19_5;
};
haddock-library-ghcjs = doJailbreak super.haddock-library-ghcjs;
haddock-library-ghcjs = doJailbreak (dontCheck super.haddock-library-ghcjs);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests were failing, addresses #84563

in self: super: {
ghcjs = super.ghcjs.override {
shelly = super.shelly_1_8_1;
};
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GHC 8.6.5 is used as the "boot" GHC for GHCJS. At some point, the shelly dependency was upgraded to 1.9.0, which introduced a breaking change in the API. ghcjs works fine with shelly 1.8.1.

@@ -102,7 +102,6 @@ in stdenv.mkDerivation {

inherit passthru;

meta.broken = true; # build does not succeed
meta.platforms = lib.platforms.none; # passthru.bootPkgs.ghc.meta.platforms;
meta.platforms = passthru.bootPkgs.ghc.meta.platforms;
Copy link
Contributor Author

@dhruvio dhruvio Aug 24, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Revert flags to indicate package is no longer broken.

Comment on lines 98 to 104
# ghcjs 8.6.x relies on shelly < 1.9.0 (default is 1.9.0 in current package set, adding 1.8.1).
shelly_1_8_1 = super.callCabal2nix "shelly" (pkgs.fetchFromGitHub {
owner = "gregwebs";
repo = "Shelly.hs";
rev = "d0a185c7dee96820fc3652e7603d81a28276d76c";
sha256 = "173msjlq6yxpvd3900ajmd8znyg9kfg5csbxbiz4m7hvxkg8kbkn";
}) {};
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added shelly 1.8.1 to the GHC 8.6.x package set.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unfortunately we can't use callCabal2nix in nixpkgs because it uses IFD.

You can see the evaluation error from ofborg because of this: https://gist.github.com/GrahamcOfBorg/cb6535e42601174683b297b6d80b9fcd


Instead, you'll have to add shell ==1.8.1 as an extra-package in pkgs/development/haskell-modules/configuration-hackage2nix.yaml. You'll also have to submit this PR to the haskell-updates branch instead of master.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, @cdepillabout . Will do.

@dhruvio dhruvio changed the base branch from master to haskell-updates August 24, 2020 17:31
@dhruvio dhruvio changed the base branch from haskell-updates to master August 24, 2020 17:31
@dhruvio
Copy link
Contributor Author

dhruvio commented Aug 24, 2020

Ugh, sorry everyone, I originally branched off master, and changed the base to haskell-updates. Going to rebase cherrypick my commits so they are branched off haskell-updates before changing the base again. Hang tight.

@dhruvio dhruvio changed the base branch from master to haskell-updates August 24, 2020 17:36
@dhruvio
Copy link
Contributor Author

dhruvio commented Aug 24, 2020

Closing this PR in favour of #96141 which is correctly branched off haskell-updates cc @cdepillabout

@dhruvio dhruvio closed this Aug 24, 2020
@peti
Copy link
Member

peti commented Sep 15, 2020

Closing this PR in favour of #96141 which is correctly branched off haskell-updates cc @cdepillabout

You have closed this PR in favor of itself. That doesn't seem right?

@peti
Copy link
Member

peti commented Sep 15, 2020

Ah, I've now discovered #96193. I think that's what you meant. OK then, no worries.

@dhruvio
Copy link
Contributor Author

dhruvio commented Sep 15, 2020

Ah, I've now discovered #96193. I think that's what you meant. OK then, no worries.

My apologies, yes that is what I meant. 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

haskell.compiler.ghcjs fails: Expected a type, but Hyperlink has kind * -> *