From 8bd595c24e503f55da2953872d42432f1e326b25 Mon Sep 17 00:00:00 2001 From: expilu Date: Sat, 26 Sep 2026 15:59:03 +0100 Subject: [PATCH] fix(ci): changesets version input is not a shell line The changesets action whitespace-splits the version/publish inputs and spawns them as args, so '&&' chains are rejected (CACError: unused args). Move the version chaining into the package script 'changeset:version' and point the action at it as a single command. Rehearsed off origin/main in a disposable clone: bumps 0.0.2 -> 0.1.0, seeds CHANGELOG.md and syncs src/version.ts. --- .github/workflows/release.yml | 4 +++- package.json | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d96d5bb..1878c17 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -39,7 +39,9 @@ jobs: - uses: changesets/action@v1 id: changesets with: - version: npx changeset version && node ./scripts/sync-version.mjs + # Single command: the action whitespace-splits this input and spawns + # it as args (no shell), so chaining belongs in the package script. + version: npm run changeset:version publish: node ./scripts/release.mjs env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/package.json b/package.json index 28e122d..ba8f2d6 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "format": "prettier --write .", "format:check": "prettier --check .", "changeset": "changeset", + "changeset:version": "changeset version && node ./scripts/sync-version.mjs", "build": "tsc -p tsconfig.build.json", "typecheck": "tsc", "test": "vitest run",