Skip to content

feat(release): release:prepare adds the release to the pull request of the changes - #300

Merged
pviti merged 2 commits into
mainfrom
chore/next-main-pr
Oct 26, 2026
Merged

pviti merged 2 commits into
mainfrom
chore/next-main-pr

Conversation

@pviti

@pviti pviti commented Oct 26, 2026 •

Copy link
Copy Markdown
Member

Next changes to main

A draft pull request that collects the next changes to main, so they get one review. The title follows the contents. It is marked ready for review, and the reviewers are requested, when it is complete.

Changes

  • feat(release): one review for a change and its release. Until now a release needed two approved PRs: the one with the changes, then the chore(release) one with the versions.

    Run on the branch of the changes, pnpm release:prepare now:

    • computes the versions from the commits not yet released, the branch's own included;
    • commits the version bumps on the branch and pushes them;
    • adds the release notes to the branch's pull request, in a Release section that a new run replaces, keeping the rest of the description. If the branch has no pull request, it opens one, titled after the branch's first change.

    It stops in these cases:

    • approved PR: it asks before adding the commit, because the commit dismisses the approval;
    • release already prepared on the branch: it doesn't bump the versions twice;
    • branch without the latest main: merge main first;
    • merged release not on npm yet: the check that already existed.

    Run on main, it still opens a release PR of its own, for changes that were merged without a release.

Verification

On a local throwaway branch, never pushed, with a feat(tags) commit:

Case Result
--dry-run tags 3.0.0 → 3.1.0 on the same branch
--no-pr the chore(release): tags-v3.1.0 commit added to the branch
A second run stops: "The release is already prepared…"
On main release branch of its own, as before

Release package: 29 tests passing (3 new, for the PR description section). Type-check and pnpm lint pass.

🤖 Generated with Claude Code

Release

Merging this pull request publishes these versions: publish.yml tags them, publishes them to npm and publishes their GitHub releases.

  • @commercelayer/cli-plugin-tags 3.0.0 → 3.0.1 (tags-v3.0.1)

Release notes

@commercelayer/cli-plugin-tags 3.0.1

3.0.1 (2026-10-26)

Maintenance release: no changes to features or fixes since tags-v3.0.0 (tests, tooling, dependencies).

pviti and others added 2 commits October 26, 2026 17:31
…f the changes

A release needed two reviews: the pull request of the changes, then the
chore(release) one. Run on the branch of the changes, release:prepare now
commits the version bumps there, pushes them and adds the release notes to
that branch's pull request (opened if there is none), so the changes and
their release are approved together. It asks before adding the commit to an
approved pull request, and stops when the release is already prepared on
the branch or the branch lacks the latest main. Run on main it still opens
a release pull request of its own.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@pviti
pviti marked this pull request as ready for review October 26, 2026 18:37
@pviti
pviti merged commit 1768898 into main Oct 26, 2026
11 checks passed
@pviti
pviti deleted the chore/next-main-pr branch October 26, 2026 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants