mirror of
https://github.com/codewhale-hq/Codewhale.git
synced 2026-11-08 17:10:50 -10:00
build(tui): no doctest pass for codewhale-tui; test-only deps move to dev-dependencies
From the 0.10.2 Rust optimization audit (build-size lens, judged safe-now). Doctests. codewhale-tui has no runnable doc example: its fences are 7 ignore, 1 rust,ignore, and text/json/sh blocks. Yet 'cargo test --doc' still built a rustdoc test harness for the crate on every run. Its [lib] now sets doctest = false. BUILD_PERFORMANCE.md says why. The workspace doctest inventory (3 passing / 8 ignored across 21 crates, all 8 ignored in codewhale-tui) is marked as not re-measured. Dependencies. schemars and rusqlite are used only under cfg(test): the schemars derive is cfg_attr(test, …), and rusqlite appears only in test modules. Both move to [dev-dependencies] with the same versions and features. rusqlite stays in the workspace's normal build through codewhale-memory, codewhale-state and codewhale-app-server, so its features are unchanged. Cargo.lock is unchanged, and --locked still resolves. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01BsXVvReYca2UxzimQtj7Mj
This commit is contained in:
2 files changed
+9
-6
No files matched your search
@@ -36,6 +36,7 @@ rusty-alloc = []
|
||||
[lib]
|
||||
name = "codewhale_tui"
|
||||
path = "src/lib.rs"
|
||||
doctest = false
|
||||
|
||||
[dependencies]
|
||||
# Independent terminal kit, pinned and vendored for reproducible binary builds.
|
||||
@@ -87,7 +88,6 @@ jsonwebtoken = { version = "10", default-features = false, features = ["aws_lc_r
|
||||
ratatui = { version = "=0.30.2", features = ["unstable-rendered-line-info"] }
|
||||
regex = "1.11"
|
||||
reqwest = { workspace = true, features = ["blocking", "stream", "form", "http2"] }
|
||||
rusqlite.workspace = true
|
||||
rquickjs.workspace = true
|
||||
rmcp = { version = "3.2.0", default-features = false, features = ["auth", "client"] }
|
||||
rustls.workspace = true
|
||||
@@ -103,7 +103,6 @@ syntect = { version = "5.2", default-features = false, features = ["default-synt
|
||||
serde.workspace = true
|
||||
serde_json = { workspace = true, features = ["preserve_order", "raw_value"] }
|
||||
yaml-rust2 = { workspace = true }
|
||||
schemars = { version = "1.2.1", features = ["derive", "preserve_order"] }
|
||||
shellexpand = "3"
|
||||
# Grammar-exact Rust parsing for the post-edit syntax gate (#6204). `syn` is
|
||||
# already in the lockfile as a proc-macro build dependency; this reuses that
|
||||
@@ -172,6 +171,8 @@ wiremock = "0.6"
|
||||
tiny_http = "0.12"
|
||||
pretty_assertions = "1.4"
|
||||
rio-vt = "0.5.1"
|
||||
rusqlite.workspace = true
|
||||
schemars = { version = "1.2.1", features = ["derive", "preserve_order"] }
|
||||
tokio-tungstenite = "0.30"
|
||||
|
||||
[target.'cfg(unix)'.dependencies]
|
||||
|
||||
@@ -210,10 +210,12 @@ every workspace crate.
|
||||
|
||||
### A2 nextest in CI
|
||||
|
||||
`cargo test --workspace --all-features --locked --doc` inventories
|
||||
**3 passing / 8 ignored doctests across 21 crates**; CI keeps them as a
|
||||
separate step next to `cargo nextest run --workspace --all-features
|
||||
--locked --profile ci`.
|
||||
`cargo test --workspace --all-features --locked --doc` inventoried
|
||||
**3 passing / 8 ignored doctests across 21 crates**. All 8 ignored fences
|
||||
were in codewhale-tui, which has no runnable doc example and now sets
|
||||
`doctest = false`, so its doc pass is skipped (the new inventory is not
|
||||
re-measured yet). CI keeps the doc run as a separate step next to
|
||||
`cargo nextest run --workspace --all-features --locked --profile ci`.
|
||||
|
||||
### A3/A4 (not adopted, measured)
|
||||
|
||||
|
||||
Reference in new issue
Block a user