Skip to content

Update to new hls #160

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

Merged
merged 9 commits into from
Jun 21, 2020
Merged

Update to new hls #160

merged 9 commits into from
Jun 21, 2020

Conversation

alanz
Copy link
Collaborator

@alanz alanz commented Jun 13, 2020

@alanz alanz requested review from jneira and fendor June 13, 2020 17:22
@alanz
Copy link
Collaborator Author

alanz commented Jun 13, 2020

ping @wz1000

@korayal
Copy link
Contributor

korayal commented Jun 13, 2020

I got excited and wanted to try this out on my nix build without waiting for the merge, but ended up with this error:

[20 of 48] Compiling Development.IDE.GHC.Orphans ( src/Development/IDE/GHC/Orphans.hs, dist/build/Development/IDE/GHC/Orphans.o )

src/Development/IDE/GHC/Orphans.hs:74:30: error:
    Not in scope: type constructor or class ‘IdentifierDetails’
   |
74 | instance NFData a => NFData (IdentifierDetails a) where
   |                              ^^^^^^^^^^^^^^^^^

src/Development/IDE/GHC/Orphans.hs:75:10: error:
    Not in scope: data constructor ‘IdentifierDetails’
   |
75 |     rnf (IdentifierDetails a b) = rnf a `seq` rnf (length b)
   |          ^^^^^^^^^^^^^^^^^
[27 of 48] Compiling Development.IDE.Types.Logger ( src/Development/IDE/Types/Logger.hs, dist/build/Development/IDE/Types/Logger.o )

I couldn't dig further since there are no docs/source available for ghc-lib-8.10.1.20200523 (which is the current dependency version for hls). but ghc-lib-8.8.1.20191204 does have that data type available.

@alanz
Copy link
Collaborator Author

alanz commented Jun 14, 2020

@pepeiborra

It seems @wz1000 introduced that NFData instance recently, in wz1000/ghcide@7cee342

I presume this would have been as a result of a compiler warning that the instance did not exist.

So the forward-compatible fix may be to simply remove the orphan instance.

@alanz
Copy link
Collaborator Author

alanz commented Jun 14, 2020

Except I just did the experiment and do get

src/Development/IDE/Core/RuleTypes.hs:89:36: error:
    • No instance for (NFData
                         (HieTypes.IdentifierDetails HieTypes.TypeIndex))
        arising from a use of ‘rnf’
    • In the second argument of ‘seq’, namely ‘rnf rm’
      In the expression: rnf hf `seq` rnf rm
      In an equation for ‘rnf’: rnf (HFR hf rm) = rnf hf `seq` rnf rm
   |
89 |     rnf (HFR hf rm) = rnf hf `seq` rnf rm
   |                                    ^^^^^^
cabal: Failed to build ghcide-0.2.0 (which is required by test:func-test from

The weird thing is that this built and installed for me yesterday. Will investigate further.

@wz1000
Copy link
Collaborator

wz1000 commented Jun 14, 2020

Which GHC version is this? I only tested with 8.8, and I might have messed up the CPP.

I am in the middle of a complicated rebase, I will investigate once I'm done with that.

@alanz
Copy link
Collaborator Author

alanz commented Jun 14, 2020

Which GHC version is this?

8.8.3

@jneira
Copy link
Member

jneira commented Jun 16, 2020

The test suite is:

18 out of 253 tests failed (569.52s)

Full log here
Nothing too strange in failing tests so LGTM but the error mentiones above.
I installed locally this in windows using cabal and stack for ghc 8.6, 8.8 and 8.10.

alanz added 2 commits June 18, 2020 20:26
 hls-2-pepe-rebased at 977663126b938cd99c8746150458f9bd1031f01a
@alanz alanz merged commit 26892d6 into haskell:master Jun 21, 2020
@jneira jneira mentioned this pull request Jun 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants