Creating a release

This describes how to create a release tarball for MoinMoin. It's of minor interest to anyone except ThomasWaldmann. :)

  1. find and fix any low hanging fruit left on the issue tracker
  2. check that Travis CI is happy
  3. make sure all issues for this milestone are closed or moved to the next milestone
  4. make install-docs interwiki
  5. update the CHANGES file, based on git log $PREVIOUS_RELEASE..

  6. check version number / release data of upcoming release in CHANGES file
  7. update version number in version.py and moin.spec, make sure there is no MoinMoin/patchlevel.py

  8. update the mig scripts to update data/meta file to the current version number
  9. make sure MANIFEST.in and setup.py is complete
  10. update PO files:

    cd MoinMoin/i18n
    PASS=xxx make update-po
  11. make underlay (on master, commit to repo)
  12. apply any pending fixes for security issues, update CHANGES file
  13. git clone moin moin-rel

    • touches all files so their mtime is current (maybe avoids trouble for people not using --force with setup.py)
    • only stuff in the repo is in moin-rel dir, no other crap
  14. Tag the release, e.g.: git tag -s -m "tagged/signed release X.Y.Z" X.Y.Z

  15. cd moin-rel ; make pagepacks ; make dist
  16. do some sanity checks on the release archive, fix as needed
  17. Update https://pypi.org/project/moin/ by using make dist-release

  18. Afterwards upload the tarball / signature that created to static.moinmo.in

  19. Create a Github release, include: pypi release file, signature, a link to CHANGES
  20. Announcements: MoinMarketing/WhereToAnnounce

  21. Close release milestone on Github.

MoinMoin: MoinDev/HowToRelease (last edited 2018-08-20 17:46:52 by ThomasWaldmann)