Skip to content

fix: keep breaking changes inside 0.x instead of releasing 1.0.0 - #15

Open
NickJosevski wants to merge 2 commits into
mainfrom
nj/stay-on-0x
Open

fix: keep breaking changes inside 0.x instead of releasing 1.0.0#15
NickJosevski wants to merge 2 commits into
mainfrom
nj/stay-on-0x

Conversation

@NickJosevski

Copy link
Copy Markdown
Contributor

Why

release-please opened #13 proposing 1.0.0. That's because bump-minor-pre-major defaults to false, so a feat!: on a 0.x version jumps straight to 1.0.0. We want to keep iterating on 0.x.

The change

           release-type: simple
+          bump-minor-pre-major: true

on both invocations. Pre-1.0.0 breaking changes now produce a minor bump, so the octooctopus migration becomes 0.2.0 rather than 1.0.0. The existing tag-maintenance step keeps working and will produce v0 and v0.2, consistent with the current v0.1 tag.

Also fixes docs that promised the wrong version

The migration notes merged in #9 were written assuming a 1.0.0 release, so they now say the wrong thing:

  • (changed in v1)(changed in 0.2.0) — in hooks/command, plugin.yml, and the README inputs table
  • ## Migrating from v0.x## Migrating from 0.1.x, plus the in-page anchor and the two prose references

Left alone deliberately: octopus-login#v1.0.0 in the README is the login plugin's version, and StepA:Acme.Web:1.0.0 is example package data.

What happens to #13

release-please recomputes on every run, so once this is on main it should update #13 from chore(main): release 1.0.0 to release 0.2.0. Worth confirming rather than assuming — if it doesn't refresh, closing #13 will make release-please open a fresh one.

⚠️ Interaction with #11 — this setting does not survive that migration on its own

bump-minor-pre-major is an action input in v3 but was removed as an input in v4 ("remove most configuration options in favor of manifest configuration"). In the v5 that #11 moves to, it only exists as $.bump-minor-pre-major inside a release-please-config.json.

So if #11 merges as it currently stands, this input becomes silently inert and the next breaking change goes to 1.0.0 again. I'll add the config-file equivalent to #11 so the behaviour carries over — flagging it here so it isn't lost if the PRs are reviewed by different people.

Merge order that avoids surprises: this PR → #11 (with the config file) → #13.

Verification

16 tests, linter (7 examples valid) and shellcheck all pass.

🤖 Generated with Claude Code

release-please opened #13 proposing 1.0.0, because bump-minor-pre-major
defaults to false and a breaking change therefore takes 0.x straight to
1.0.0. We want to keep iterating on 0.x, so set it to true: pre-1.0.0
breaking changes now produce a minor bump, making the octo -> octopus
migration 0.2.0 rather than 1.0.0.

Also corrects the version numbers the migration docs promise, which were
written assuming a 1.0.0 release: "changed in v1" -> "changed in 0.2.0",
and "Migrating from v0.x" -> "Migrating from 0.1.x" with its anchor.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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