-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document automated release process #154
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -173,9 +173,27 @@ both high-quality and timely. | |
|
||
Finally, if nothing brings you more satisfaction than seeing every last issue | ||
labeled and all resolved issues closed, feel free to message any Eyre Circle | ||
Member (currently @yaahc) for the triage role to help us keep things tidy. This | ||
Member (currently @yaahc and @ten3roberts) for the triage role to help us keep things tidy. This | ||
role only requires good faith and a basic understanding of our development | ||
process. | ||
|
||
[Discord]: https://discord.gg/z94RqmUTKB | ||
[^1]: Okay, I'll admit it, it's really just the Rust Project's CoC :sweat_smile: | ||
|
||
# Release Process | ||
|
||
The `master` branch contains all the latest changes and is considered unstable. | ||
|
||
For each bugfix and non-breaking change, the relevant commits are cherry-picked to relevant stable release branches, | ||
denoted by `releas-<major>.<minor>`. A new version is then published from each of the relevant stable release branches. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. s/releas/release |
||
|
||
Change logs are maintained on the `master` branch in the `CHANGELOG.md` file. Updating the changelog as part of a PR is | ||
highly encouraged, but not strictly required. The changelog *should not* be maintained on the stable release branches or | ||
in the release commits, as this leads to them not being visible on the `master` branch. | ||
Comment on lines
+191
to
+192
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Could you please explain in more detail what you mean by "The changelog should not be maintained on the stable release branches or in the release commits, as this leads to them not being visible on the It's more important for users to have a changelog for releases than to have a changelog for master. An automated changelog for releases would be fine if we can get that working. |
||
|
||
## Publishing a new release | ||
- Cherry pick the relevant commits to the relevant stable release branches | ||
- Checkout the stable release branch, e.g. `release-0.6` | ||
- Run `cargo release <version>` to publish a new release | ||
- This will publish to `crates.io`, and create a new tagged git commit on the release branch, which is subsequently pushed to the remote. | ||
[ WIP ] workspace wide release, pending #110 (color-eyre inclusion) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can always refine this, but we need something out now and ensure that releases go smoothly and don't drop commits