Skip to content
Randall J. LeVeque edited this page Jun 26, 2017 · 36 revisions

New instructions:

The instructions on on this wiki page are largely out of date.

See http://www.clawpack.org/howto_release.html for a newer version.

Release candidate procedure:

  • 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
    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.
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.

Proper release procedure:

  • 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

References: PyBayes release procedure