Skip to content

Release: never abort the publish step over a missing release note - #41

Merged
proggeramlug merged 1 commit into
mainfrom
fix/release-notes-fallback
Sep 15, 2026
Merged

proggeramlug merged 1 commit into
mainfrom
fix/release-notes-fallback

Conversation

@proggeramlug

Copy link
Copy Markdown
Contributor

The alpha.4 publish (run 35007316294) uploaded all 12 crates, created one tag, then failed:

ERROR: No changelog entry for turnloop-io-v0.1.0-alpha.4

A workspace release bumps every crate, but release-plz writes a changelog section only for the crates whose own sources changed. So eleven crates are on crates.io at 0.1.0-alpha.4 with no tag and no GitHub release, and the step failed at the worst possible point — after the irreversible part.

  • Preflight now validates the release note for every pending crate, before anything is uploaded, so a genuinely missing changelog still blocks the release.
  • The publish step gives a version-only bump an explicit body (No crate-specific changes; released with the workspace) rather than aborting a live publish.
  • A missing CHANGELOG.md file remains a hard failure in both places.
  • Unit test covers all three cases.

I will create the eleven missing alpha.4 tags and releases separately.

The alpha.4 publish (run 35007316294) uploaded all 12 crates, created one
tag, then failed: 'No changelog entry for turnloop-io-v0.1.0-alpha.4'. A
workspace release bumps every crate, but release-plz writes a section only for
the crates whose own sources changed, so eleven crates were published without
tags or GitHub releases.

The requirement now runs in preflight, where it can still block a release
before anything is uploaded. In the publish step a version-only bump gets an
explicit body ('No crate-specific changes; released with the workspace')
instead of stopping a live publish half-way. A missing CHANGELOG.md file
remains a hard failure in both places.
@coderabbitai

coderabbitai Bot commented Sep 15, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 21 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 5e6c9ac0-e906-4318-a536-888a839eb068

📥 Commits

Reviewing files that changed from the base of the PR and between 682399e and a46a4ac.

📒 Files selected for processing (2)
  • scripts/ci/release.py
  • scripts/ci/test_gates.py

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@proggeramlug
proggeramlug merged commit fd55ab6 into main Sep 15, 2026
39 checks passed
@proggeramlug
proggeramlug deleted the fix/release-notes-fallback branch September 15, 2026 20:59
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