Skip to content

Latest commit

 

History

History
46 lines (44 loc) · 2.32 KB

RELEASE_CHECKLIST.md

File metadata and controls

46 lines (44 loc) · 2.32 KB

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.
  2. 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
  3. 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.
  4. 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).
  5. Create a new branch "#.#.#" where "#.#.#" is the release's version.
  6. Add this release to the CHANGELOG.md. Use the structure of previous entries.
  7. Update DEFAULT_CHROMEDRIVER_VERSION in chromedriver.rs. Version is the response of https://chromedriver.storage.googleapis.com/LATEST_RELEASE.
  8. Update DEFAULT_GECKODRIVER_VERSION in geckodriver.rs. Version is the name of the latest tag - https://github.com/mozilla/geckodriver/releases/latest.
  9. Update the version in Cargo.toml.
  10. Update the version number and date in docs/index.html.
  11. Run cargo update.
  12. Run cargo test.
  13. Run cargo build.
  14. Copy README.md to npm/README.md
  15. Bump the version number in npm/package.json
  16. cd npm && npm install
  17. Push up a commit with the Cargo.toml, Cargo.lock, docs/index.html, and CHANGELOG.md changes. The commit message can just be "#.#.#".
  18. Request review from @ashleygwilliams and @drager.
  19. git commit --amend all changes into the single commit.
  20. Once ready to merge, tag the commit with the tag v#.#.#.
  21. Wait for the CI to go green.
  22. The CI will build the release binaries. Take the CHANGELOG.md release entry and cut and paste it into the release body.
  23. Be sure to add any missing link definitions to the release.
  24. Hit the big green Merge button.
  25. git checkout master and git pull --rebase origin master
  26. Run cargo test.
  27. cargo publish
  28. cd npm && npm publish
  29. Tweet.