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.5"
25 lsp-types = { version = "0.93.0", features = ["proposed"] }
26 parking_lot = "0.12.1"
30 serde = { version = "1.0.137", features = ["derive"] }
31 serde_json = { version = "1.0.81", features = ["preserve_order"] }
35 mimalloc = { version = "0.1.29", default-features = false, optional = true }
36 lsp-server = { version = "0.6.0", path = "../../lib/lsp-server" }
38 tracing-subscriber = { version = "0.3.14", default-features = false, features = [
45 tracing-tree = "0.2.1"
46 always-assert = "0.1.2"
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.5.0", package = "tikv-jemallocator", optional = true }
80 test-utils = { path = "../test-utils" }
81 sourcegen = { path = "../sourcegen" }
82 mbe = { path = "../mbe" }
85 jemalloc = ["jemallocator", "profile/jemalloc"]
86 force-always-assert = ["always-assert/force"]