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"
25 lsp-types = { version = "0.90.1", features = ["proposed"] }
26 parking_lot = "0.11.0"
30 serde = { version = "1.0.106", features = ["derive"] }
31 serde_json = { version = "1.0.48", features = ["preserve_order"] }
34 mimalloc = { version = "0.1.19", default-features = false, optional = true }
37 tracing-subscriber = { version = "0.2", default-features = false, features = ["env-filter", "registry", "fmt", "tracing-log"] }
39 tracing-tree = { version = "0.1.10" }
42 stdx = { path = "../stdx", version = "0.0.0" }
43 flycheck = { path = "../flycheck", version = "0.0.0" }
44 ide = { path = "../ide", version = "0.0.0" }
45 ide_db = { path = "../ide_db", version = "0.0.0" }
46 profile = { path = "../profile", version = "0.0.0" }
47 project_model = { path = "../project_model", version = "0.0.0" }
48 syntax = { path = "../syntax", version = "0.0.0" }
49 vfs = { path = "../vfs", version = "0.0.0" }
50 vfs-notify = { path = "../vfs-notify", version = "0.0.0" }
51 cfg = { path = "../cfg", version = "0.0.0" }
52 toolchain = { path = "../toolchain", version = "0.0.0" }
53 tt = { path = "../tt", version = "0.0.0" }
54 proc_macro_api = { path = "../proc_macro_api", 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 }
70 expect-test = "1.2.0-pre.1"
73 test_utils = { path = "../test_utils" }
74 sourcegen = { path = "../sourcegen" }
75 mbe = { path = "../mbe" }
78 jemalloc = ["jemallocator", "profile/jemalloc"]
79 force-always-assert = ["always-assert/force"]