Getting this error on the latest versions of @changesets/cli and the changesets/action when the publish action runs when there are no changesets and all packages are published:
Error: Error: Failed to read changesets output at /home/runner/work/_temp/changesets-output-<uuid>.ndjson
It looks like this error was added in #678 and it expects the publish command to write to CHANGESETS_OUTPUT=<path> but maybe that file does not get written to when there is nothing to publish.
Of note our setup is maybe a bit unique, we have packages/ that get versioned and published via Changesets in the same repo as our app which goes through it's own release system. So most of the commits in the repo do not have an associated changeset to them and it currently causes the action to fail on every commit to main
Versions
Full Output
$ changeset publish
🦋 info npm info @signalapp/types
🦋 warn @signalapp/types is not being published because version 0.1.1 is already published on npm
🦋 warn No unpublished projects to publish
Error: Error: Failed to read changesets output at /home/runner/work/_temp/changesets-output-3cb84d4d-1ddb-4c08-87b3-8a26475c76cd.ndjson
Error: Failed to read changesets output at /home/runner/work/_temp/changesets-output-3cb84d4d-1ddb-4c08-87b3-8a26475c76cd.ndjson
Relevant Code
# .github/workflows/publish-package.ymlname: Publish Packageson:
push:
branches:
- mainconcurrency: ${{ github.workflow }}-${{ github.ref }}jobs:
publish:
if: ${{ github.repository == 'signalapp/Signal-Desktop-Private' }}name: Publishruns-on: ubuntu-latesttimeout-minutes: 45permissions:
id-token: write # Required for OIDCcontents: writepull-requests: writesteps:
- uses: actions/checkout@v7.0.0with:
persist-credentials: falsefetch-depth: 0
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4.2.0with:
node-version: '24.17.0'registry-url: 'https://registry.npmjs.org/'package-manager-cache: false
- run: pnpm install --frozen-lockfile
- id: changesetsuses: changesets/action@c47fa68bd43bb8ae0bae7e558622593deebf5955with:
commit-message: Publish Packagespr-title: Publish Packagesversion-script: pnpm changeset:versionpublish-script: pnpm changeset:publishcreate-github-releases: falsepush-git-tags: truecommit-mode: github-apigithub-token: ${{ secrets.AUTOMATED_GITHUB_PAT }}
Getting this error on the latest versions of
@changesets/cliand thechangesets/actionwhen the publish action runs when there are no changesets and all packages are published:It looks like this error was added in #678 and it expects the publish command to write to
CHANGESETS_OUTPUT=<path>but maybe that file does not get written to when there is nothing to publish.Of note our setup is maybe a bit unique, we have
packages/that get versioned and published via Changesets in the same repo as our app which goes through it's own release system. So most of the commits in the repo do not have an associated changeset to them and it currently causes the action to fail on every commit tomainVersions
@changesets/cli@2.31.0(latest)changesets/action@c47fa68bd43bb8ae0bae7e558622593deebf5955(v2.0.0-next.3)Full Output
Relevant Code