chore: unify all deps + exact versioning in root workspace for better maintenance

This commit is contained in:
Saber Haj Rabiee
2025-05-17 09:30:19 -07:00
parent 624e91bb2a
commit e1549c5ab3
13 changed files with 130 additions and 75 deletions

View File

@@ -72,49 +72,100 @@ server_fn_macro = { path = "./server_fn_macro", version = "0.8.2" }
server_fn_macro_default = { path = "./server_fn/server_fn_macro_default", version = "0.8.2" } server_fn_macro_default = { path = "./server_fn/server_fn_macro_default", version = "0.8.2" }
tachys = { path = "./tachys", version = "0.2.0" } tachys = { path = "./tachys", version = "0.2.0" }
# common deps # members deps
itertools = { default-features = false, version = "0.14.0" } itertools = { default-features = false, version = "0.14.0" }
convert_case = { default-features = false, version = "0.8.0" } convert_case = { default-features = false, version = "0.8.0" }
serde_json = { default-features = false, version = "1.0" } serde_json = { default-features = false, version = "1.0.140" }
trybuild = { default-features = false, version = "1.0" } trybuild = { default-features = false, version = "1.0.105" }
typed-builder = { default-features = false, version = "0.21.0" } typed-builder = { default-features = false, version = "0.21.0" }
thiserror = { default-features = false, version = "2.0" } thiserror = { default-features = false, version = "2.0.12" }
wasm-bindgen = { default-features = false, version = "0.2.100" } wasm-bindgen = { default-features = false, version = "0.2.100" }
indexmap = { default-features = false, version = "2.9" } indexmap = { default-features = false, version = "2.9.0" }
rstml = { default-features = false, version = "0.12.1" } rstml = { default-features = false, version = "0.12.1" }
rustc_version = { default-features = false, version = "0.4.1" } rustc_version = { default-features = false, version = "0.4.1" }
guardian = { default-features = false, version = "1.3" } guardian = { default-features = false, version = "1.3.0" }
rustc-hash = { default-features = false, version = "2.1" } rustc-hash = { default-features = false, version = "2.1.1" }
once_cell = { default-features = false, version = "1.21" } once_cell = { default-features = false, version = "1.21.3" }
actix-web = { default-features = false, version = "4.10" } actix-web = { default-features = false, version = "4.11.0" }
tracing = { default-features = false, version = "0.1.41" } tracing = { default-features = false, version = "0.1.41" }
slotmap = { default-features = false, version = "1.0" } slotmap = { default-features = false, version = "1.0.7" }
futures = { default-features = false, version = "0.3.31" } futures = { default-features = false, version = "0.3.31" }
dashmap = { default-features = false, version = "6.1" } dashmap = { default-features = false, version = "6.1.0" }
pin-project-lite = { default-features = false, version = "0.2.16" } pin-project-lite = { default-features = false, version = "0.2.16" }
send_wrapper = { default-features = false, version = "0.6.0" } send_wrapper = { default-features = false, version = "0.6.0" }
tokio-test = { default-features = false, version = "0.4.4" } tokio-test = { default-features = false, version = "0.4.4" }
html-escape = { default-features = false, version = "0.2.13" } html-escape = { default-features = false, version = "0.2.13" }
proc-macro-error2 = { default-features = false, version = "2.0" } proc-macro-error2 = { default-features = false, version = "2.0.1" }
const_format = { default-features = false, version = "0.2.34" } const_format = { default-features = false, version = "0.2.34" }
gloo-net = { default-features = false, version = "0.6.0" } gloo-net = { default-features = false, version = "0.6.0" }
url = { default-features = false, version = "2.5" } url = { default-features = false, version = "2.5.4" }
tokio = { default-features = false, version = "1.44" } tokio = { default-features = false, version = "1.45.0" }
base64 = { default-features = false, version = "0.22.1" } base64 = { default-features = false, version = "0.22.1" }
cfg-if = { default-features = false, version = "1.0" } cfg-if = { default-features = false, version = "1.0.0" }
wasm-bindgen-futures = { default-features = false, version = "0.4.50" } wasm-bindgen-futures = { default-features = false, version = "0.4.50" }
tower = { default-features = false, version = "0.5.2" } tower = { default-features = false, version = "0.5.2" }
proc-macro2 = { default-features = false, version = "1.0" } proc-macro2 = { default-features = false, version = "1.0.95" }
serde = { default-features = false, version = "1.0" } serde = { default-features = false, version = "1.0.219" }
parking_lot = { default-features = false, version = "0.12.3" } parking_lot = { default-features = false, version = "0.12.3" }
axum = { default-features = false, version = "0.8.3" } axum = { default-features = false, version = "0.8.4" }
serde_qs = { default-features = false, version = "0.15.0" } serde_qs = { default-features = false, version = "0.15.0" }
syn = { default-features = false, version = "2.0" } syn = { default-features = false, version = "2.0.101" }
xxhash-rust = { default-features = false, version = "0.8.15" } xxhash-rust = { default-features = false, version = "0.8.15" }
paste = { default-features = false, version = "1.0" } paste = { default-features = false, version = "1.0.15" }
quote = { default-features = false, version = "1.0" } quote = { default-features = false, version = "1.0.40" }
web-sys = { default-features = false, version = "0.3.77" } web-sys = { default-features = false, version = "0.3.77" }
js-sys = { default-features = false, version = "0.3.77" } js-sys = { default-features = false, version = "0.3.77" }
rand = { default-features = false, version = "0.9.1" }
serde-lite = { default-features = false, version = "0.5.0" }
tokio-tungstenite = { default-features = false, version = "0.26.2" }
serial_test = { default-features = false, version = "3.2.0" }
erased = { default-features = false, version = "0.1.2" }
glib = { default-features = false, version = "0.20.10" }
async-trait = { default-features = false, version = "0.1.88" }
typed-builder-macro = { default-features = false, version = "0.21.0" }
linear-map = { default-features = false, version = "1.2.0" }
anyhow = { default-features = false, version = "1.0.98" }
walkdir = { default-features = false, version = "2.5.0" }
actix-ws = { default-features = false, version = "0.3.0" }
tower-http = { default-features = false, version = "0.6.4" }
prettyplease = { default-features = false, version = "0.2.32" }
inventory = { default-features = false, version = "0.3.20" }
config = { default-features = false, version = "0.15.11" }
camino = { default-features = false, version = "1.1.9" }
ciborium = { default-features = false, version = "0.2.2" }
multer = { default-features = false, version = "3.1.0" }
leptos-spin-macro = { default-features = false, version = "0.2.0" }
sledgehammer_utils = { default-features = false, version = "0.3.1" }
sledgehammer_bindgen = { default-features = false, version = "0.6.0" }
wasm-streams = { default-features = false, version = "0.4.2" }
rkyv = { default-features = false, version = "0.8.10" }
temp-env = { default-features = false, version = "0.3.6" }
uuid = { default-features = false, version = "1.16.0" }
bytes = { default-features = false, version = "1.10.1" }
http = { default-features = false, version = "1.3.1" }
regex = { default-features = false, version = "1.11.1" }
drain_filter_polyfill = { default-features = false, version = "0.1.3" }
tempfile = { default-features = false, version = "3.20.0" }
futures-lite = { default-features = false, version = "2.6.0" }
log = { default-features = false, version = "0.4.27" }
percent-encoding = { default-features = false, version = "2.3.1" }
async-executor = { default-features = false, version = "1.13.2" }
const-str = { default-features = false, version = "0.6.2" }
http-body-util = { default-features = false, version = "0.1.3" }
hyper = { default-features = false, version = "1.6.0" }
postcard = { default-features = false, version = "1.1.1" }
rmp-serde = { default-features = false, version = "1.3.0" }
reqwest = { default-features = false, version = "0.12.15" }
tower-layer = { default-features = false, version = "0.3.3" }
attribute-derive = { default-features = false, version = "0.10.3" }
insta = { default-features = false, version = "1.43.1" }
codee = { default-features = false, version = "0.3.0" }
actix-http = { default-features = false, version = "3.11.0" }
wasm-bindgen-test = { default-features = false, version = "0.3.50" }
rustversion = { default-features = false, version = "1.0.20" }
getrandom = { default-features = false, version = "0.3.3" }
actix-files = { default-features = false, version = "0.6.6" }
async-lock = { default-features = false, version = "3.4.0" }
[profile.release] [profile.release]
codegen-units = 1 codegen-units = 1

View File

@@ -9,9 +9,9 @@ description = "Spawn asynchronous tasks in an executor-independent way."
edition.workspace = true edition.workspace = true
[dependencies] [dependencies]
async-executor = { version = "1.13.1", optional = true } async-executor = { optional = true , workspace = true, default-features = true }
futures = { workspace = true, default-features = true } futures = { workspace = true, default-features = true }
glib = { version = "0.20.9", optional = true } glib = { optional = true , workspace = true, default-features = true }
thiserror = { workspace = true , default-features = true } thiserror = { workspace = true , default-features = true }
tokio = { optional = true, default-features = false, features = [ tokio = { optional = true, default-features = false, features = [
"rt", "rt",
@@ -20,14 +20,14 @@ tracing = { optional = true , workspace = true, default-features = true }
wasm-bindgen-futures = { optional = true , workspace = true, default-features = true } wasm-bindgen-futures = { optional = true , workspace = true, default-features = true }
[dev-dependencies] [dev-dependencies]
futures-lite = { version = "2.6.0", default-features = false } futures-lite = { default-features = false , workspace = true }
tokio = { default-features = false, features = [ tokio = { default-features = false, features = [
"rt", "rt",
"macros", "macros",
"time", "time",
] , workspace = true } ] , workspace = true }
wasm-bindgen-test = { version = "0.3.50" } wasm-bindgen-test = { workspace = true, default-features = true }
serial_test = "3.2.0" serial_test = { workspace = true, default-features = true }
[features] [features]
async-executor = ["dep:async-executor"] async-executor = ["dep:async-executor"]

View File

@@ -9,8 +9,8 @@ rust-version.workspace = true
edition.workspace = true edition.workspace = true
[dependencies] [dependencies]
actix-http = "3.10" actix-http = { workspace = true, default-features = true }
actix-files = "0.6" actix-files = { workspace = true, default-features = true }
actix-web = { workspace = true, default-features = true } actix-web = { workspace = true, default-features = true }
futures = { workspace = true, default-features = true } futures = { workspace = true, default-features = true }
any_spawner = { workspace = true, features = ["tokio"] } any_spawner = { workspace = true, features = ["tokio"] }

View File

@@ -27,7 +27,7 @@ once_cell = { workspace = true, default-features = true }
parking_lot = { workspace = true, default-features = true } parking_lot = { workspace = true, default-features = true }
tokio = { default-features = false , workspace = true } tokio = { default-features = false , workspace = true }
tower = { features = ["util"] , workspace = true, default-features = true } tower = { features = ["util"] , workspace = true, default-features = true }
tower-http = "0.6.2" tower-http = { workspace = true, default-features = true }
tracing = { optional = true , workspace = true, default-features = true } tracing = { optional = true , workspace = true, default-features = true }
[dev-dependencies] [dev-dependencies]

View File

@@ -24,14 +24,14 @@ leptos_hot_reload = { workspace = true }
leptos_macro = { workspace = true } leptos_macro = { workspace = true }
leptos_server = { workspace = true, features = ["tachys"] } leptos_server = { workspace = true, features = ["tachys"] }
leptos_config = { workspace = true } leptos_config = { workspace = true }
leptos-spin-macro = { version = "0.2.0", optional = true } leptos-spin-macro = { optional = true , workspace = true, default-features = true }
oco_ref = { workspace = true } oco_ref = { workspace = true }
or_poisoned = { workspace = true } or_poisoned = { workspace = true }
paste = { workspace = true, default-features = true } paste = { workspace = true, default-features = true }
rand = { version = "0.9.1", optional = true } rand = { optional = true , workspace = true, default-features = true }
# NOTE: While not used directly, `getrandom`'s `wasm_js` feature is needed when `rand` is used on WASM to # NOTE: While not used directly, `getrandom`'s `wasm_js` feature is needed when `rand` is used on WASM to
# avoid a compilation error # avoid a compilation error
getrandom = { version = "0.3.3", optional = true } getrandom = { optional = true , workspace = true, default-features = true }
reactive_graph = { workspace = true, features = ["serde"] } reactive_graph = { workspace = true, features = ["serde"] }
rustc-hash = { workspace = true, default-features = true } rustc-hash = { workspace = true, default-features = true }
tachys = { workspace = true, features = [ tachys = { workspace = true, features = [
@@ -42,7 +42,7 @@ tachys = { workspace = true, features = [
thiserror = { workspace = true, default-features = true } thiserror = { workspace = true, default-features = true }
tracing = { optional = true, workspace = true, default-features = true } tracing = { optional = true, workspace = true, default-features = true }
typed-builder = { workspace = true, default-features = true } typed-builder = { workspace = true, default-features = true }
typed-builder-macro = "0.21.0" typed-builder-macro = { workspace = true, default-features = true }
serde = { workspace = true, default-features = true } serde = { workspace = true, default-features = true }
serde_json = { optional = true, workspace = true, default-features = true } serde_json = { optional = true, workspace = true, default-features = true }
server_fn = { workspace = true, features = ["form-redirects", "browser"] } server_fn = { workspace = true, features = ["form-redirects", "browser"] }

View File

@@ -10,19 +10,19 @@ rust-version.workspace = true
edition.workspace = true edition.workspace = true
[dependencies] [dependencies]
config = { version = "0.15.11", default-features = false, features = [ config = { default-features = false, features = [
"toml", "toml",
"convert-case", "convert-case",
] } ] , workspace = true }
regex = "1.11" regex = { workspace = true, default-features = true }
serde = { features = ["derive", "rc"] , workspace = true, default-features = true } serde = { features = ["derive", "rc"] , workspace = true, default-features = true }
thiserror = { workspace = true , default-features = true } thiserror = { workspace = true , default-features = true }
typed-builder = { workspace = true , default-features = true } typed-builder = { workspace = true , default-features = true }
[dev-dependencies] [dev-dependencies]
tokio = { features = ["rt", "macros"] , workspace = true, default-features = true } tokio = { features = ["rt", "macros"] , workspace = true, default-features = true }
tempfile = "3.19" tempfile = { workspace = true, default-features = true }
temp-env = { version = "0.3.6", features = ["async_closure"] } temp-env = { features = ["async_closure"] , workspace = true, default-features = true }
[package.metadata.docs.rs] [package.metadata.docs.rs]
rustdoc-args = ["--generate-link-to-definition"] rustdoc-args = ["--generate-link-to-definition"]

View File

@@ -10,7 +10,7 @@ rust-version.workspace = true
edition.workspace = true edition.workspace = true
[dependencies] [dependencies]
anyhow = "1.0" anyhow = { workspace = true, default-features = true }
serde = { features = ["derive"] , workspace = true, default-features = true } serde = { features = ["derive"] , workspace = true, default-features = true }
syn = { features = [ syn = { features = [
"full", "full",
@@ -23,6 +23,6 @@ quote = { workspace = true, default-features = true }
rstml = { workspace = true, default-features = true } rstml = { workspace = true, default-features = true }
proc-macro2 = { features = ["span-locations", "nightly"] , workspace = true, default-features = true } proc-macro2 = { features = ["span-locations", "nightly"] , workspace = true, default-features = true }
parking_lot = { workspace = true, default-features = true } parking_lot = { workspace = true, default-features = true }
walkdir = "2.5" walkdir = { workspace = true, default-features = true }
camino = "1.1" camino = { workspace = true, default-features = true }
indexmap = { workspace = true, default-features = true } indexmap = { workspace = true, default-features = true }

View File

@@ -13,11 +13,11 @@ edition.workspace = true
proc-macro = true proc-macro = true
[dependencies] [dependencies]
attribute-derive = { version = "0.10.3", features = ["syn-full"] } attribute-derive = { features = ["syn-full"] , workspace = true, default-features = true }
cfg-if = { workspace = true, default-features = true } cfg-if = { workspace = true, default-features = true }
html-escape = { workspace = true, default-features = true } html-escape = { workspace = true, default-features = true }
itertools = { workspace = true , default-features = true } itertools = { workspace = true , default-features = true }
prettyplease = "0.2.32" prettyplease = { workspace = true, default-features = true }
proc-macro-error2 = { default-features = false , workspace = true } proc-macro-error2 = { default-features = false , workspace = true }
proc-macro2 = { workspace = true, default-features = true } proc-macro2 = { workspace = true, default-features = true }
quote = { workspace = true, default-features = true } quote = { workspace = true, default-features = true }
@@ -26,17 +26,17 @@ rstml = { workspace = true, default-features = true }
leptos_hot_reload = { workspace = true } leptos_hot_reload = { workspace = true }
server_fn_macro = { workspace = true } server_fn_macro = { workspace = true }
convert_case = { workspace = true , default-features = true } convert_case = { workspace = true , default-features = true }
uuid = { version = "1.16", features = ["v4"] } uuid = { features = ["v4"] , workspace = true, default-features = true }
tracing = { optional = true , workspace = true, default-features = true } tracing = { optional = true , workspace = true, default-features = true }
[dev-dependencies] [dev-dependencies]
log = "0.4.27" log = { workspace = true, default-features = true }
typed-builder = { workspace = true, default-features = true } typed-builder = { workspace = true, default-features = true }
trybuild = { workspace = true , default-features = true } trybuild = { workspace = true , default-features = true }
leptos = { path = "../leptos" } leptos = { path = "../leptos" }
leptos_router = { path = "../router", features = ["ssr"] } leptos_router = { path = "../router", features = ["ssr"] }
server_fn = { path = "../server_fn", features = ["cbor"] } server_fn = { path = "../server_fn", features = ["cbor"] }
insta = "1.42" insta = { workspace = true, default-features = true }
serde = { workspace = true, default-features = true } serde = { workspace = true, default-features = true }
[build-dependencies] [build-dependencies]

View File

@@ -11,7 +11,7 @@ edition.workspace = true
[dependencies] [dependencies]
base64 = { workspace = true, default-features = true } base64 = { workspace = true, default-features = true }
codee = { version = "0.3.0", features = ["json_serde"] } codee = { features = ["json_serde"] , workspace = true, default-features = true }
hydration_context = { workspace = true } hydration_context = { workspace = true }
reactive_graph = { workspace = true, features = ["hydration"] } reactive_graph = { workspace = true, features = ["hydration"] }
server_fn = { workspace = true } server_fn = { workspace = true }

View File

@@ -21,7 +21,7 @@ slotmap = { workspace = true, default-features = true }
thiserror = { workspace = true , default-features = true } thiserror = { workspace = true , default-features = true }
tracing = { optional = true , workspace = true, default-features = true } tracing = { optional = true , workspace = true, default-features = true }
guardian = { workspace = true, default-features = true } guardian = { workspace = true, default-features = true }
async-lock = "3.4.0" async-lock = { workspace = true, default-features = true }
send_wrapper = { features = ["futures"] , workspace = true, default-features = true } send_wrapper = { features = ["futures"] , workspace = true, default-features = true }
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies] [target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies]

View File

@@ -25,7 +25,7 @@ tracing = { optional = true , workspace = true, default-features = true }
once_cell = { workspace = true, default-features = true } once_cell = { workspace = true, default-features = true }
send_wrapper = { workspace = true, default-features = true } send_wrapper = { workspace = true, default-features = true }
thiserror = { workspace = true , default-features = true } thiserror = { workspace = true , default-features = true }
percent-encoding = { version = "2.3", optional = true } percent-encoding = { optional = true , workspace = true, default-features = true }
gloo-net = { workspace = true, default-features = true } gloo-net = { workspace = true, default-features = true }
[dependencies.web-sys] [dependencies.web-sys]

View File

@@ -14,8 +14,8 @@ throw_error = { workspace = true }
server_fn_macro_default = { workspace = true } server_fn_macro_default = { workspace = true }
# used for hashing paths in #[server] macro # used for hashing paths in #[server] macro
const_format = { workspace = true, default-features = true } const_format = { workspace = true, default-features = true }
const-str = "0.6.2" const-str = { workspace = true, default-features = true }
rustversion = "1.0" rustversion = { workspace = true, default-features = true }
xxhash-rust = { features = [ xxhash-rust = { features = [
"const_xxh64", "const_xxh64",
], workspace = true, default-features = true } ], workspace = true, default-features = true }
@@ -27,39 +27,43 @@ send_wrapper = { features = [
thiserror = { workspace = true, default-features = true } thiserror = { workspace = true, default-features = true }
# registration system # registration system
inventory = { version = "0.3.20", optional = true } inventory = { optional = true, workspace = true, default-features = true }
dashmap = { workspace = true, default-features = true } dashmap = { workspace = true, default-features = true }
once_cell = { workspace = true, default-features = true } once_cell = { workspace = true, default-features = true }
## servers ## servers
# actix # actix
actix-web = { optional = true, workspace = true, default-features = true } actix-web = { optional = true, workspace = true, default-features = true }
actix-ws = { version = "0.3.0", optional = true } actix-ws = { optional = true, workspace = true, default-features = true }
# axum # axum
axum = { optional = true, default-features = false, features = [ axum = { optional = true, default-features = false, features = [
"multipart", "multipart",
], workspace = true } ], workspace = true }
tower = { optional = true, workspace = true, default-features = true } tower = { optional = true, workspace = true, default-features = true }
tower-layer = { version = "0.3.3", optional = true } tower-layer = { optional = true, workspace = true, default-features = true }
## input encodings ## input encodings
serde_qs = { workspace = true, default-features = true } serde_qs = { workspace = true, default-features = true }
multer = { version = "3.1", optional = true } multer = { optional = true, workspace = true, default-features = true }
## output encodings ## output encodings
# serde # serde
serde_json = { workspace = true, default-features = true } serde_json = { workspace = true, default-features = true }
serde-lite = { version = "0.5.0", features = ["derive"], optional = true } serde-lite = { features = [
"derive",
], optional = true, workspace = true, default-features = true }
futures = { workspace = true, default-features = true } futures = { workspace = true, default-features = true }
http = { version = "1.3" } http = { workspace = true, default-features = true }
ciborium = { version = "0.2.2", optional = true } ciborium = { optional = true, workspace = true, default-features = true }
postcard = { version = "1", features = ["alloc"], optional = true } postcard = { features = [
hyper = { version = "1.6", optional = true } "alloc",
bytes = "1.10" ], optional = true, workspace = true, default-features = true }
http-body-util = { version = "0.1.3", optional = true } hyper = { optional = true, workspace = true, default-features = true }
rkyv = { version = "0.8.10", optional = true } bytes = { workspace = true, default-features = true }
rmp-serde = { version = "1.3.0", optional = true } http-body-util = { optional = true, workspace = true, default-features = true }
rkyv = { optional = true, workspace = true, default-features = true }
rmp-serde = { optional = true, workspace = true, default-features = true }
base64 = { workspace = true, default-features = true } base64 = { workspace = true, default-features = true }
# client # client
@@ -67,7 +71,7 @@ gloo-net = { optional = true, workspace = true, default-features = true }
js-sys = { optional = true, workspace = true, default-features = true } js-sys = { optional = true, workspace = true, default-features = true }
wasm-bindgen = { workspace = true, optional = true, default-features = true } wasm-bindgen = { workspace = true, optional = true, default-features = true }
wasm-bindgen-futures = { optional = true, workspace = true, default-features = true } wasm-bindgen-futures = { optional = true, workspace = true, default-features = true }
wasm-streams = { version = "0.4.2", optional = true } wasm-streams = { optional = true, workspace = true, default-features = true }
web-sys = { optional = true, features = [ web-sys = { optional = true, features = [
"console", "console",
"ReadableStream", "ReadableStream",
@@ -77,11 +81,11 @@ web-sys = { optional = true, features = [
], workspace = true, default-features = true } ], workspace = true, default-features = true }
# reqwest client # reqwest client
reqwest = { version = "0.12.15", default-features = false, optional = true, features = [ reqwest = { default-features = false, optional = true, features = [
"multipart", "multipart",
"stream", "stream",
] } ], workspace = true }
tokio-tungstenite = { version = "0.26.2", optional = true } tokio-tungstenite = { optional = true, workspace = true, default-features = true }
url = { workspace = true, default-features = true } url = { workspace = true, default-features = true }
pin-project-lite = { workspace = true, default-features = true } pin-project-lite = { workspace = true, default-features = true }
tokio = { features = [ tokio = { features = [

View File

@@ -20,10 +20,10 @@ reactive_graph = { workspace = true, optional = true }
reactive_stores = { workspace = true, optional = true } reactive_stores = { workspace = true, optional = true }
slotmap = { optional = true, workspace = true, default-features = true } slotmap = { optional = true, workspace = true, default-features = true }
oco_ref = { workspace = true, optional = true } oco_ref = { workspace = true, optional = true }
async-trait = "0.1.88" async-trait = { workspace = true, default-features = true }
once_cell = { workspace = true, default-features = true } once_cell = { workspace = true, default-features = true }
paste = { workspace = true, default-features = true } paste = { workspace = true, default-features = true }
erased = "0.1.2" erased = { workspace = true, default-features = true }
wasm-bindgen = { workspace = true, default-features = true } wasm-bindgen = { workspace = true, default-features = true }
html-escape = { workspace = true, default-features = true } html-escape = { workspace = true, default-features = true }
js-sys = { workspace = true, default-features = true } js-sys = { workspace = true, default-features = true }
@@ -149,18 +149,18 @@ web-sys = { features = [
"HtmlTemplateElement", "HtmlTemplateElement",
"HtmlOptionElement", "HtmlOptionElement",
], workspace = true, default-features = true } ], workspace = true, default-features = true }
drain_filter_polyfill = "0.1.3" drain_filter_polyfill = { workspace = true, default-features = true }
indexmap = { workspace = true, default-features = true } indexmap = { workspace = true, default-features = true }
rustc-hash = { workspace = true, default-features = true } rustc-hash = { workspace = true, default-features = true }
futures = { workspace = true, default-features = true } futures = { workspace = true, default-features = true }
parking_lot = { workspace = true, default-features = true } parking_lot = { workspace = true, default-features = true }
itertools = { workspace = true, default-features = true } itertools = { workspace = true, default-features = true }
send_wrapper = { workspace = true, default-features = true } send_wrapper = { workspace = true, default-features = true }
linear-map = "1.2" linear-map = { workspace = true, default-features = true }
sledgehammer_bindgen = { version = "0.6.0", features = [ sledgehammer_bindgen = { features = [
"web", "web",
], optional = true } ], optional = true, workspace = true, default-features = true }
sledgehammer_utils = { version = "0.3.1", optional = true } sledgehammer_utils = { optional = true, workspace = true, default-features = true }
tracing = { optional = true, workspace = true, default-features = true } tracing = { optional = true, workspace = true, default-features = true }
serde = { optional = true, workspace = true, default-features = true } serde = { optional = true, workspace = true, default-features = true }
serde_json = { optional = true, workspace = true, default-features = true } serde_json = { optional = true, workspace = true, default-features = true }