turbo
74446c5b - refactor: Port Cargo task and contract knowledge (#13581)

Commit
15 days ago
refactor: Port Cargo task and contract knowledge (#13581) ## Intent Move Cargo task commands, entrypoint selection, defaults, derived inputs, environment, exact outputs, and cache safety into immutable repository knowledge. **Base:** `main`. ## Changes - Retain Cargo override framing and serial grouping in native-task scope knowledge. - Remove dead command-era package-manager and graph resolution helpers. - Produce immutable Cargo task contracts during discovery. - Compose cache defaults, dependency-source inputs, hashed environment, output layout, and safety states from `PackageTaskContext`. - Move task entrypoint selection from mutable `CargoToolchain` state to immutable contracts. - Preserve query task enumeration and exclude-only Cargo entrypoint selection. - Project task-I/O environment patterns from contract knowledge. - Delete task defaults, task-I/O, and entrypoint-selection callbacks from `Toolchain`. - Preserve fail-closed output and untracked-input behavior. ## Testing - `cargo test -p turborepo-repository cargo::test` (41 passed) - `cargo test -p turborepo-engine` (126 passed) - `cargo test -p turbo --test cargo_workspace_test` (57 passed) - `cargo clippy -p turborepo-repository -p turborepo-engine -p turborepo-lib -p turborepo-task-executor -p turborepo-run-summary --all-targets -- -D warnings` - `cargo fmt --check` Closes TURBO-5792. Closes TURBO-5791.
Author
Parents
Loading