Hive Hive
Sign in

feat: Thread cargo build script directives

GitHub issue · Closed

Metadata
Source
tuist/once #17
Updated
Jun 24, 2026
Domains
Once
Details

Summary

  • Thread captured cargo build-script directives into downstream granular Rust rustc actions.
  • Represent cargo_build_script nodes as first-class graph deps with real action digests and restored directive output paths.
  • Move checked-in examples under grouped paths like examples/rust/granular/basic-app and examples/apple/ios/simulator-app, with source code and README files in each project.
  • Add examples/rust/granular/build-script-cfg for the build-script scenario, then update shellspec coverage to copy that example into each test workspace and verify cfg propagation, cache hits, and invalidation.

Why

The lower-level TOML graph already allowed [[cargo.build_script]], but dependents did not consume the captured directives. That left build-script-backed crates on the cargo.binary escape hatch even when the graph was declared explicitly.

The build-script scenario is now visible as a normal example project instead of being generated inline inside the shellspec.

Validation

  • mise exec -- cargo test --workspace
  • mise exec -- cargo fmt --all -- --check
  • mise exec -- cargo clippy --workspace --all-targets -- -D warnings
  • mise exec -- cargo build --release
  • mise exec -- shellspec
Comments

No GitHub comments yet.