Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Subject: Release plan - MXNET 0.11
WeI aream starting the process to prepare for MXNET $release release. WeI have drafted release notes ($link) to cover the tasks under this release.
A release candidate will be cut on $utc_date and voting will commence $utc_date_vote0 - $utc_date_vote1. If you have any additional features in progress and would like to include it in this release, please assure they have been merged by $utc_date-72 comment so weI may update the release notes.

...

  1. The release candidate should contain all planned features, bug fixes, and code changes above. The release candidate commit should have passed the merge build, pip builds, nightly tests. Docs should also be manually built locally & checked for correctness. TODO: how to retrieve the commit hash.
  2. Manual Docs Build - there are 3 jobs on internal jenkins that test install instructions. 

      Tag release candidate (To be done by a committer)

  1. Checkout the commit into a new branch "v#.#.#" and push it (It might be a good idea to do this in advance and freeze the branch)
  2. Go to the GitHub repo’s “releases” tab
  3. Click “Draft a new release”
      • Provide the release tag in the form of “v#“0.#12.#0.rc0” where 0 means it’s the first release candidate
      • Select the commit by clicking Target: branch > Recent commits > $commit_hashhash 
      • Copy and paste NEWS change into the description box
      • Select “This is a pre-release"
  1. (question)This step has not been done in the past - Tag all the dependent submodules for every MXNet release. If a code-change (e.g. bug-fix) is required to a dependent sub-module then we take a branch from the tag and apply the code-change only to the branch for the sub-module so that the change is minimal. This should allow the MXNet release process to have better convergence towards a stable release.

  2. Create artifacts for the release and push to the dist folder

...

      • Clone the Repo and checkout the release branchbranch 
      • remove R-package until the licensing issue is resolved
      • Remove all the .git files
      • Remove all other files of the form .* (eg .travis, .DS_Store etc)
      • on MacOS use gnu-tar
      • Try to untar it in a different type of machine and try a classic build with `make`. Follow build instructions in the "Build from Source" section http://mxnet.incubator.apache.org/get_started/install.html
Code Block
languagebash
titleCreating the src tar
linenumberstrue
git clone git@github.com:apache/incubator-mxnet.git --recursive apache-mxnet-src-0.1112.0.rc3rc0-incubating
git checkout v0.1112.0
git submodule update --init --recursive
git checkout 0.1112.0.rc3rc0
rm -rf R-package/*
rm -rf R-package
rm -rf .DS_Store
rm -rf .git*
brew install gnu-tar 
gtar -czvf apache-mxnet-src-0.11.0.rc3-incubating.tar.gz apache-mxnet-src-0.1112.0.rc3rc0-incubating

 

b) apache-mxnet-src-#.#.#.rc0-incubating.tar.gz.asc: 

...

e) Create a folder for this RC in the dist folder: 0.1112.0-incubating.RC0 folder 

Code Block
languagebash
titleUploading to dist
# Checkout the Apache directory in Apache distribution SVN "dev" repo
$ svn co https://dist.apache.org/repos/dist/dev/incubator/mxnet
# select p
# Make directory for this RC in the above directory
$ cd mxnet
$ mkdir #.#.#.rc0
# Move artifacts into this folder
$ cp ../apache-mxnet-src-#.#.#.rc0-incubating.tar.gz* #.#.#.rc0
$ svn add #.#.#.rc0
$ svn commit -m "Add mxnet-#.#.#.rc0" --username "lxn2"

Step 5. Validate release package (Committer or Contributer)

As per the Apache documentation, verify that the release candidate artifacts satisfy the following:

...