Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Latest commit

 

History

History
87 lines (66 loc) · 3.61 KB

File metadata and controls

87 lines (66 loc) · 3.61 KB

kotlinx.coroutines release checklist

To release a new <version> of kotlinx-coroutines:

  1. Checkout the develop branch:
    git checkout develop

  2. Retrieve the most recent develop:
    git pull

  3. Make sure the master branch is fully merged into develop:
    git merge origin/master

  4. Search & replace <old-version> with <version> across the project files. Should replace in:

    As an alternative approach, you can use ./bump-version.sh new_version

  5. Write release notes in CHANGES.md:

    • Use the old releases for style guidance.
    • Write each change on a single line (don't wrap with CR).
    • Look through the commit messages since the previous release.
  6. Create the branch for this release:
    git checkout -b version-<version>

  7. Commit the updated files to the new version branch:
    git commit -a -m "Version <version>"

  8. Push the new version to GitHub:
    git push -u origin version-<version>

  9. Create a Pull-Request on GitHub from the version-<version> branch into master:

    • Review it.
    • Make sure it builds on CI.
    • Get approval for it.
  10. On TeamCity integration server:

    • Wait until "Build" configuration for committed version-<version> branch passes tests.
    • Run the Deployment/Deploy [RUN THIS ONE] configuration with the corresponding new version:
      • Use the version-<version> branch
      • Set the Version build parameter to <version>
  11. Wait until the corresponding Deployment/Upload Deployment to Central Portal build finishes. Check its Artifacts tab. It has to contain deployment_<version>.zip with the artifacts expected for kotlinx.coroutines. If it does, approve the corresponding Deployment/Publish deployment build and wait for it to finish.

  12. Merge the new version branch into master:
    git checkout master
    git merge --ff-only version-<version>
    git push

  13. In GitHub interface:

    • Create a release named <version>, creating the <version> tag.
    • Cut & paste lines from CHANGES.md into description.
  14. Announce the new release in Slack

  15. Switch onto the develop branch:
    git checkout develop

  16. Fetch the latest master:
    git fetch

  17. Merge the release from master:
    git merge origin/master

  18. Push the updates to GitHub:
    git push

  19. Propose the website documentation update: