Skip to content

Use split publishing workflow#679

Merged
Andarist merged 13 commits into
mainfrom
split-publishing-workflow
Jul 1, 2026
Merged

Use split publishing workflow#679
Andarist merged 13 commits into
mainfrom
split-publishing-workflow

Conversation

@Andarist

Copy link
Copy Markdown
Member

No description provided.

@changeset-bot

changeset-bot Bot commented Jun 25, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: f7a2e19

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@Andarist Andarist marked this pull request as ready for review July 1, 2026 09:12
@Andarist Andarist requested review from bluwy and emmatown as code owners July 1, 2026 09:12
@Andarist Andarist enabled auto-merge July 1, 2026 12:24
@Andarist Andarist added this pull request to the merge queue Jul 1, 2026
Merged via the queue into main with commit cf45e93 Jul 1, 2026
7 checks passed
@Andarist Andarist deleted the split-publishing-workflow branch July 1, 2026 12:25
mcansh pushed a commit to mcansh/remix-fastify that referenced this pull request Jul 7, 2026
…ersion, and publish jobs (#638)

This updates the release workflow to mirror the split publishing model from `changesets/action#679`: determine release mode first, then run only the relevant path (`version` or `publish`). The goal is to separate responsibilities in CI and align with the newer Changesets sub-actions.

- **Workflow topology**
  - Replaced the single `release` job with three jobs:
    - `select-mode` (`changesets/action@v1/select-mode`)
    - `version` (runs only when mode is `version`)
    - `publish` (runs only when mode is `publish`)
  - Routed downstream commenting to depend on `publish` output (`published`) instead of the old combined job.

- **Changesets action migration**
  - Switched from monolithic `changesets/action@v1` invocation to sub-actions:
    - `changesets/action@v1/version`
    - `changesets/action@v1/publish`
  - Updated inputs to sub-action schema:
    - `script` (replaces `version`/`publish` command inputs)
    - `commit-message`, `pr-title` (version action)
    - `create-github-releases` (publish action)

- **Behavioral effect**
  - Release branches now execute an explicit decision phase before taking action.
  - Version PR creation and package publishing are cleanly isolated, reducing coupling in the workflow logic.

```yaml
jobs:
  select-mode:
    outputs:
      mode: ${{ steps.changesets.outputs.mode }}
    steps:
      - id: changesets
        uses: changesets/action@v1/select-mode

  version:
    if: needs.select-mode.outputs.mode == 'version'
    uses: changesets/action@v1/version
    with:
      script: pnpm run changeset:version
      commit-message: "chore: Update version for release"
      pr-title: "chore: Update version for release"

  publish:
    if: needs.select-mode.outputs.mode == 'publish'
    steps:
      - id: changesets
        uses: changesets/action@v1/publish
        with:
          script: pnpm run changeset:release
          create-github-releases: true
```
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.

2 participants