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

Rebase on ghcide HEAD #378

Merged
merged 3 commits into from
Sep 6, 2020
Merged

Rebase on ghcide HEAD #378

merged 3 commits into from
Sep 6, 2020

Conversation

pepeiborra
Copy link
Collaborator

To improve the ergonomics of HLS plugin development.

I also picked the -Werror and Open imports PRs

@pepeiborra
Copy link
Collaborator Author

I'm not sure what's the best way to upgrade the ghcide submodule, so let me know if there is a better way.

@wz1000
Copy link
Collaborator

wz1000 commented Sep 6, 2020

I rebased hls-3 on ghcide master a few days ago, that should include these commits.

@wz1000
Copy link
Collaborator

wz1000 commented Sep 6, 2020

Rebased once again. Alternatively, we can just move to ghcide HEAD now, and I will prepare a PR with the remaining changes there.

/cc @alanz

@pepeiborra
Copy link
Collaborator Author

Can you push hls-3 to haskell/ghcide and I'll repoint this PR there?

@wz1000
Copy link
Collaborator

wz1000 commented Sep 6, 2020

Done.

@pepeiborra pepeiborra changed the title Cherry pick the Development.IDE change Rebase on ghcide HEAD Sep 6, 2020
@pepeiborra pepeiborra merged commit 1d1ab3b into haskell:master Sep 6, 2020
wz1000 pushed a commit to wz1000/haskell-language-server that referenced this pull request Sep 16, 2020
[WIP] Add Skeleton for Tactic Plugin

Local bindings

[WIP] Add more to the code action provider

more cases for bindings

is it a hole?

Beginning of tactics machinery

tactics machinery

split out tactics machinery; finish porting tactics

Haddock for tactics machinery

Use a map for hypothesis

Better types on LocalBindings

render the result of running a tactic

Hypothesis from bindings

Sort types

mostSpecificSpan

Render

Actually add the tactic plugin :)

[WIP] Do stuff

slightly better span

better sorting for specific spans

Fix size

[WIP] It does the thing!!

Multiple tactic actions

Parenthesize if necessary

[WIP] Home on the 'Range'

destruct and homo

fix naming and parens

Cleanup Plugin Tactic

context dependent destruct and homo

Generalized interface

More composable

Remove TacticVariety

Haddock

Describe spooky monoidal behavior

Only look at actual holes

Auto if possible

debugging

Maybe grafting works now

Transformation works; tree doesnt

Remove debugging

Proper indentation and parenthesizing

Less fancy parenthesizing

Don't crash if we can't lookup things

Holes must start with an underscore

Haddock pass

Module restructuring

Fix the cabal file

Intros, and disable some of the unpolished tactics

Disable autoIfPossible

Fix stack.yaml

Respond to simple PR comments.

Get a proper dflags

WIP on a better bindings interface

Simplify dflags lookup and expose titles

Tactic tests

Add a few more tests

Cleanup imports

Haddock the tests

Rebase on ghcide HEAD (haskell#378)

* Rebase on top of ghcide HEAD

* use Development.IDE to trim imports

* Fix Eval plugin to use GhcSessionDeps

Use stale data in explicit imports lens (haskell#383)

This prevents the lenses from disappearing while editing, which causes lots of
unpleasant jumping

Create hls-plugin-api and move plugins to exe

Keep current version

Add hls-plugin-api component to cradle

Move exe modules to main library

Format .cabal files with `cabal-fmt --ident 2`

Restore ghcide ref

Fix cradles

Move tactic plugin

Almost there!

Get the tests running again

Empty commit for CI

Add refinery to stack

more stack woes

Duplicate

NoExt and less dependency on ghc

Cradle is necessary

bump ghcide submodule (haskell#396)

* Bump ghcide submodule

* Update stack descriptors

Co-authored-by: Pepe Iborra <[email protected]>

Update ghcide

Compute an interval map of what's in scope

Fix 'binding'
pepeiborra pushed a commit that referenced this pull request Dec 27, 2020
* See if fakeDynFlags is unnecessary

* Cleanups now fakeDynFlags is gone

* Remove redundant CPP
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.

2 participants