rust-analyzer/crates
bors[bot] 6c80c42c57
Merge #9828
9828: Remove dependency on the system graphviz when rendering crate graph r=lnicola a=p32blo


This PR removes the need for having `graphviz` installed on the user system by using the `d3-graphviz` npm package.

The responsibility of rendering the svg output is moved to the extension while the rust side only handles the generation of the dot file.

This change also brings the following additional features:
- Allow zooming the view
- Ctrl+click to reset the zoom 
- Adjust the color scheme to dark themes
- Works on any platform without installing graphviz locally

---

I’m not sure if this fits what you had in mind for the crates graph feature but I decided to submit it anyway to see if this is useful to anyone else. 

A potential downside might be that it increases the extension size ( haven’t checked) but this feature already required the installation of graphviz on the user side, so the cost is just moved explicitly to the extension.

Feel free to make any suggestion or comments. 

Co-authored-by: André Oliveira <p32blo@gmail.com>
2021-08-11 08:30:53 +00:00
..
base_db Complete editable private items 2021-07-23 19:57:16 +02:00
cfg internal: remove useless helpers 2021-08-09 15:58:21 +03:00
flycheck internal: a bit more of cwd safety for flycheck 2021-07-17 18:13:35 +03:00
hir Add trait codegen to add_missing_impl_members assist 2021-08-10 10:27:52 +02:00
hir_def fix: avoid pathological macro expansions 2021-08-09 16:15:02 +03:00
hir_expand fix: avoid pathological macro expansions 2021-08-09 16:15:02 +03:00
hir_ty Increase chalk overflow depth 2021-08-08 18:40:28 +03:00
ide impl gen hash for structs 2021-08-10 12:37:10 +02:00
ide_assists Merge #9846 2021-08-10 13:18:09 +00:00
ide_completion Refine functional update completion some more 2021-08-10 17:03:38 +02:00
ide_db Substitute generic types in inline_call 2021-08-10 14:39:56 +02:00
ide_diagnostics Merge #9810 2021-08-08 10:35:00 +00:00
ide_ssr fix: avoid pathological macro expansions 2021-08-09 16:15:02 +03:00
limit internal: add API to check what are the max limits in practice 2021-07-31 18:26:43 +03:00
mbe internal: remove useless helpers 2021-08-09 15:58:21 +03:00
parser Split the test 2021-08-04 03:01:48 -07:00
paths Fix AbsPath::ends_with 2021-07-18 10:25:14 +03:00
proc_macro_api Replace useless types 2021-07-31 14:29:15 +02:00
proc_macro_srv Copy the proc_macro crate for the 1.56 ABI 2021-08-07 16:34:59 +01:00
proc_macro_test cargo_metadata 0.14 2021-07-09 11:01:55 -04:00
profile internal: make non-zero times stand out in profile 2021-07-31 16:22:03 +03:00
project_model Rust project project model smoke tests 2021-08-01 15:00:34 -07:00
rust-analyzer Formatting issues 2021-08-10 13:43:57 +00:00
sourcegen minor: make sure that project_root works correctly 2021-07-13 15:02:29 +03:00
stdx Remove proc macro management thread 2021-07-08 16:43:39 +02:00
syntax generate method assist 2021-08-09 21:06:24 +04:30
test_utils Implement bool_then_to_if assist 2021-08-10 13:17:45 +02:00
text_edit minor: as per code-styple, add invariant comment 2021-08-09 13:13:02 +03:00
toolchain minor: drop dummy authors field 2021-07-05 14:19:41 +03:00
tt minor: drop dummy authors field 2021-07-05 14:19:41 +03:00
vfs internal: make it easier to isolate IO 2021-07-17 17:55:16 +03:00
vfs-notify Downgrade notify and use RecommendedWatcher 2021-08-03 14:33:37 +03:00