Release procedure
Randall J. LeVeque edited this page Jun 26, 2017
·
36 revisions
The instructions on on this wiki page are largely out of date.
See http://www.clawpack.org/howto_release.html for a newer version.
- Make sure that clawpack/clawpack points to the latest master intended for release on each of the submodules and that tests pass.
- Release notes: to be placed on the wiki and distributed to mailing lists
- Edit changelog in pyclaw/changes.md (Extended annotated review of major pull requests and commits)
- Update/commit version number in clawpack/setup.py, remove all others
vim setup.py
MAJOR = 5
MINOR = 0
MICRO = 0
TYPE = 'rc-alpha'
git add setup.py
git commit
- Update version number in doc/doc/conf.py
cd doc/doc
vim conf.py
version = 5.0
release = 5.0.0rc-alpha
save conf.py
git add conf.py
git commit
- Rebuild docs and galleries and upload to clawpack.github.com
cd clawpack/doc/doc/pyclaw/gallery
python make_plots.py
python gallery.py
cd ../..
make html
bash rsync_clawpack.github.sh
- Upload documentation to GitHub. See also http://clawpack.github.io/doc/howto_doc.html
cd clawpack/clawpack.github.com
git commit -a
git push
- Tag commit to match version number in setup.py
cd clawpack
git tag -a 5.0.0rc-alpha
git push --tags upstream # note: must push directly to clawpack on github, not to your fork
- Roll tarball and any other formats
# brew install git-archive-all
cd $CLAW
git-archive-all --prefix clawpack-5.0.0rc/ clawpack-5.0.0rc.tar
gzip clawpack-5.0.0rc.tar
- Upload tarballs/binaries to GitHub
https://github.com/clawpack/clawpack/releases
Drag and drop tar.gz file.
-
Update download URL under "full install" at http://clawpack.github.io/doc/installing.html.
-
Update PyPI
git checkout -b 5.0.x
git add setup.py
git push clawpack 5.0.x:5.0.x
python setup.py register
Note: do NOT use twine or "setup.py upload" to upload to Pypi. You need to go to the Pypi website and manually upload the tarball.
-
Upload file: https://pypi.python.org/pypi?name=clawpack&version=5.2.0&:action=files
-
Announce to claw-dev
-
Close any issues that arise
-
Repeat until issues stop arising
- Tag each repository with v5.0.0 and push to upstream:
git co master
git pull
git tag v5.0.0
git push --tags upstream
- Update change logs in the doc/doc directory following the suggestions at https://github.com/clawpack/doc/pull/57.
- Roll conda, hashdist, other installers
- Announce release notes to claw-users
References: PyBayes release procedure