Skip to content

Latest commit

 

History

History
42 lines (32 loc) · 2.67 KB

RELEASE_CHECKLIST.md

File metadata and controls

42 lines (32 loc) · 2.67 KB

Release checklist

This checklist should be worked through when releasing a new Serverless version.

More info about our release process can be found in the RELEASE_PROCESS.md document.

Pre-Release

  • Look through all open issues and PRs (if any) of that milestone and close them / move them to another milestone if still open
  • Create a new branch for the release
  • Bump version ranges of all dependencies to latest supported versions (e.g. if latest version of a dependency is 2.3.5, range in a package.json is ^2.2.4 then it should be updated to ^2.3.5)
    Note: Unfortunately there seems no reliable utility to automate that (there's a request at npm-check-updates)
    If you handle installation of dependencies through npm-cross-link then --bump-deps option will bump version ranges as expected
  • Bump the version number in package.json
  • Run ./scripts/prs-since-last-tag <OLD-TAG>
  • Save the terminal output to your clipboard
  • Close the milestone on GitHub
  • Create a new draft release in GitHub
    • Use the content in your clipboard as a description (without the heading)
    • Ensure that the "Tag version" follows our naming convention

Prepare Package

  • Install the latest npm version or Docker container with latest node and npm (Ensure to work with an npm version which is distributed with latest node version)
  • Update CHANGELOG.md with the content from your clipboard
  • Make sure all files that need to be pushed are included in package.json -> files
  • Commit your changes (make sure that package.json and CHANGELOG.md are updated)
  • Push your branch and open up a new PR
  • Await approval and merge the PR into master
  • Go back to the branch you want to release from (e.g. master) and pull the changes from GitHub
  • Make sure there are no local changes to your repository (or reset with git reset --hard HEAD)
  • Check package.json version config to make sure it fits what we want to release

Releasing

Validate Release

  • Validate that npm install works (npm install -g serverless@<new-tag> or npm install -g serverless if latest is released)