beicause / call-graph Goto Github PK
View Code? Open in Web Editor NEWGenerate call graph for vscode in svg or graphviz dot.
License: Apache License 2.0
Generate call graph for vscode in svg or graphviz dot.
License: Apache License 2.0
I get a complete incoming calls graph, but no outgoing. Whenever I attempt to create an outgoing calls graph I get a graph with only 1 node, the call I tried to originate from.
Using clang language server with a compile_commands.json made from Bear Intercept-Build
Any notion of how I could fix/troubleshoot this?
vscode's API support IncomingCalls, but the extension currenly just support outgoing calls. Incoming calls is a good feature to investigate which entrypoints leads to some code.
I'll open a PR adding this funcionality.
Hi everyone,
I try to use it to show call graph.
It seems only display current file only. no any dependency tree
hope anyone can help clarify is it support clangd related extension.
Thanks for your reading :)
Hello there. I have another question / suggestion:
Is there a way to manage the number of levels that you want to go trough? I mean... I have a use case where I only want to generate the incoming call-graph of all the direct (one level) methods, with their respective file subgraphs?
I see I am able to get incoming call graph for few functions but for few functions I couldn't get it. But regarding outgoing call graph, I am not able to get it for any function.
I am using visual studio code in ubuntu 20.
Unable to install 'luozhihao.call-graph' extension because it is not compatible with the current version of VS Code (version 1.54.3).
想在c/c++中使用,请问可以支持吗
I'm using ccls and Remote-SSH. I can use "Peek references" to see refs for the function my cursor is on. But when I try to show a callgraph, I get this error:
Call Graph: can't resolve entry function
Maybe it has to do with my environment. Some other language server features do not work reliably but most have no problem.
There are some modules that aren't very helpful in the debugging context, as dependencies files and test files. Would be great if we could ignore some patterns in the options, so, when we call the rendering functions, we have a lean output. I can work on it next week.
The package.json file specifies that the license is MIT, while the LICENSE file specifies that the license is Apache 2.0. Which is the actual one, please?
Thank you.
Current features of this extension is stable. Here are further works that I consider:
Mermaid is popular and supports theming. Its digrams are more beatiful than graphviz. However it seems heavily depend DOM and have bug to export SVG. I decide to keep graphviz.
Currently the graphviz generator is not parallel and can be improved. Or rewrite the generator with native language. The second improvement may be limited, because the performance of language servers (depending on their own implementation) is a bottleneck, but we can render SVG in native instead of rendering in vscode webview with d3-graphviz(wasm).
This would enable users of VSCodium to make use of your extension more easily.
This extension is just awesome!
It would be great if we can ignore certain folders & files to keep the graph clean (without obvious calls like map, forEach, etc).
Thanks in advance
The .callgraphignore
was added at #6 , but there's no mention of it or of how to use it in the readme file.
my .callgraphignore still dont work
I use the default setting for call-graph.ignoreFile, the content of .callgraphignore just like this:
thrift_gen
when i use callGraph to show outgoing call graph, the thrift_gen file still show in graph
thanks
When using vscode's workspace, and it contains multiple projects
.callgraphignore file can not work well
For example, the workspace contains projects A and B.
.callgraphignore file is created in project B.
The file defines that *test.go is ignored, but the setting does not take effect.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.