ci: build dev track and PR checks against dependency main #7

Merged
Breadway merged 1 commit from feature/dev-deps-main into main 2026-09-28 13:34:58 +08:00
Owner

Part of ECO-38.

check.yml and dev-release.yml now clone bread-ecosystem's main once, run scripts/lint-pins.sh (check.yml only) and scripts/dev-deps.sh to patch bread-theme and bread-utils (both from bread-ecosystem) to their own main branch, and build without --locked. Cargo.toml stays tag-pinned throughout; nothing is committed back.

release.yml and beta-release.yml are untouched (per CONTRIBUTING.md, beta-release.yml is a known leftover from the old three-branch model and is deliberately not being rewritten here).

DEV_DEPS_DIR is left at its default (a true sibling of the checkout): breadcast is a Cargo workspace, so forcing the clone inside the checkout breaks Cargo's workspace-field inheritance. ci/bread-ecosystem.rev is bumped to pick up bread-ecosystem's ci/build.sh fix for this.

Also fixes the dev index regeneration step, which was still cloning bread-ecosystem's dev branch (removed in bread-ecosystem's single-trunk migration; checked breadcast's CI history and every single dev-release run has been failing outright because of this), reusing the same bread-ecosystem clone dev-deps.sh uses instead of a second, separate one that was pointed at a branch that no longer exists.

Verified locally end to end: lint-pins, dev-deps.sh with its default sibling DEV_DEPS_DIR, and a dockerized cargo clippy --workspace through ci/build.sh all pass against a real breadcast checkout. Cargo.lock verified fresh and every git.breadway.dev dependency is already tag-pinned.

Part of ECO-38. check.yml and dev-release.yml now clone bread-ecosystem's main once, run scripts/lint-pins.sh (check.yml only) and scripts/dev-deps.sh to patch bread-theme and bread-utils (both from bread-ecosystem) to their own main branch, and build without --locked. Cargo.toml stays tag-pinned throughout; nothing is committed back. release.yml and beta-release.yml are untouched (per CONTRIBUTING.md, beta-release.yml is a known leftover from the old three-branch model and is deliberately not being rewritten here). DEV_DEPS_DIR is left at its default (a true sibling of the checkout): breadcast is a Cargo workspace, so forcing the clone inside the checkout breaks Cargo's workspace-field inheritance. ci/bread-ecosystem.rev is bumped to pick up bread-ecosystem's ci/build.sh fix for this. Also fixes the dev index regeneration step, which was still cloning bread-ecosystem's `dev` branch (removed in bread-ecosystem's single-trunk migration; checked breadcast's CI history and every single dev-release run has been failing outright because of this), reusing the same bread-ecosystem clone dev-deps.sh uses instead of a second, separate one that was pointed at a branch that no longer exists. Verified locally end to end: lint-pins, dev-deps.sh with its default sibling DEV_DEPS_DIR, and a dockerized cargo clippy --workspace through ci/build.sh all pass against a real breadcast checkout. Cargo.lock verified fresh and every git.breadway.dev dependency is already tag-pinned.
ci: build dev track and PR checks against dependency main
All checks were successful
check / check (push) Successful in 4m25s
c0552f39d0
Part of ECO-38. check.yml and dev-release.yml now clone
bread-ecosystem's main, run scripts/lint-pins.sh (check.yml only) and
scripts/dev-deps.sh to patch bread-theme and bread-utils to their own
main branch, and build without --locked. release.yml and
beta-release.yml stay on tag pins with --locked, untouched (per
CONTRIBUTING.md, beta-release.yml is a known leftover from the old
three-branch model and is deliberately not being rewritten here).

DEV_DEPS_DIR is left at its default (a true sibling of the checkout):
breadcast is a Cargo workspace, so forcing the clone inside the
checkout breaks Cargo's workspace-field inheritance. ci/bread-ecosystem.rev
bumped to pick up bread-ecosystem's ci/build.sh fix for this.

Also fixes the dev index regeneration step, which was still cloning
bread-ecosystem's `dev` branch (removed in bread-ecosystem's
single-trunk migration; every dev-release run had been failing
outright on this) to `main`, now reusing the same clone dev-deps.sh
uses instead of a second, separate one.

Verified locally end to end: lint-pins, dev-deps.sh with its default
sibling DEV_DEPS_DIR, and a dockerized cargo clippy --workspace
through ci/build.sh all pass against a real breadcast checkout.
Sign in to join this conversation.
No reviewers
No labels
bug
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Breadway/breadcast!7
No description provided.