Skip to content

chore: pin release-please's first release to 0.1.0#192

Merged
DavidCozens merged 1 commit into
mainfrom
chore/release-please-initial-version
Apr 22, 2026
Merged

chore: pin release-please's first release to 0.1.0#192
DavidCozens merged 1 commit into
mainfrom
chore/release-please-initial-version

Conversation

@DavidCozens

Copy link
Copy Markdown
Owner

Purpose

Finish the job #191 started. bump-minor-pre-major: true was the right flag for post-first-release behaviour in 0.x, but it doesn't affect the first release computation — that uses a separate path. Result: PR #101 still proposes 1.0.0 because release-please sees a feat!: in history and, without initial-version, falls back to the standard "breaking change → 1.0.0" rule for the first release.

Change Description

Add "initial-version": "0.1.0" to release-please-config.json. Combined effect:

Event Next version
First release merge (PR #101) 0.1.0
Subsequent feat: in 0.x minor bump (0.1.00.2.0)
Subsequent feat!: / BREAKING in 0.x minor bump (0.1.00.2.0) — capped by bump-minor-pre-major
Subsequent fix: in 0.x patch bump
After 1.0.0 is cut normal SemVer resumes

Test Evidence

  • JSON validated.
  • Observable effect: once merged, release-please re-runs on main and PR chore(main): release 0.1.0 #101's title should flip from chore(main): release 1.0.0 to chore(main): release 0.1.0, and the proposed manifest in that PR updates from 1.0.0 to 0.1.0. That's the confirmation signal.
  • Inspected the release-please v17.1.3 config schema to confirm initial-version is a supported package-level key ("Releases the initial library with a specified version").

Areas Affected

  • release-please-config.json — one line added.

#191 added bump-minor-pre-major: true, but that flag only affects
releases *after* the first. The first-release path uses a separate
computation that didn't pick up the flag, so release-please still
proposed 1.0.0 because of the feat!: commit in history.

initial-version is the purpose-built knob for this case: it forces
the very first release out of manifest 0.0.0 to a specified version,
skipping the normal major/minor/patch computation. 0.1.0 matches the
version ladder: first labelled beta candidate once SD coverage and
Windows reliable transport land.

After this merges, PR #101's title should re-render from
"release 1.0.0" to "release 0.1.0". bump-minor-pre-major keeps
subsequent breaking changes capped at minor bumps (0.1.0 → 0.2.0,
not → 1.0.0), in line with the 0.x-is-beta policy.
@coderabbitai

coderabbitai Bot commented Apr 22, 2026

Copy link
Copy Markdown
Contributor

Warning

Rate limit exceeded

@DavidCozens has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 38 minutes and 51 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 38 minutes and 51 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 724bab7f-aa8e-4e33-9b2e-3c7c2dd4c0d6

📥 Commits

Reviewing files that changed from the base of the PR and between 4046320 and 74a8fb5.

📒 Files selected for processing (1)
  • release-please-config.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/release-please-initial-version

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 and usage tips.

@github-actions

Copy link
Copy Markdown
Contributor

☀️   Quality Summary

   🚦   Unit Tests (GCC): 100% successful (✔️ 775 passed, 🙈 3 skipped)
   🚦   Unit Tests (Clang): 100% successful (✔️ 727 passed, 🙈 3 skipped)
   🚦   Unit Tests (Sanitize): 100% successful (✔️ 727 passed, 🙈 3 skipped)
   🚦   Integration Tests (OpenSSL): 100% successful (✔️ 9 passed)
   🚦   BDD Tests (Linux): 100% successful (✔️ 36 passed)
   🚦   BDD Tests (Windows): 58% successful (✔️ 21 passed, 🙈 15 skipped)
   🚦   Unit Tests (MSVC): 100% successful (✔️ 600 passed, 🙈 1 skipped)
   ⚠️   Clang-Tidy: No warnings
   ⚠️   CPPCheck: No warnings


Created by Quality Monitor v1.14.0 (#f3859fd). More details are shown in the GitHub Checks Result.

@DavidCozens DavidCozens merged commit 18d1917 into main Apr 22, 2026
14 checks passed
@DavidCozens DavidCozens deleted the chore/release-please-initial-version branch April 22, 2026 20:05
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