[workspace] resolver = "3" members = [ "sglang-grpc", "sglang-mm", "sglang-renderer", "sglang-server" ] exclude = ["sglang-radix-tree"] [workspace.metadata.sglang] # Extension crates that intentionally cannot share this workspace's dependency # graph (sglang-radix-tree currently uses the tch-compatible PyO3 0.22 API). extension-manifests = ["sglang-radix-tree/Cargo.toml"] [workspace.package] version = "0.1.0" edition = "2024" license = "Apache-2.0" # Single source of truth for dependency versions across workspace members. # Members pull these in with `dep = { workspace = true }` (plus extra features # where needed). [workspace.dependencies] async-stream = "0.3" bytes = "1" futures = "0.3" pyo3 = { version = "0.29.0", features = ["extension-module"] } serde = { version = "1", features = ["derive"] } serde_json = "1" socket2 = "0.6" thiserror = "2" tokio = { version = "1", features = ["full"] } tokio-stream = { version = "0.1", features = ["net"] } tracing = "0.1" tracing-appender = "0.2" tracing-subscriber = { version = "0.3", features = ["env-filter"] } uuid = { version = "1", features = ["v4"] } # Profiles only take effect at the workspace root; per-member profile sections # are ignored by cargo. Per-package tweaks live in the override tables below. [profile.release] lto = true strip = true opt-level = 3 codegen-units = 1 [profile.dev] opt-level = 0 debug = 1