4 authors = ["rust-analyzer Team"]
5 homepage = "https://github.com/rust-analyzer/rust-analyzer"
6 description = "A language server for the Rust programming language"
7 documentation = "https://rust-analyzer.github.io/manual.html"
8 license = "MIT OR Apache-2.0"
16 name = "rust-analyzer"
17 path = "src/bin/main.rs"
21 crossbeam-channel = "0.5.0"
23 env_logger = { version = "0.9", default-features = false }
27 lsp-types = { version = "0.89.0", features = ["proposed"] }
28 parking_lot = "0.11.0"
32 serde = { version = "1.0.106", features = ["derive"] }
33 serde_json = { version = "1.0.48", features = ["preserve_order"] }
34 serde_path_to_error = "0.1"
37 mimalloc = { version = "0.1.19", default-features = false, optional = true }
40 tracing-subscriber = { version = "0.2", default-features = false, features = ["env-filter", "registry"] }
41 tracing-tree = { version = "0.1.4" }
43 stdx = { path = "../stdx", version = "0.0.0" }
44 flycheck = { path = "../flycheck", version = "0.0.0" }
45 ide = { path = "../ide", version = "0.0.0" }
46 ide_db = { path = "../ide_db", version = "0.0.0" }
47 profile = { path = "../profile", version = "0.0.0" }
48 project_model = { path = "../project_model", version = "0.0.0" }
49 syntax = { path = "../syntax", version = "0.0.0" }
50 text_edit = { path = "../text_edit", version = "0.0.0" }
51 vfs = { path = "../vfs", version = "0.0.0" }
52 vfs-notify = { path = "../vfs-notify", version = "0.0.0" }
53 cfg = { path = "../cfg", version = "0.0.0" }
54 toolchain = { path = "../toolchain", version = "0.0.0" }
56 # This should only be used in CLI
57 ide_ssr = { path = "../ide_ssr", version = "0.0.0" }
58 hir = { path = "../hir", version = "0.0.0" }
59 hir_def = { path = "../hir_def", version = "0.0.0" }
60 hir_ty = { path = "../hir_ty", version = "0.0.0" }
61 proc_macro_srv = { path = "../proc_macro_srv", version = "0.0.0" }
63 [target.'cfg(windows)'.dependencies]
66 [target.'cfg(not(target_env = "msvc"))'.dependencies]
67 jemallocator = { version = "0.4.1", package = "tikv-jemallocator", optional = true }
73 test_utils = { path = "../test_utils" }
74 sourcegen = { path = "../sourcegen" }
75 mbe = { path = "../mbe" }
76 tt = { path = "../tt" }
79 jemalloc = ["jemallocator", "profile/jemalloc"]
80 force-always-assert = ["always-assert/force"]