返回 CodeWhale
Cargo.toml
根目录 / crates / runtime / Cargo.toml
1 [package]
2 name = "codewhale-runtime"
3 version.workspace = true
4 edition.workspace = true
5 rust-version.workspace = true
6 license.workspace = true
7 repository.workspace = true
8 description = "Headless Codewhale runtime, split out of the terminal UI one module at a time; no terminal UI dependency"
9
10 [lints]
11 workspace = true
12
13 # Test helpers (process-global state guards, snapshots, diff renders) that
14 # the TUI's tests use. It only *adds* `pub` items; it changes no behavior.
15 # The TUI enables it from [dev-dependencies] only, so `-p codewhale-cli` /
16 # `-p codewhale-tui` release builds never see it; a `--workspace
17 # --all-features` build does, which is harmless for helpers.
18 #
19 # `test-thread-scoped-state` is the one behavior switch: it makes the retry
20 # banner and the provider-wide `Retry-After` pause per-thread so concurrent
21 # tests cannot see each other's HTTP retries (see `retry_status`). It takes
22 # effect only with debug assertions, so no optimized build ever carries it,
23 # even under `--all-features`.
24 [features]
25 test-support = []
26 test-thread-scoped-state = []
27
28 [lib]
29 name = "codewhale_runtime"
30 path = "src/lib.rs"
31
32 # This crate must never depend on codewhale-tui, codewhale-cli, ratatui,
33 # crossterm, ansi-to-tui or a terminal component kit.
34 # scripts/check-command-crate-boundaries.py enforces that with `cargo tree -p`.
35 [dependencies]
36 ahash = "0.8"
37 anyhow.workspace = true
38 chrono.workspace = true
39 codewhale-config = { path = "../config", version = "0.10.1" }
40 codewhale-core = { path = "../core", version = "0.10.1" }
41 codewhale-memory = { path = "../memory", version = "0.10.1" }
42 codewhale-models = { path = "../models", version = "0.10.1" }
43 fd-lock = "4.0.4"
44 lru = "0.18"
45 regex = "1.11"
46 serde.workspace = true
47 serde_json = { workspace = true, features = ["preserve_order", "raw_value"] }
48 sha2.workspace = true
49 tokio.workspace = true
50 tokio-util = { version = "0.7.16", features = ["io"] }
51 toml.workspace = true
52 tracing.workspace = true
53 uuid.workspace = true
54
55 [dev-dependencies]
56 codewhale-models = { path = "../models", version = "0.10.1", features = [
57 "test-support",
58 ] }
59 tempfile.workspace = true
60 wait-timeout = "0.2"
61
62 [target.'cfg(unix)'.dependencies]
63 libc = "0.2"
64
64 lines TOML