HowToRelease

Benjamin Gilbert edited this page Jun 6, 2016 · 22 revisions

OpenSlide

  1. Check Buildbot for build and test failures. Check all mosaics.
  2. Update CHANGELOG.txt, version in configure.ac and libtool -version-info in Makefile.am
  3. Create and push signed tag
  4. git clean -dxf && autoreconf -i && ./configure && make distcheck
  5. Attach release notes to GitHub release and upload tarballs
  6. Update openslide-winbuild
  7. Update website: _data/releases.yaml, _includes/news.markdown, api/
  8. Start a build of the demo site
  9. Send mail to -announce and -users
  10. Update Fedora package
  11. Update MacPorts package

OpenSlide Java

  1. Run test build and make distcheck
  2. Update CHANGELOG.txt and version in configure.ac
  3. Create and push signed tag
  4. git clean -dxf && autoreconf -i && ./configure && make distcheck
  5. Attach release notes to GitHub release, set pre-release flag, and upload tarballs
  6. Update openslide-winbuild
  7. Update website: _data/releases.yaml, _includes/news.markdown
  8. Send mail to -announce and -users

OpenSlide Python

  1. Update CHANGELOG.txt and version in openslide/_version.py
  2. Create and push signed tag
  3. Launch AppVeyor build
  4. git clean -dxf && mkdir dist
  5. Download wheels from each build job into dist directory
  6. python setup.py register sdist
  7. twine upload dist/*
  8. Recompress tarball with xz
  9. Attach release notes to GitHub release; upload tarballs and wheels
  10. python setup.py build_sphinx and copy build/sphinx/html/ to website api/python/
  11. Update website: _data/releases.yaml, _includes/news.markdown
  12. Send mail to -announce and -users
  13. Update Fedora package
  14. Update MacPorts package

openslide-winbuild

  1. Update software versions and push
  2. If releasing updated Windows binaries for an existing OpenSlide release, start wintest builds against the corresponding OpenSlide tag and wait for them to finish
  3. Start a winbuild-release build and wait for it to finish
  4. Download release artifacts from the zip links on the build's status page
  5. Test binaries with Wine
  6. Create and push signed tag
  7. Attach OpenSlide and OpenSlide Java versions to GitHub release; upload release artifacts
  8. Update website: _data/releases.yaml, maybe _includes/news.markdown
  9. Possibly send mail to -announce and -users