- Check out a clean copy. Note that
cargo publish
packages up untracked files. Use--allow-dirty
at your peril. - Fetch from the main repo
- Ensure that the TensorFlow version is a real release, not a release candidate
- Update changelog.
- Bump version number of
tensorflow-sys
if necessary- Run
git log v${PREVIOUS_VERSION}..HEAD tensorflow-sys
and see if there were any changes. If not, skip. - Bump the version in
tensorflow-sys/Cargo.toml
- Bump the version for
tensorflow-sys
in the rootCargo.toml
- Run
- Bump the version number in
Cargo.toml
- Bump the version number in
README.md
- Run
./test-all
- Run
python examples/addition/addition.py
using the version of TensorFlow being linked against. (Use pip in a virtualenv, see https://www.tensorflow.org/install/pip#2-create-a-virtual-environment-recommended)- Run
virtualenv --system-site-packages -p python3 ~/tensorflow-${TENSORFLOW_VERSION}
- Run
source ~/tensorflow-${TENSORFLOW_VERSION}/bin/activate
to activate the virtualenv - Run
pip install --upgrade pip
- Run
pip install --upgrade tensorflow==${TENSORFLOW_VERSION}
- Run
python examples/addition/addition.py
- Run
deactivate
to exit the virtualenv
- Run
- Run
./run-valgrind
- Commit and push the changes. (Push before publishing to ensure that the changes being published are up to date.)
- If the version of tensorflow-sys was bumped, run
cargo publish
for tensorflow-sys. (Publish before tagging in case there are problems publishing and we need to add commits to fix them.) - Run
cargo publish
. (Publish before tagging in case there are problems publishing and we need to add commits to fix them.) - Add a
v${VERSION}
tag and push it - Run
./update-docs
- Announce the release to the mailing list
- Update version numbers of dependencies
- Remove any deprecated items scheduled to be removed