Skip to content
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

doc(release): add release checklist #626

Merged
merged 2 commits into from
Apr 15, 2019
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions RELEASE_CHECKLIST.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Release Checklist

This is a list of the things that need to happen during a release.

1. Open the associated milestone. All issues and PRs should be closed. If
they are not you should reassign all open issues and PRs to future
milestones.
1. Go through the commit history since last release. Ensure that all PRs
that have landed are marked with the milestone. You can use this to
show all the PRs that are merged on or after YYY-MM-DD:
`https://github.com/issues?utf8=%E2%9C%93&q=repo%3Arustwasm%2Fwasm-pack+merged%3A%3E%3DYYYY-MM-DD`
1. Go through the closed PRs in the milestone. Each should have a changelog
label indicating if the change is docs, fix, feature, or maintenance. If
there is a missing label, please add one.
1. Choose an emoji for the release. Try to make it some sort of transition
drager marked this conversation as resolved.
Show resolved Hide resolved
from the previous releases emoji (point releases can be a little weirder).
1. Create a new branch "#.#.#" where "#.#.#" is the release's version.
1. Add this release to the `CHANGELOG.md`. Use the structure of previous
entires.
ashleygwilliams marked this conversation as resolved.
Show resolved Hide resolved
1. Update the version in `Cargo.toml`.
1. Update the version number and date in `docs/index.html`.
1. Run `cargo update`.
1. Run `cargo test`.
1. Run `cargo build`.
ashleygwilliams marked this conversation as resolved.
Show resolved Hide resolved
1. Push up a commit with the `Cargo.toml`, `Cargo.lock`, `docs/index.html`,
and `CHANGELOG.md` changes. The commit message can just be "#.#.#".
1. Request review from `@ashleygwilliams` and `@drager`.
1. `git commit --amend` all changes into the single commit.
ashleygwilliams marked this conversation as resolved.
Show resolved Hide resolved
1. Once ready to merge, tag the commit with the tag `v#.#.#`.
1. Wait for the CI to go green.
1. The CI will build the release binaries. Take the `CHANGELOG.md` release
entry and cut and paste it into the release body.
1. Be sure to add any missing link definitions to the release.
1. Hit the big green Merge button.
1. `git checkout master` and `git pull --rebase origin master`
1. Run `cargo test`.
1. `cargo publish`
1. Tweet.