Improve dependency hygiene (#9360)

Signed-off-by: jh-block <jhugo@block.xyz>
This commit is contained in:
jh-block
2026-05-26 18:09:03 +02:00
committed by GitHub
parent bf0da953d5
commit 27dc0d5f83
24 changed files with 950 additions and 1639 deletions
+88 -80
View File
@@ -20,88 +20,96 @@ uninlined_format_args = "allow"
string_slice = "warn"
[workspace.dependencies]
rmcp = { version = "1.7.0", features = ["schemars", "auth"] }
agent-client-protocol-schema = { version = "0.13", features = ["unstable"] }
agent-client-protocol = "0.12"
arboard = "3"
anyhow = "1.0"
async-stream = "0.3"
async-trait = "0.1"
axum = "0.8"
base64 = "0.22.1"
bytes = "1"
chrono = { version = "0.4", features = ["serde"] }
clap = { version = "4", features = ["derive"] }
dirs = "5.0"
dotenvy = "0.15"
env-lock = "1.0.1"
etcetera = "0.11.0"
fs2 = "0.4"
futures = "0.3"
http = "1.0"
ignore = "0.4.25"
include_dir = "0.7.4"
indoc = "2.0"
lru = "0.18"
once_cell = "1.20"
rand = "0.8"
regex = "1.12"
reqwest = { version = "0.13", default-features = false, features = ["multipart", "form"] }
schemars = { default-features = false, version = "1.0" }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
shellexpand = "3.1"
strum = { version = "0.28", features = ["derive"] }
tempfile = "3"
thiserror = "1.0"
tokio = { version = "1.49", features = ["full"] }
tokio-stream = "0.1"
tokio-util = "0.7"
tower-http = "0.6.11"
tracing = "0.1"
tracing-appender = "0.2"
tracing-subscriber = "0.3"
urlencoding = "2.1"
utoipa = "4.1"
uuid = { version = "1.23", features = ["v4"] }
webbrowser = "1.2"
which = "8.0.0"
winapi = { version = "0.3", features = ["wincred"] }
wiremock = "0.6"
zip = { version = "^8.6", default-features = false, features = ["deflate"] }
serial_test = "3.2.0"
sha2 = "0.10"
shell-words = "1.1.1"
test-case = "3.3.1"
url = "2.5.8"
opentelemetry = "0.31"
opentelemetry_sdk = { version = "0.31", features = ["metrics"] }
opentelemetry-otlp = "0.31"
opentelemetry-appender-tracing = { version = "0.31", features = ["experimental_span_attributes"] }
opentelemetry-stdout = { version = "0.31", features = ["trace", "metrics", "logs"] }
tracing-futures = { version = "0.2", features = ["futures-03"] }
tracing-opentelemetry = "0.32"
rmcp = { version = "1.4", default-features = false, features = ["schemars", "auth"] }
agent-client-protocol-schema = { version = "0.12", default-features = false, features = ["unstable"] }
agent-client-protocol = { version = "0.11", default-features = false }
arboard = { version = "3", default-features = false }
anyhow = { version = "1.0.102", default-features = false, features = ["std"] }
async-stream = { version = "0.3.6", default-features = false }
async-trait = { version = "0.1.89", default-features = false }
axum = { version = "0.8", default-features = false, features = ["http1", "http2", "json", "tokio", "query"] }
base64 = { version = "0.22.1", default-features = false, features = ["std"] }
bytes = { version = "1.10.1", default-features = false, features = ["std"] }
candle-core = { version = "0.10", default-features = false }
candle-nn = { version = "0.10", default-features = false }
chrono = { version = "0.4.44", default-features = false, features = ["serde", "std"] }
clap = { version = "4.1.14", default-features = false, features = ["derive", "std", "help", "suggestions", "usage", "color", "error-context"] }
dirs = { version = "5", default-features = false }
dotenvy = { version = "0.15.7", default-features = false }
env-lock = { version = "1", default-features = false }
etcetera = { version = "0.11", default-features = false }
fs2 = { version = "0.4", default-features = false }
futures = { version = "0.3.32", default-features = false, features = ["std"] }
http = { version = "1.1", default-features = false, features = ["std"] }
ignore = { version = "0.4.12", default-features = false }
include_dir = { version = "0.7", default-features = false }
indoc = { version = "2", default-features = false }
keyring = { version = "3.6.3", default-features = false, features = ["vendored"] }
lru = { version = "0.16", default-features = false }
once_cell = { version = "1.21.3", default-features = false, features = ["std"] }
rand = { version = "0.8.5", default-features = false, features = ["std"] }
regex = { version = "1.12.3", default-features = false, features = ["std"] }
reqwest = { version = "0.13.2", default-features = false, features = ["multipart", "form"] }
rustls = { version = "0.23.31", default-features = false, features = ["aws_lc_rs", "std"] }
schemars = { version = "1.0.2", default-features = false, features = ["std"] }
serde = { version = "1.0.228", default-features = false, features = ["derive", "std"] }
serde_json = { version = "1.0.145", default-features = false, features = ["std"] }
serde_yaml = { version = "0.9.32", default-features = false }
shellexpand = { version = "3", default-features = false, features = ["base-0", "tilde"] }
strum = { version = "0.27.1", default-features = false, features = ["derive", "std"] }
tempfile = { version = "3.10.1", default-features = false }
thiserror = { version = "1.0.49", default-features = false }
tokio = { version = "1.48", default-features = false }
tokio-stream = { version = "0.1.16", default-features = false }
tokio-util = { version = "0.7.12", default-features = false }
tower-http = { version = "0.6.8", default-features = false }
tracing = { version = "0.1.43", default-features = false, features = ["std"] }
tracing-appender = { version = "0.2.1", default-features = false }
tracing-futures = { version = "0.2.4", default-features = false, features = ["futures-03", "std", "std-future"] }
tracing-subscriber = { version = "0.3.22", default-features = false, features = ["std"] }
urlencoding = { version = "2.1", default-features = false }
utoipa = { version = "4.2", default-features = false }
uuid = { version = "1.18", default-features = false, features = ["v4", "std"] }
webbrowser = { version = "1", default-features = false }
which = { version = "8", default-features = false, features = ["real-sys"] }
winapi = { version = "0.3.9", default-features = false, features = ["wincred", "std"] }
wiremock = { version = "0.6", default-features = false }
zip = { version = "8", default-features = false, features = ["deflate"] }
serial_test = { version = "3", default-features = false }
sha2 = { version = "0.10.8", default-features = false, features = ["std"] }
shell-words = { version = "1", default-features = false, features = ["std"] }
test-case = { version = "3", default-features = false }
url = { version = "2.5.4", default-features = false, features = ["std"] }
opentelemetry = { version = "0.32", default-features = false }
opentelemetry_sdk = { version = "0.32", default-features = false, features = ["metrics"] }
opentelemetry-http = { version = "0.32", default-features = false, features = ["internal-logs", "reqwest"] }
opentelemetry-otlp = { version = "0.32", default-features = false, features = ["http-proto", "internal-logs", "logs", "metrics", "reqwest-client", "trace"] }
opentelemetry-appender-tracing = { version = "0.32", default-features = false, features = ["experimental_span_attributes"] }
opentelemetry-stdout = { version = "0.32", default-features = false, features = ["trace", "metrics", "logs"] }
tracing-opentelemetry = { version = "0.33", default-features = false, features = ["metrics"] }
rayon = "1.12"
tree-sitter = "0.26"
tree-sitter-go = "0.25"
tree-sitter-java = "0.23"
tree-sitter-javascript = "0.25"
tree-sitter-kotlin-ng = "1.1"
tree-sitter-python = "0.25"
tree-sitter-ruby = "0.23"
tree-sitter-rust = "0.24"
tree-sitter-swift = "0.7"
tree-sitter-typescript = "0.23"
rayon = { version = "1.10", default-features = false }
tree-sitter = { version = "0.26", default-features = false, features = ["std"] }
tree-sitter-go = { version = "0.25", default-features = false }
tree-sitter-java = { version = "0.23", default-features = false }
tree-sitter-javascript = { version = "0.25", default-features = false }
tree-sitter-kotlin-ng = { version = "1", default-features = false }
tree-sitter-python = { version = "0.25", default-features = false }
tree-sitter-ruby = { version = "0.23", default-features = false }
tree-sitter-rust = { version = "0.24", default-features = false }
tree-sitter-swift = { version = "0.7", default-features = false }
tree-sitter-typescript = { version = "0.23", default-features = false }
# llama-cpp-2 doesn't pin the version of its sys crate, so we do it here. it also has breaking changes in patch releases, so we use an exact version pin
llama-cpp-2 = { version = "=0.1.146", default-features = false, features = ["sampler", "mtmd"] }
llama-cpp-sys-2 = { version = "=0.1.146", default-features = false }
# These are needed because temporal_rs 0.1 (a transitive dep via PCTX) enables unstable features on icu_calendar without pinning the dependency version
# A fix is available in temporal_rs 0.2 but PCTX has not updated
# They are just here to pin the version, and can be removed if PCTX updates temporal_rs
icu_calendar = { version = "=2.1.1", default-features = false }
icu_locale = { version = "=2.1.1", default-features = false }
[patch.crates-io]
v8 = { path = "vendor/v8" }
cudaforge = { git = "https://github.com/jbg/cudaforge", rev = "e7c1967340e40673db98dc9e17da0f04834a456f" }
# TODO: switch to released version in opentelemetry 0.32.0
# https://github.com/open-telemetry/opentelemetry-rust/issues/3408
opentelemetry = { git = "https://github.com/open-telemetry/opentelemetry-rust", rev = "345cd74a" }
opentelemetry_sdk = { git = "https://github.com/open-telemetry/opentelemetry-rust", rev = "345cd74a" }
opentelemetry-appender-tracing = { git = "https://github.com/open-telemetry/opentelemetry-rust", rev = "345cd74a" }
opentelemetry-otlp = { git = "https://github.com/open-telemetry/opentelemetry-rust", rev = "345cd74a" }
opentelemetry-stdout = { git = "https://github.com/open-telemetry/opentelemetry-rust", rev = "345cd74a" }