* Fixed a regression making it impossible to sync new versions of versioning pull requests with base branch updates when using GitHub API pushes
* update ghcommit
* Expect publish output to be shared through a file
* throw at all times
* match latest changes
* fmt
* rename things
* update changesets
* add changeset
* Add select-mode, version, and publish sub-actions
* Rename
* No github-token needed for select-mode for now
* extend select-mode with publish-plan check and upload
* Rename base-branch to pr-base-branch
* add `pack` subaction
* `--from-pack` support in the publish subaction
* rename CLI arg
* update rolldown config
* rename pack dir input/output
* tweak retendion days
---------
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
* Fixed an issue with GitHub releases not being created for successfully published packages when some packages failed to be published
* Format
---------
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* fix: conditionally append NPM_TOKEN to .npmrc for trusted publishing support
The .npmrc generation now intelligently handles both traditional NPM token
authentication and trusted publishing scenarios:
- Only appends auth token to .npmrc when NPM_TOKEN is defined (not undefined)
- Uses strict comparison (!== undefined) instead of truthy checks
- Provides informative logging when no NPM_TOKEN is present
- Maintains full backward compatibility with existing workflows
This fixes issues with trusted publishing where OIDC tokens from GitHub
Actions are used instead of NPM_TOKEN, preventing 'undefined' from being
written to the registry auth configuration.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Update src/index.ts
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
* simplify
* tweak changeset
---------
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
* Migrate to ESM
* just use `require.resolve`
* reuse setup action
* checkout PR head for a sec
* ls things
* try a thing
* the dirname had a trailing whitespace, lol
* fix: use latest ghcommit and fix cwd for git-cli
- `cwd` was not working correctly when commitMode was set to `git-cli`,
as it was attempting to resolve the `cwd` twice.
(This problem only occured when specifying a relative path for `cwd`.)
- Update `ghcommit`, and avoid calling `process.chdir()` to change the
working directory. Instead, we now pass the `cwd` option everywhere.
fixes#475
* simplify
* Apply suggestions from code review
---------
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
* Fix PRs sometimes not getting reopened
There was a race-condition that means sometimes
existing PRs would not be found,
and new PRs would be opened.
This has now been fixed by fetching existing PRs
before making any changes.
fixes#487
* Apply suggestions from code review
---------
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
* Make git add work consistently with subdirectories
Currently, depending on your `commitMode`,
when running the action with `cwd` set to a subdirectory of a repo,
the action will either:
- `git-cli`: add the files changed in the subdirectory only
- `github-api`: add files changed anywhere in the repository
This commit brings github-api in line with git-cli,
so that it only adds files in the current working directory.
* Explicitly set `cwd` for all exec calls
* Avoid using `ExecOptions` from `@actions/exec`
* Rename type
* remove redundant `filter`
---------
Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>