Abjad build checklist:

 1. Edit cfg/cfg.py and increment 'abjad_version_number'.

 2. Edit tools/cfgtools/get_abjad_version_string.py and change the
    version number string given in the docstring.

 3. Edit docs/conf.py and increment 'version' and 'release'.

 4. Run py.test. If any tests break, fix and repeat this step.

 5. Change to abjad/tools and run doctest. 
    If any tests break, fix and go back to (3.)

 6. Change to abjad/docs and run 'make clean'.
    (This step is important. Failing to 'make clean' before building
    the docs can cause the doc tarball made in step #18, below,
    to exceed 10 megs. PyPI rejects doc tarballs greater than
    10 megs on upload to PyPI.)

 7. Run make-abjad-api. If any errors, fix and go back to (3.)

 8. Run 'make latex'. If any errors, fix and go back to (3.)

 9. Change to docs/_build/latex and run 'make all-pdf'.
    If any errors, fix and go back to (3.)

10. Copy docs/_build/latex/Abjad.pdf to docs/pdf/Abjad-x.y.pdf.

11. Run 'svn rm docs/pdf/Abjad-x.(y-1).pdf' to remove the PDF
    of the previous version of the docs.

12. Add all newly created files to svn.

13. Commit.

14. Change to abjad/trunk.

15. Edit setup.py and increment the 'version' string found there.

16. Run 'python setup.py sdist'.
    If any errors, fix and go back to (3.)

17. Run 'python setup.py register sdist upload'
    Follow the login instructions provided by PyPI.
    (Important. There is a bug in setup.py identified on the Internet.
    After you first register with PyPI you must view ~/.pypirc
    and change the line '[pypi]' to '[server-login]'. If you do
    not do this then this step #15 will fail.)
    You must have Abjad package owner credentials for this step to work.

18. Remove 'dist' and 'Abjad-egginfo-x.y'.

19. Change to docs/_build/html and archive all 9 or 10 files and subdirectories therein.
    You must create a single archive of all 9 or 10 files.
    You must not simply archive the docs/_build/html folder.
    Name the archive Abjad-docs.tar.gz.

20. Log in to pypi.python.org with Abjad owner credentials and click on Abjad to edit.

21. etc.

    Remove docs/_build/html/Abjad-docs.tar.gz.
