-
-
Notifications
You must be signed in to change notification settings - Fork 367
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
Call hierarchy support #1955
Call hierarchy support #1955
Conversation
If I understand correctly, call hierarchy is meant to be global and project wide. However, you seem to be generating the tree using a single I think it would be a good idea to make use of The code you have for traversing the |
You're right, currently, I just finished the part of The |
@July541 I can see that you uploaded some commits yesterday. Care to share an update on what the recent changes are? |
@pepeiborra It's about a prototype of the implementation of outgoing calls which has functionality but a bad code style. I'll show a complete call hierarchy after incoming calls are finished, it'll come soon. |
2021-07-11.21-45-42.mp4Recent progress, incoming calls and outgoing calls have basic functions, see demo above for details. Current problems:
|
This looks quite reasonable to me, nice job @July541 ! |
import Name | ||
|
||
incomingCalls :: HieDb -> Symbol -> IO [Vertex] | ||
incomingCalls (getConn -> conn) symbol = do |
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 would be best to move these functions into hiedb
.
@pepeiborra I agree with you. I think it can be reviewed after the break issue is fixed, not take long. @wz1000 It turns out I wrote it in
Honestly, I'm not sure it's a reasonable solution. if you think that move to |
Awesome, please shout if you need any help |
Your CI appears to be blocked by #2016 |
…server into call-hierarchy
plugins/hls-call-hierarchy-plugin/src/Ide/Plugin/CallHierarchy/Query.hs
Outdated
Show resolved
Hide resolved
plugins/hls-call-hierarchy-plugin/src/Ide/Plugin/CallHierarchy/Query.hs
Outdated
Show resolved
Hide resolved
I think the current fail can be fixed after the new lsp is released. |
@July541 amazing work, hls users will be amazed, congrats |
@pepeiborra I noticed an unexpected |
I pulled master this morning and I'm also not able to do build failures in CILinking .stack-work/dist/x86_64-linux/Cabal-3.0.1.0/build/ghcide/ghcide ... ghcide > /root/.stack/snapshots/x86_64-linux/26f5581bf7f9f176d3f7ba334912f1d717717a1ecee407868101798f77c5c139/8.8.3/lib/x86_64-linux-ghc-8.8.3/libHSlsp-1.2.0.0-LiIFgQ1fCTv73zSCj7uRmO-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziCallHierarchy_zdfFromJSONCallHierarchyOutgoingCallsParams_closure' ghcide > /root/.stack/snapshots/x86_64-linux/26f5581bf7f9f176d3f7ba334912f1d717717a1ecee407868101798f77c5c139/8.8.3/lib/x86_64-linux-ghc-8.8.3/libHSlsp-1.2.0.0-LiIFgQ1fCTv73zSCj7uRmO-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziCallHierarchy_zdfFromJSONCallHierarchyIncomingCallsParams_closure' ghcide > /root/.stack/snapshots/x86_64-linux/26f5581bf7f9f176d3f7ba334912f1d717717a1ecee407868101798f77c5c139/8.8.3/lib/x86_64-linux-ghc-8.8.3/libHSlsp-1.2.0.0-LiIFgQ1fCTv73zSCj7uRmO-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziCallHierarchy_zdfFromJSONCallHierarchyPrepareParams_closure' ghcide > /root/.stack/snapshots/x86_64-linux/26f5581bf7f9f176d3f7ba334912f1d717717a1ecee407868101798f77c5c139/8.8.3/lib/x86_64-linux-ghc-8.8.3/libHSlsp-1.2.0.0-LiIFgQ1fCTv73zSCj7uRmO-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziMethod_zdfFromJSONSMethod54_closure' ghcide > /root/.stack/snapshots/x86_64-linux/26f5581bf7f9f176d3f7ba334912f1d717717a1ecee407868101798f77c5c139/8.8.3/lib/x86_64-linux-ghc-8.8.3/libHSlsp-1.2.0.0-LiIFgQ1fCTv73zSCj7uRmO-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziMethod_zdfFromJSONSMethod55_closure' ghcide > /root/.stack/snapshots/x86_64-linux/26f5581bf7f9f176d3f7ba334912f1d717717a1ecee407868101798f77c5c139/8.8.3/lib/x86_64-linux-ghc-8.8.3/libHSlsp-1.2.0.0-LiIFgQ1fCTv73zSCj7uRmO-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziMethod_zdWSTextDocumentPrepareCallHierarchy_closure' ghcide > /root/build/ghcide/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/build/libHSghcide-1.4.0.3-GzSd9eXvctl5jyqcFJIb49-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziMethod_zdfShowSMethod114_closure' ghcide > /root/build/ghcide/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/build/libHSghcide-1.4.0.3-GzSd9eXvctl5jyqcFJIb49-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziMethod_zdfShowSMethod112_closure' ghcide > /root/build/ghcide/.stack-work/dist/x86_64-linux/Cabal-3.0.1.0/build/libHSghcide-1.4.0.3-GzSd9eXvctl5jyqcFJIb49-ghc8.8.3.so: error: undefined reference to 'lspzmtypeszm1zi2zi0zi0zmDHDZZnuOdhmBHZZjePkaCNbQ_LanguageziLSPziTypesziMethod_zdfShowSMethod116_closure' ghcide > collect2: error: ld returned 1 exit status ghcide > `gcc' failed in phase `Linker'. (Exit code: 1) see failure in CI |
Have you tried stack clean ? |
Some tests are flaky in Windows, that's not caused by this PR |
@jhrcek Ideally the updated dependencies are OK for the build. haskell-language-server/stack-8.8.4.yaml Lines 83 to 89 in d815d04
|
I tried |
Hello all,
This pr is about my GSoC 2021 project, call hierarchy support. I create a draft to show my progress to those who may be interested.
Progress
Known issues
DuplicateRecordFields