
Here are some steps for making a new release of pygame.  So everyone knows what needs to be done to make a release work smoothly.


== release steps ==

*  declare next release as coming soon to developers, and mailing list.
*  declare feature freeze.
*  check with people on different platforms that tests are working.  
*  ask platform people to sign off for their platform building, and testing ok.  
*  WHATSNEW document is updated, with any changes.
   - hg log -r 'ancestors(default) - ancestors(release_1_9_1release)' 
*  declare tar ball set, by making a branch in hg with the pygame version as rc1.  eg 1.7.1.rc1
   - files to change version string: lib/version.py setup.py readme.html readme.rst
*  second round of testing goes on the new release branch.  If any changes need to be made, all platforms need to be tested again and signed off.  The pygame rc version is incremented and a new rc tar ball is released.  eg 1.7.1.rc2.
*  if no changes needed to be made to the rc release, then the version is changed.  eg from 1.7.1.rc1 to 1.7.1.release
*  a release tag is made.
   - hg tag release_1_9_1rc1
*  release person uploads final sources tarball to website.
*  documentation is remade, and uploaded to website, not before sources.
*  release binaries, not before sources.
*  announce to the mailing list, and the world that a new pygame is released.
*  the version of pygame is incremented by 1 and pre appended.  eg 1.7.1 goes to 1.7.2.dev
*  For a full description of Python version numbering standards see:
*  https://www.python.org/dev/peps/pep-0440/

== Some definitions and explanations. ==

release person := person who is in charge of doing release.  Should be one person.

platform people := people responsible for each platform.  eg macosx, windows, linux, freebsd etc.

testing pygame := at least all the examples run ok.  Also test major pygames, solarwolf, and pyddr work.  Try to run other gamelets, and games that you know of.  Try to test with different parts installed/uninstalled etc.

rc releases := these are release candidates.  If no changes need to be made, then the pygame version is changed and it can be released.

pre releases := these are snap shots from hg.

