Skip to content

fix(release): tag releases v<version>, not monorepo-v<version> - #212

Merged
derrickmehaffy merged 1 commit into
mainfrom
fix/release-tag-name
Aug 14, 2026
Merged

derrickmehaffy merged 1 commit into
mainfrom
fix/release-tag-name

Conversation

@derrickmehaffy

Copy link
Copy Markdown
Contributor

Good catch on the tag. The draft came out as:

tag_name  = monorepo-v5.1.0-beta
name      = monorepo: v5.1.0-beta
prerelease = true

Why

component: "" does not mean "no component". An empty string is falsy, so
release-please fell back to deriving the component from the root
package.json name — @strapi-plugin-rest-cache/monorepo → monorepo.

include-component-in-tag: false is the real switch. From util/tag-name.js:

toString() {
  if (this.component) {
    return `${this.component}${this.separator}${this.includeV ? 'v' : ''}${this.version}`;
  }
  return `${this.includeV ? 'v' : ''}${this.version}`;
}

This would have blocked the publish

Not cosmetic. npm-latest and npm-prerelease allow deployments only from
main and from tags matching v*, and a release event runs on
refs/tags/<tag>.

monorepo-v5.1.0-beta matches neither rule, so the publish job would have been
refused by the environment gate — and that failure explains itself poorly, since
it looks nothing like a tag-naming problem.

The tag becomes v5.1.0-beta: what every tag here has looked like since v4, and
what those environment rules were written for.

The existing draft has to be recreated

It is already tagged wrong, so after this merges:

  1. Delete the monorepo-v5.1.0-beta draft release
  2. Relabel chore: release main #209 from autorelease: tagged back to autorelease: pending
  3. Re-run the release-please workflow — it recreates the draft as v5.1.0-beta

I can do all three once this is in; nothing is published yet, so there is
nothing to unwind.

Also confirmed from the draft

prerelease=true was set automatically, which answers the open question — you
will not need to tick the box by hand, and publish.yml will correctly take the
next / npm-prerelease path.

🤖 Generated with Claude Code

The draft release for 5.1.0-beta came out tagged `monorepo-v5.1.0-beta`.
`component: ""` does not mean "no component" - an empty string is falsy, so
release-please fell back to deriving it from the root package.json name,
@strapi-plugin-rest-cache/monorepo.

That is not cosmetic. The npm-latest and npm-prerelease environments allow
deployments only from `main` and from tags matching `v*`, and a release event
runs on refs/tags/<tag>. `monorepo-v5.1.0-beta` matches neither, so the publish
job would have been refused by the environment gate rather than by anything
that explains itself.

`include-component-in-tag: false` is the actual switch - tag-name.js only
prefixes the component when it is set. The tag becomes v5.1.0-beta, which is
what every tag in this repo has looked like since v4, and what the environment
rules were written for.

Co-Authored-By: Claude <noreply@anthropic.com>
@derrickmehaffy
derrickmehaffy merged commit a3f7d83 into main Aug 14, 2026
12 checks passed
derrickmehaffy added a commit that referenced this pull request Aug 14, 2026
The root CHANGELOG.md jumped straight from 5.1.0-beta to 4.2.8. Three releases
that actually shipped were missing from it: 4.2.9, 5.0.0 and 5.0.1.

They were never lost, just recorded elsewhere. The root file is inherited from
the strapi-plugin-rest-cache repository and stopped being maintained at 4.2.8,
and the 5.x entries were kept in packages/plugin-rest-cache/CHANGELOG.md
instead. Releases are now cut from the root, so the root file is the changelog
and the gap became visible the moment 5.1.0-beta landed on top of it.

Reconstructed from what shipped: the v5.0.0 GitHub release for the Strapi 5
migration and its breaking changes, the package changelog for 5.0.1, and the
commits between v4.2.8 and v4.2.9.

Two links are corrected too. The 5.1.0-beta heading compared
monorepo-v5.0.1...monorepo-v5.1.0-beta, and neither tag exists - that naming
came from the component bug fixed in #212. It now compares against v5.0.0. And
5.0.1 is no longer a compare link at all: it was published to npm without a tag
or release, so there is nothing to compare against.

Co-authored-by: Claude <noreply@anthropic.com>
@derrickmehaffy
derrickmehaffy deleted the fix/release-tag-name branch August 14, 2026 05:45
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