One caveat of
auto is that you need to be mindful of merging multiple PRs at once.
You must not merge a PR while another is publishing (ex: during
While this window is small, it exists and you should know about it.
auto works by looking at the
git tree to calculate the version bump then makes commits for the
CHANGELOG.md and the new version.
If you merge a PR while another is publishing:
- they might try to publish the same version number
- one will try to push over the other's changes and fail
If you ensure that the last build on master has finished you shouldn't run into any problems!
auto will do the following before trying to
publish and push its commits:
- Check for commits on the remote
- Run the platform specific
publish step runs a lengthy build, then the window for conflicts is extended.
The recommended approach is to build your code before running
auto so the window for errors stays small.
This may make sense on some platforms and not others.
Example: When using the
npmplugin don't use the script
prepublishOnlyto build your code
The one exception to this rule with when merging a bunch of PRs with
You still can't merge a PR that triggers a release and then merge a PR with
This will result in problem 3 from above.
1. Merge PR #4 "patch" 2. Merge PR #5 "skip-release" Result: #4 tries to push commits over #5 and fails
But you can merge a bunch of PRs with
skip-release then merge a PR that triggers a release.
1. Merge PR #4 "skip-release" 2. Merge PR #5 "skip-release" 3. Merge PR #7 "patch" Result: 1 "patch" released w/all PRs
skip-release is present no commits are made and the release is fine!