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"
17 name = "rust-analyzer"
18 path = "src/bin/main.rs"
22 crossbeam-channel = "0.5.0"
26 lsp-types = { version = "0.91", features = ["proposed"] }
27 parking_lot = "0.11.0"
31 serde = { version = "1.0.106", features = ["derive"] }
32 serde_json = { version = "1.0.48", features = ["preserve_order"] }
35 mimalloc = { version = "0.1.19", default-features = false, optional = true }
38 tracing-subscriber = { version = "0.2", default-features = false, features = [
45 tracing-tree = { version = "0.1.10" }
48 stdx = { path = "../stdx", version = "0.0.0" }
49 flycheck = { path = "../flycheck", version = "0.0.0" }
50 ide = { path = "../ide", version = "0.0.0" }
51 ide_db = { path = "../ide_db", version = "0.0.0" }
52 profile = { path = "../profile", version = "0.0.0" }
53 project_model = { path = "../project_model", version = "0.0.0" }
54 syntax = { path = "../syntax", version = "0.0.0" }
55 vfs = { path = "../vfs", version = "0.0.0" }
56 vfs-notify = { path = "../vfs-notify", version = "0.0.0" }
57 cfg = { path = "../cfg", version = "0.0.0" }
58 toolchain = { path = "../toolchain", version = "0.0.0" }
59 tt = { path = "../tt", version = "0.0.0" }
60 proc_macro_api = { path = "../proc_macro_api", version = "0.0.0" }
62 # This should only be used in CLI
63 ide_ssr = { path = "../ide_ssr", version = "0.0.0" }
64 hir = { path = "../hir", version = "0.0.0" }
65 hir_def = { path = "../hir_def", version = "0.0.0" }
66 hir_ty = { path = "../hir_ty", version = "0.0.0" }
67 proc_macro_srv = { path = "../proc_macro_srv", version = "0.0.0" }
69 [target.'cfg(windows)'.dependencies]
72 [target.'cfg(not(target_env = "msvc"))'.dependencies]
73 jemallocator = { version = "0.4.1", package = "tikv-jemallocator", optional = true }
76 expect-test = "1.2.0-pre.1"
79 test_utils = { path = "../test_utils" }
80 sourcegen = { path = "../sourcegen" }
81 mbe = { path = "../mbe" }
84 jemalloc = ["jemallocator", "profile/jemalloc"]
85 force-always-assert = ["always-assert/force"]