Skip to content

Release v2.3.0 step 1: bump version to 2.3.0 on v2/main #2013

Description

@cliffhall

Summary

Bump the root package.json version 2.2.0 → 2.3.0 on v2/main, as the first step of the v2.3.0 release.

This is the first release through the procedure established in #2010 / #2011, where the bump happens on v2/main before the milestone merge rather than on the milestone-merge branch afterwards. Doing it in the wrong order is what left v2/main stranded at 2.0.0 through two releases, so this issue exists to make step 1 explicit and hard to skip.

Step 1 — the bump (this issue)

git checkout -b v2/chore/<this-issue>-bump-2-3-0 v2/main
npm version minor --no-git-tag-version
# PR → v2/main

⚠️ --no-git-tag-version is required. A bare npm version also creates a tag, and it would land on a v2/main commit — but the release is cut from main, so the tag belongs on the merge commit there (step 3). Tagging here produces a tag on a commit that is never released. It would also be v-prefixed, which does not match this repo's bare x.y.z tags.

Expected diff — two files, three lines:

package.json      | 2 +-      "version": "2.2.0" → "2.3.0"
package-lock.json | 4 ++--     top-level `version` AND packages[""].version

Then (not this issue)

  1. Merge v2/mainmain through the usual milestone-merge branch. It now carries the bump.

  2. Tag origin/main and draft the Release:

    git fetch origin main
    git tag 2.3.0 origin/main && git push origin 2.3.0

    ⚠️ Tag origin/main, not a local HEAD after git checkout main && git pullpull follows your configured merge/rebase strategy, so a divergent local main can produce a local commit, and git push origin <tag> pushes only the tag. That yields a release pointing at a commit nobody else has, and the publish job would not catch it (its tag-vs-package.json assertion still passes on a locally-merged commit).

Full procedure: Cutting a release.

Sanity checks

  • Between step 1 and step 2, v2/main and main legitimately differv2/main on the version being built, main on the released one. Ahead is expected; behind means something went wrong.
  • After the release, confirm they agree: git show origin/v2/main:package.json | grep version and the same for origin/main.
  • Nothing in the repo asserts a specific version value, so the bump is a safe two-file change with no test impact.

Metadata

Metadata

Assignees

No one assigned

    Labels

    choreMaintenance: deps, build tooling, CI, cleanup — no user-facing behavior changemanual-stepFor issues requiring a manual step. They may or may not require an associated PR.v2Issues and PRs for v2

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions