16 Release checklist
Reuben Morais редактировал(а) эту страницу 2020-05-26 10:05:23 +02:00
  • Create release branch in https://github.com/mozilla/DeepSpeech-examples
    • Uplift new examples and modifications in latest stable branch into master
    • Make any modifications necessary for compatibility with new DS version
    • Branch from master into new release branch (e.g. r0.8 for DS v0.8.x, or r1.0 for DS v1.0.x)
  • Create release branch in https://github.com/mozilla/DeepSpeech
    • Branch from master into new release branch (e.g. r0.8 for DS v0.8.x, or r1.0 for DS v1.0.x)

    • Push new branch with no extra commits to GitHub

    • Create a local branch based on the branch created above

    • Change .taskcluster.yml and taskcluster/github-events.cyml to reference the new branch instead of master

    • Change EXAMPLES_CHECKOUT_TARGET in taskcluster/win-opt-base.tyml and examples-base.tyml to checkout the new release branch instead of master

      $ cd DeepSpeech
      $ git checkout master && git pull
      $ git checkout -b r0.8
      $ git push origin r0.8
      $ git checkout -b add-r0.8
      $ for i in .taskcluster.yml taskcluster/github-events.cyml; do sed -i.bak -e 's/- master/- r0.8/' $i; done
      $ git add .taskcluster.yml taskcluster/github-events.cyml
      $ git commit -m "Switch CI to r0.8"
      $ git push origin add-r0.8
      
    • Make a PR into the release branch with above changes and make sure CI works

    • Merge PR into new release branch

    • Make a new alpha tag to test tag CI

  • Update release notes in draft release
  • Update hyperparameters in draft release
  • Update contributor list in draft release
  • Package and upload checkpoint, models, and audio examples
    • Remember to include alphabet.txt in checkpoint package, as it's no longer needed for the models
    • If packaging from a best_dev checkpoint, cp best_dev_checkpoint checkpoint to avoid problems when loading the checkpoint from code that doesn't handle the separate checkpoint/best_dev_checkpoint logic
  • Upload models somewhere else (e.g. personal fork release) and link prod model tests and examples tests to new URLs
  • Update all references to previous release in documentation
  • Bump VERSION file to new version, make PR.
  • Merge PR bumping VERSION file, pull changes locally, tag new version on the merge commit
  • Push the tag (git push origin {tag_name})
  • Publish the draft release pointing to the existing tag
  • Monitor task group created from the tag to make sure everything is built and published
  • Manually check package repositories after publish is complete
  • Check that new version is the default on https://deepspeech.readthedocs.io/
  • Make the new version the default on https://github.com/mozilla/DeepSpeech-examples