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

Merged
Breadway merged 2 commits from feature/dev-deps-main into main 2026-09-28 06:59:51 +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-onnx, bread-screenshots, bread-theme and bread-utils (all from bread-ecosystem) to their own main branch, and build without --locked. Cargo.toml stays tag-pinned throughout; nothing is committed back.

rc-release.yml and release.yml are untouched: tag pins plus --locked, no patching, as before.

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

Verified locally end to end: lint-pins, dev-deps.sh with its default sibling DEV_DEPS_DIR, and a dockerized cargo build --release -p breadpad -p breadman --features breadman/custom-protocol through ci/build.sh (the exact command dev-release.yml runs) all pass against a real breadpad 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-onnx, bread-screenshots, bread-theme and bread-utils (all from bread-ecosystem) to their own main branch, and build without --locked. Cargo.toml stays tag-pinned throughout; nothing is committed back. rc-release.yml and release.yml are untouched: tag pins plus --locked, no patching, as before. DEV_DEPS_DIR is left at its default (a true sibling of the checkout): breadpad is a Cargo workspace, so forcing the clone inside the checkout breaks Cargo's workspace-field inheritance (the bug found rolling this out to breadbox). ci/build.sh's pinned rev is bumped to bread-ecosystem's fix for this. Verified locally end to end: lint-pins, dev-deps.sh with its default sibling DEV_DEPS_DIR, and a dockerized `cargo build --release -p breadpad -p breadman --features breadman/custom-protocol` through ci/build.sh (the exact command dev-release.yml runs) all pass against a real breadpad 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
Some checks failed
check / check (push) Failing after 1m16s
13a0e3a8ab
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-onnx, bread-screenshots, bread-theme
and bread-utils to their own main branch, and build without --locked.
rc-release.yml and release.yml stay on tag pins with --locked,
untouched.

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

Verified locally end to end: lint-pins, dev-deps.sh with its default
sibling DEV_DEPS_DIR, and a dockerized cargo build --release
-p breadpad -p breadman --features breadman/custom-protocol through
ci/build.sh all pass against a real breadpad checkout.
fix(theme): pass Typography::active() to bread_theme::stylesheet
All checks were successful
check / check (push) Successful in 3m41s
ad2a64878a
Part of ECO-38. bread_theme::stylesheet() picked up a required
Typography parameter on bread-ecosystem main (breadpad's own tagged
pin, v0.7.4, predates the change); the new dev-track pin-check surfaced
the mismatch as a compile error the moment dev-deps.sh patched
bread-theme to main. Every other caller of it inside bread-theme itself
(gtk.rs, output.rs) resolves the parameter via Typography::active(),
the active shell theme's font tokens, so this matches that instead of
freezing breadpad to the static BREAD_DESIGN_SYSTEM baseline.
Sign in to join this conversation.
No reviewers
No labels
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/breadpad!10
No description provided.