diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..6f5aa45 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,9 @@ +## Description + + + +## Checklist + +- [ ] This PR targets the `rc` branch (**not** `master`). +- [ ] [If this should release a new version to PyPI when merged] The title of the PR follows the [Angular Conventional Commit](https://www.conventionalcommits.org/) syntax (`feat:` or `fix:`, with `BREAKING CHANGE:` in the commit message body if appropriate), and clearly describes the fix or feature. +- [ ] Documentation is updated (`README.md` and docstrings). diff --git a/README.md b/README.md index 97d62bc..cd21f28 100644 --- a/README.md +++ b/README.md @@ -498,6 +498,16 @@ protoc \ - [x] Automate running tests - [ ] Cleanup! + +## Release + +New versions are versioned and released using [Semantic Release](https://github.com/semantic-release/semantic-release). When new commits +using the Angular Conventional Commits syntax land on `master` or `rc`, those commits are used to determine what new version to release. + +All Pull Requests must target the `rc` branch; when merged into `rc` they will publish new release candidate (`rc`) versions to PyPI +automatically. When maintainers want to publish a new full release, they simply merge `rc` into `master`. This flow ensures that features +and fixes are published quickly and continuously rather than awaiting a manual release process. + ## Community Join us on [Slack](https://join.slack.com/t/betterproto/shared_invite/zt-f0n0uolx-iN8gBNrkPxtKHTLpG3o1OQ)!