fix(release): sync and stage Cargo.lock in create-release recipe #24

Merged
David merged 1 commit from fix/create-release-stage-cargo-lock into main 2026-06-23 04:42:11 +02:00
Owner

Problem

The create-release recipe in justfile bumped package.version in Cargo.toml and staged only the manifest (git add $manifest). It never ran a cargo update, so Cargo.lock's youtrack-mcp entry kept the old version. Every cargo build --release --locked against the release commit then failed on a version mismatch. This is the exact stale-lockfile CI break that #22 had to patch by hand (YTMCP-18), and it would recur on the next release. The recipe comment even claimed cargo update --workspace ran, but no such command existed in the recipe.

Fix

Run cargo update --package youtrack-mcp --precise <version> after the manifest bump to rewrite this crate's Cargo.lock entry (third-party pins untouched, verified empirically against a local-path package), and stage Cargo.lock alongside Cargo.toml in the release commit so --locked builds succeed. Also corrected the misleading "three workspace members" comment: this is a single-crate package, not a workspace.

Verification

just pre-commit (fmt, clippy, build, 73 tests) passes. Confirmed cargo update --package youtrack-mcp --precise updates the lock's youtrack-mcp version line for the local package without touching dependency pins.

Closes #YTMCP-18 root cause (recurrence prevention).

## Problem The `create-release` recipe in `justfile` bumped `package.version` in `Cargo.toml` and staged only the manifest (`git add $manifest`). It never ran a `cargo update`, so `Cargo.lock`'s `youtrack-mcp` entry kept the old version. Every `cargo build --release --locked` against the release commit then failed on a version mismatch. This is the exact stale-lockfile CI break that #22 had to patch by hand (YTMCP-18), and it would recur on the next release. The recipe comment even claimed `cargo update --workspace` ran, but no such command existed in the recipe. ## Fix Run `cargo update --package youtrack-mcp --precise <version>` after the manifest bump to rewrite this crate's `Cargo.lock` entry (third-party pins untouched, verified empirically against a local-path package), and stage `Cargo.lock` alongside `Cargo.toml` in the release commit so `--locked` builds succeed. Also corrected the misleading "three workspace members" comment: this is a single-crate package, not a workspace. ## Verification `just pre-commit` (fmt, clippy, build, 73 tests) passes. Confirmed `cargo update --package youtrack-mcp --precise` updates the lock's `youtrack-mcp` version line for the local package without touching dependency pins. Closes #YTMCP-18 root cause (recurrence prevention).
fix(release): sync and stage Cargo.lock in create-release recipe
All checks were successful
Check / fmt + clippy + build + tests (pull_request) Successful in 21s
Create release / Create release from merged PR (pull_request) Has been skipped
bbe54f8914
The create-release recipe bumped package.version in Cargo.toml and staged only the manifest, so Cargo.lock kept the previous version. Every `cargo build --release --locked` against the release commit then failed, which is the stale-lockfile CI break PR #22 had to patch by hand. The recipe comment even claimed `cargo update --workspace` ran, but no such command was present.

Run `cargo update --package youtrack-mcp --precise <version>` after the manifest bump to rewrite this crate's Cargo.lock entry (third-party pins untouched), and stage Cargo.lock alongside Cargo.toml in the release commit. Also corrected the misleading "three workspace members" comment: this is a single-crate package.

Signed-off-by: David Randall <David@NiceGuyIT.biz>

#YTMCP-18
David merged commit 8b4d92bcc1 into main 2026-06-23 04:42:11 +02:00
David deleted branch fix/create-release-stage-cargo-lock 2026-06-23 04:42:12 +02:00
Commenting is not possible because the repository is archived.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
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
pandoras-box/youtrack-mcp!24
No description provided.