chore(deps): bump sqlx 0.7 to 0.8 (BUNYIP-399) #395
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/BUNYIP-399-sqlx-0.8"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Bump sqlx from 0.7.4 to 0.8.6 (latest 0.8.x) across the bunyip workspace, and repin the dunite git dependencies to the DUNITE-3 revision that runs on sqlx 0.8, so bunyip and dunite share one sqlx major.
Why
The workspace pinned sqlx 0.7.4, which emits a future-incompatibility warning for sqlx-postgres 0.7.4 ("contains code that will be rejected by a future version of Rust") and is two minor versions behind the supported 0.8.x line. bunyip cannot move alone because it consumes dunite-core/download/oci/oidc as compiled git dependencies and both sides must agree on the sqlx major; DUNITE-3 (dunite PR #20) upgrades dunite to sqlx 0.8, which unblocks this (BUNYIP-399).
Changes
rev = "70eea0b..."torev = "ded4b9f054f677a00d42bb7c3fbd51806a12a427", keeping the same git URL and the rev-pin form BUNYIP-426 F6 requires. All four resolve to one git source, so they move together.sqlxfrom 0.7 to 0.8 in the four crate manifests (bunyip-api, crates/bunyip-domain, crates/bunyip-oci, crates/bunyip-oidc) with the identical feature set (runtime-tokio, postgres, uuid, chrono, ipnetwork, migrate).cargo updatelocks sqlx to 0.8.6 (libsqlite3-sys 0.30.1, hashlink 0.10.0) and the dunite crates to ded4b9f; the regenerated Cargo.lock is committed..sqlx/cache regeneration was needed: the committed offline query cache validated unchanged under sqlx 0.8 (bunyip-oidc's compile-timequery!macros build clean with SQLX_OFFLINE=true).Refresh against main (2026-07-31)
The branch had been open since 2026-07-24 and had gone unmergeable ("Merge conflicts" on the PR). main moved from v0.8.0 to v0.9.0 and repinned the dunite deps by rev in the meantime, so Cargo.lock and three crate manifests conflicted. Merge commit
a768c20resolves every conflict to main's side and re-applies only this branch's two intended edits (sqlx 0.7 -> 0.8, dunite rev -> ded4b9f) on top, so the PR diff against main is now exactly the 4 manifests plus Cargo.lock. Forgejo reports the PR as mergeable again.Tests
Full gate green in the pinned rust-builder-glibc container with SQLX_OFFLINE=true, re-run after the refresh:
cargo fmt --all --checkclean,cargo clippy --workspace --all-targets -- -D warningsclean with zero warnings (the sqlx-postgres future-incompatibility warning is gone),cargo build --workspace --all-targets --lockedgreen (Cargo.lock is consistent for CI's locked build), andcargo test --workspace --all-targetsreports 607 passed and 0 failed. The four CI invariant scripts (check-security-invariants.sh, check-migration-immutability.sh, check-migration-versions.sh, check-workflow-secrets.sh) all pass.Merge prerequisite (DUNITE-3)
Do not merge until DUNITE-3 (dunite PR #20) is merged; then repin the dunite rev from ded4b9f to dunite's merged main commit and re-run
cargo updatefor the four dunite packages.ded4b9fis a commit on the still-open DUNITE-3 branch; if dunite is squash-merged and the branch is deleted, that commit can become unreachable and break bunyip's build. dunite PR #20 currently reports "Can be merged" with its own gate green, and its head sits directly on dunite main (70eea0b), so landing it is a fast-forward-shaped merge.