Skip to content

Latest commit

 

History

History
86 lines (55 loc) · 2.67 KB

RELEASE.md

File metadata and controls

86 lines (55 loc) · 2.67 KB

Release process

  1. Generate a new version using:

    yarn release:version

    This command will bump the version in every package of the project.

  2. Generate the changelog using:

    yarn release:changelog

    Running this command requires a GitHub personal access token with the public_repo scope.

    Set GITHUB_TOKEN variable in .env file so to avoid passing it with command every time

    OR

    pass token with argument --githubToken YOUR_TOKEN

  3. Copy the generated changelog from the console, clean it up, add a short summary of the release highlights and use the new version number as the title.

    Writing good highlights:

    • Focus on new user facing features or changes
    • Be concise, link to relevant documentation for extra clarity
  4. Prepend the changelog to CHANGELOG.md.

  5. Open a PR to the master branch with the proposed changes. Add the "release" label.

  6. Smoke test the release with the CodeSandbox CI package of the PR branch:

    1. Run
    npx https://pkg.csb.dev/mui/mui-toolpad/commit/<build>/create-toolpad-app smoke
    cd smoke
    yarn add https://pkg.csb.dev/mui/mui-toolpad/commit/<build>/@mui/toolpad -S
    yarn && yarn dev

    And verify the editor works

  7. Merge the PR changes, then check out the master branch and pull the last commit.

  8. Publish the package to npm

    1. If you are not logged in to npm in your CLI, first log in with:

      npm login
    2. Publish to npm

      yarn release:publish

      If you've created a prerelease, then instead use

      yarn release:publish-canary
  9. Publish the documentation. The documentation must be updated on the docs-latest branch.

    git push upstream master:docs-latest -f

    You can follow the deployment process on the Netlify Dashboard. Once deployed, it will be accessible at https://mui-toolpad-docs.netlify.app/.

  10. Create a new GitHub release.

    1. Use <version number> to Choose a tag (when you enter new version GH UI will pop a suggestion Create new tag: *** on publish)
    2. Use <commit of merged PR> as the target
    3. Use the cleaned changelog as the content of Describe this release
    4. Use <version number> as the Release title
    5. Mark as prerelease if necessary.
    6. Publish release