The update-major-tag workflow triggers on `release: published`, but
semantic-release was only creating git tags (via @semantic-release/git)
without creating actual GitHub Release objects. This meant the workflow
never fired.
Add src/rsync.js as a drop-in replacement for rsyncwrapper, using
child_process.spawn directly. Only implements the options this project
uses. Single line change in rsyncCli.js to swap the import.
BREAKING CHANGE: rsyncwrapper dependency removed, rsync command is now
constructed and executed via a local module using child_process.spawn.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds update-major-tag.yml that triggers on any published release and
force-updates the major version tag (e.g., v6) to point to the latest
release (e.g., v6.0.1). Enables users to pin to @v6 instead of full
version numbers.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove the outdated rsyncwrapper dependency (unmaintained, uses
deprecated util._extend) and replace with a built-in buildRsyncCommand()
+ spawn implementation. Zero runtime dependencies.
BREAKING CHANGE: rsyncwrapper dependency removed, rsync command is now
constructed and executed directly via child_process.spawn.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
GitHub Actions is deprecating Node.js 20 runners starting June 2, 2026.
Update action runtime and CI workflows to Node.js 24.
Closes#207
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>