From 55c9f5ceee2ceec21d722bc1d5501b1efd602480 Mon Sep 17 00:00:00 2001 From: Ashley Williams Date: Fri, 12 Apr 2019 16:21:22 -0500 Subject: [PATCH 1/2] doc(release): add release checklist --- RELEASE_CHECKLIST.md | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 RELEASE_CHECKLIST.md diff --git a/RELEASE_CHECKLIST.md b/RELEASE_CHECKLIST.md new file mode 100644 index 00000000..677fd4e6 --- /dev/null +++ b/RELEASE_CHECKLIST.md @@ -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 + 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. +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`. +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. +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. From b0ec2ade832053460a3b846bf37c6670b6399c45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jesper=20H=C3=A5kansson?= Date: Mon, 15 Apr 2019 13:22:50 -0500 Subject: [PATCH 2/2] Update RELEASE_CHECKLIST.md Co-Authored-By: ashleygwilliams --- RELEASE_CHECKLIST.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/RELEASE_CHECKLIST.md b/RELEASE_CHECKLIST.md index 677fd4e6..4f386247 100644 --- a/RELEASE_CHECKLIST.md +++ b/RELEASE_CHECKLIST.md @@ -16,7 +16,7 @@ This is a list of the things that need to happen during a release. 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. + entries. 1. Update the version in `Cargo.toml`. 1. Update the version number and date in `docs/index.html`. 1. Run `cargo update`.