101 lines
2.5 KiB
TOML
101 lines
2.5 KiB
TOML
[package]
|
|
name = "rust-analyzer"
|
|
version = "0.0.0"
|
|
homepage = "https://github.com/rust-analyzer/rust-analyzer"
|
|
description = "A language server for the Rust programming language"
|
|
documentation = "https://rust-analyzer.github.io/manual.html"
|
|
autobins = false
|
|
|
|
authors.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lib]
|
|
doctest = false
|
|
|
|
[[bin]]
|
|
name = "rust-analyzer"
|
|
path = "src/bin/main.rs"
|
|
|
|
[dependencies]
|
|
anyhow = "1.0.62"
|
|
crossbeam-channel = "0.5.5"
|
|
dissimilar = "1.0.4"
|
|
itertools = "0.10.5"
|
|
scip = "0.1.1"
|
|
lsp-types = { version = "=0.94", features = ["proposed"] }
|
|
parking_lot = "0.12.1"
|
|
xflags = "0.3.0"
|
|
oorandom = "11.1.3"
|
|
rustc-hash = "1.1.0"
|
|
serde_json = { workspace = true, features = ["preserve_order"] }
|
|
serde.workspace = true
|
|
threadpool = "1.8.1"
|
|
rayon = "1.6.1"
|
|
num_cpus = "1.15.0"
|
|
mimalloc = { version = "0.1.30", default-features = false, optional = true }
|
|
lsp-server = { version = "0.7.0", path = "../../lib/lsp-server" }
|
|
tracing = "0.1.35"
|
|
tracing-subscriber = { version = "0.3.16", default-features = false, features = [
|
|
"env-filter",
|
|
"registry",
|
|
"fmt",
|
|
"tracing-log",
|
|
] }
|
|
tracing-log = "0.1.3"
|
|
tracing-tree = "0.2.1"
|
|
always-assert = "0.1.2"
|
|
|
|
# These dependencies are unused, but we pin them to a version here to restrict them for our transitive dependencies
|
|
# so that we don't pull in duplicates of their dependencies like windows-sys and syn 1 vs 2
|
|
# these would pull in serde 2
|
|
thiserror = "=1.0.39"
|
|
serde_repr = "=0.1.11"
|
|
# these would pull in windows-sys 0.45.0
|
|
mio = "=0.8.5"
|
|
filetime = "=0.2.19"
|
|
parking_lot_core = "=0.9.6"
|
|
|
|
cfg.workspace = true
|
|
flycheck.workspace = true
|
|
hir-def.workspace = true
|
|
hir-ty.workspace = true
|
|
hir.workspace = true
|
|
ide-db.workspace = true
|
|
# This should only be used in CLI
|
|
ide-ssr.workspace = true
|
|
ide.workspace = true
|
|
proc-macro-api.workspace = true
|
|
profile.workspace = true
|
|
project-model.workspace = true
|
|
stdx.workspace = true
|
|
syntax.workspace = true
|
|
toolchain.workspace = true
|
|
tt.workspace = true
|
|
vfs-notify.workspace = true
|
|
vfs.workspace = true
|
|
|
|
[target.'cfg(windows)'.dependencies]
|
|
winapi = "0.3.9"
|
|
|
|
[target.'cfg(not(target_env = "msvc"))'.dependencies]
|
|
jemallocator = { version = "0.5.0", package = "tikv-jemallocator", optional = true }
|
|
|
|
[dev-dependencies]
|
|
expect-test = "1.4.0"
|
|
jod-thread = "0.1.2"
|
|
xshell = "0.2.2"
|
|
|
|
test-utils.workspace = true
|
|
sourcegen.workspace = true
|
|
mbe.workspace = true
|
|
|
|
[features]
|
|
jemalloc = ["jemallocator", "profile/jemalloc"]
|
|
force-always-assert = ["always-assert/force"]
|
|
in-rust-tree = [
|
|
"ide/in-rust-tree",
|
|
"syntax/in-rust-tree",
|
|
]
|