Skip to content

release: default to vendored deps for katana binary builds#442

Open
kariy wants to merge 2 commits intomainfrom
vendored-deps
Open

release: default to vendored deps for katana binary builds#442
kariy wants to merge 2 commits intomainfrom
vendored-deps

Conversation

@kariy
Copy link
Member

@kariy kariy commented Feb 26, 2026

Objective

Make vendored dependencies the default input for Katana binary release builds, and enforce them in CI/release workflows.

Why vendoring is required for hermetic reproducibility

A reproducible build requires all inputs to be fixed, local, and verifiable; relying on live crates.io/git fetches introduces mutable external state (e.g., crates on crates.io can get deleted, or modified while still keeping the same version tag).

This is the same reproducibility direction established in #441, applied to the Katana binary release pipeline.

Why the tarball is split into multiple parts

GitHub hard-rejects files above 100 MB, so a single vendor archive cannot be committed directly.

The archive is split into deterministic vendor.tar.gz.part-* chunks (<100 MB each), then reconstructed and checksum-verified during CI/build.

What this PR changes

  • Adds vendor refresh/verify/build scripts for release use.
  • Commits vendored dependency artifacts plus manifest and checksum.
  • Makes release.yml build from vendored inputs by default.
  • Adds CI drift checks (Cargo.lock vs vendor artifacts) and a double-build hash reproducibility gate.

Related

@codecov
Copy link

codecov bot commented Feb 27, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 68.08%. Comparing base (9bde0ae) to head (59a479d).
⚠️ Report is 279 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #442      +/-   ##
==========================================
- Coverage   73.32%   68.08%   -5.25%     
==========================================
  Files         209      277      +68     
  Lines       23132    33386   +10254     
==========================================
+ Hits        16961    22730    +5769     
- Misses       6171    10656    +4485     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant