Closed flux627 closed 5 years ago
Another hacky way would be to create a GitHub release, then delete the release. This keeps the tag, so it's effectively the same as creating the tag local and pushing it up. This is unfortunately the only way to create a tag from GitHub (without a release).
I don't see a problem with option 3, even a minor revision is a release. The question comes in is if we believe the minor version has a change significant enough to benefit developers. If a minor release fixes a bug (e.g. retries) then as a dev following releases I'd want to know that was in. If a minor release updates documentation or does some code refactoring then there's little to no benefit in releasing.
I don't feel confident approving this but I added @masaka3620 and @jeffreyssmith2nd as requested reviewers.
Another option could be to have the release update the package.json with the new version. We currently do that with eosjs. That might avoid some of the problems you mentioned and also lets you create draft releases with early notes if you want to go that route.
@masaka3620 I thought about that, and chose this path because it puts the version upgrade in the peer-reviewed PR process. This way, any version that's released was signed off by at least one other person. If you attempt to release a version that's not the same as the package.json, it fails.
How this currently works:
The only problem as of right now is that minor releases might not need release notes. In that case, after step 2, you must tag the head of master locally, and then push it up. This will trigger the publish on Travis. If we end up not liking this, here are some ideas for how we can improve it: