Skip to content

ci: single release PR for both packages - #23

Merged
wavekat-eason merged 1 commit into
mainfrom
ci/single-release-pr
Jul 19, 2026
Merged

ci: single release PR for both packages#23
wavekat-eason merged 1 commit into
mainfrom
ci/single-release-pr

Conversation

@wavekat-eason

Copy link
Copy Markdown
Contributor

Answers "why two release PRs?" — because npm and Rust each had their own tool (release-please / release-plz). This folds the Rust side into release-please so there is one combined release PR for both packages.

  • release-please-config.json: add crates/wavekat-flow (release-type: rust) + the cargo-workspace plugin (keeps Cargo.lock in sync); manifest seeded at 0.0.2. Manifest mode combines all packages into a single release PR by default.
  • release-please.yml: new cargo-publish job mirroring npm-publish — gated on RELEASE_ENABLED + the crate's release_created output, auth via the org-level CARGO_REGISTRY_TOKEN.
  • Crate version is now literal in crates/wavekat-flow/Cargo.toml (was workspace-inherited) — release-please's Cargo updater rewrites the package manifest, not [workspace.package].
  • Delete release-plz.yml + release-plz.toml; tag streams unchanged (flow-schema-vX.Y.Z / wavekat-flow-vX.Y.Z), so changelog compare links keep working against the release-plz-era tags.
  • Docs: CLAUDE.md release posture + ROADMAP note updated.

Versioning stays independent per package (per the roadmap decision) — the combined PR bumps only what changed.

🤖 Generated with Claude Code

https://claude.ai/code/session_0177Rm5YYW6CxrGeABjazVrz

Fold Rust releases into release-please and drop release-plz, so one
combined release PR (manifest mode, cargo-workspace plugin) covers
@wavekat/flow-schema and wavekat-flow. Merging it publishes whichever
packages had releasable commits; tag streams are unchanged
(flow-schema-vX.Y.Z / wavekat-flow-vX.Y.Z, both currently at 0.0.2).

The crate's version becomes literal in its own Cargo.toml instead of
workspace-inherited — release-please's Cargo updater rewrites the
package manifest, not [workspace.package].

New cargo-publish job mirrors npm-publish: gated on RELEASE_ENABLED +
the crate's release_created output, auth via the org-level
CARGO_REGISTRY_TOKEN secret.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0177Rm5YYW6CxrGeABjazVrz
@wavekat-eason
wavekat-eason merged commit 5be9206 into main Jul 19, 2026
3 checks passed
@wavekat-eason
wavekat-eason deleted the ci/single-release-pr branch July 19, 2026 08:19
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