ci: skip project builds for static checks - #673
Conversation
Signed-off-by: Alex Fournier <afournier@nvidia.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 12 included reviews per hour; 10 remain after this review. WalkthroughThe CI workflow now synchronizes locked dependencies without installing the project. The lint and typecheck jobs run Ruff and mypy without additional synchronization. ChangesCI tool synchronization
Priority: ⬇️ Low Estimated code review effort: 1 (Trivial) | ~5 minutes Merge Risk: ⚪ Minimal · up to Static checks now avoid the unnecessary local project build while retaining locked Ruff and mypy environments. No merge-blocking production or product behavior risk is evident. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
A rabbit checks the tools in line Comment |
What
Updates the Ruff and mypy jobs to install the locked development dependencies without installing the local Switchyard project. Both tools then run without synchronizing the environment a second time.
Why
Ruff and mypy inspect the source tree and do not need the installed Switchyard package. The existing setup builds the local Maturin/PyO3 project before each check. In a clean local control run with dependencies cached, that build took about two minutes.
--no-install-projectskips the local project while retaining its dependencies.--no-syncpreventsuv runfrom synchronizing again and installing the project anyway. Relay uses the same pairing.How tested
UV_PYTHON=3.12 uv sync --locked --no-install-projectUV_PYTHON=3.12 uv run --no-sync ruff check .UV_PYTHON=3.12 uv run --no-sync mypy switchyardnemo-switchyardremained uninstalled after both checks.github/workflows/ci.ymlas YAMLgit diff --checkNo live provider tests were run because this only changes setup for static-analysis jobs.
Notes for reviewers
This changes four workflow lines. The Python test, Rust, and package smoke-test jobs continue to install Switchyard normally. No product code, dependencies, lockfile, or public APIs change.