Skip to content

ci: run the changesets version command through a shell#56

Merged
Akshay-2007-1 merged 1 commit into
mainfrom
ci/fix-changeset-version-command
Jul 9, 2026
Merged

ci: run the changesets version command through a shell#56
Akshay-2007-1 merged 1 commit into
mainfrom
ci/fix-changeset-version-command

Conversation

@Akshay-2007-1

Copy link
Copy Markdown
Contributor

Summary

  • .github/workflows/on_push.yml's changesets/action step had version: yarn changeset version && yarn install. changesets/action execs that string directly (not through a shell) by splitting on whitespace and running the first token with the rest as literal argv — so the changeset CLI itself received &&, yarn, install as extra positional arguments and rejected them: 🦋 error Too many arguments passed to changesets - we only accept the command name as an argument.
  • That made the version step abort before writing any version bump/changelog changes, so there was nothing to diff between main and changeset-release/main, and the action failed to open a "Version Packages" PR with No commits between main and changeset-release/main.
  • Fix: wrap the compound command in bash -c "..." so bash — not changesets/action — parses the &&.

Why

Discovered on the #55 merge (which included a changeset) — its post-merge workflow run failed exactly this way, twice (including a manual rerun), and no Version Packages PR was produced. The && yarn install chaining itself is intentional/correct (added to keep yarn.lock in sync with a version-bumped peerDependency range — see the existing comment) — it just needs to actually go through a shell.

Test plan

  • Validated the YAML still parses correctly and the version field's value is exactly bash -c "yarn changeset version && yarn install" (via python3 -c "import yaml; ...")
  • Once merged, confirm the resulting push-to-main run successfully opens (or updates) a "Version Packages" PR for the still-pending changeset from Add breakpointSteps to the CSE snapshot protocol #55

changesets/action execs the `version` input directly instead of through a
shell, splitting it on whitespace and running the first token with the
rest as literal argv. `yarn changeset version && yarn install` therefore
sent `&&`, `yarn`, `install` to the changeset CLI itself as extra
positional arguments, which it rejected ("Too many arguments passed to
changesets — we only accept the command name as an argument"). That
aborted the version step before it could write any changes, so the
resulting "no commits between main and changeset-release/main" made the
action fail to open a Version Packages PR (seen on the #55 merge).

Wrap the compound command in `bash -c "..."` so bash — not changesets/action
— parses the `&&`.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@changeset-bot

changeset-bot Bot commented Jul 9, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 7176636

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.

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

💥 An error occurred when fetching the changed packages and changesets in this PR
Some errors occurred when validating the changesets config:
The package or glob expression "@sourceacademy/web-stepper" is specified in the `ignore` option but it is not found in the project. You may have misspelled the package name or provided an invalid glob expression. Note that glob expressions must be defined according to https://www.npmjs.com/package/micromatch

@gemini-code-assist

Copy link
Copy Markdown
Contributor

Note

Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported.

@Akshay-2007-1 Akshay-2007-1 self-assigned this Jul 9, 2026
@Akshay-2007-1
Akshay-2007-1 merged commit 58a1010 into main Jul 9, 2026
2 checks passed
@Akshay-2007-1
Akshay-2007-1 deleted the ci/fix-changeset-version-command branch July 9, 2026 13:12
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.

1 participant