Building a release

From Biopython
Revision as of 13:38, 24 February 2012 by Peter (Talk | contribs)
Jump to: navigation, search

Build Biopython in 21 easy steps!!

These instructions are for a Unix machine, with a Windows machine also needed to test and prepare the Windows installers.

1. make sure I have the latest code

   drevil:~biopython> git pull origin master

2. bump version numbers:

  • Biopython version - edit Bio/
  • Biopython Tutorial - update the date/version line in the Doc/Tutorial.tex file
  • Make sure to commit the modified files to github.

3. make sure the README file is still up to date

4. add any important info to NEWS or DEPRECATED - you can get a log of recent git changes like this (adjust the date accordingly):

   git log --since="2009/08/30" --reverse --pretty="medium"

5. make sure CONTRIB still current

6. make sure is still up to date

  • Are there any new modules which should get installed?
  • You don't need to update version in itself (this is now done in Bio/ as described above)

7. do last check to make sure things are checked in

   > rm -r build
   > rm Tests/*.pyc
   > make clean -C Doc
   > git status

8. build Biopython and do last regression test

   drevil:~biopython> python build 
   drevil:~biopython> python test

Ideally do this with a clean checkout on your Windows machine too. Assuming you have setup your compilers etc appropriately just do this:

   C:\python25\python build
   C:\python25\python test
   C:\python25\python build
   C:\python25\python test
   C:\python27\python build
   C:\python27\python test

Running the tests simultaneously is risky, as two threads may both try and read/write to the same temp files.

9. check out clean version somewhere else

   drevil:~tmp1/> git clone git://
   drevil:~tmp1/> cd biopython

10. make documentation PDF, text and HTML files in Doc

   drevil:~biopython> cd Doc
   drevil:~biopython/Doc> make
   drevil:~biopython/Doc> make clean
   drevil:~biopython/Doc> cd ..

11. make MANIFEST. First, make sure up to date.

   > python sdist --manifest-only 

12. make the source distribution

   drevil:~tmp1/biopython> python sdist --formats=gztar,zip 

13. untar the file somewhere else

   drevil:~tmp2> tar -xzvf ../tmp1/biopython/dist/biopython-1.53.tar.gz
  • Check to make sure it includes the HTML and PDF files under Doc

14. make sure I can build and test it

   drevil:~tmp2/biopython-1.53/> python build
   drevil:~tmp2/biopython-1.53/> python test
   drevil:~tmp2/biopython-1.53/> python install --root . 

15. add git tag

   drevil:~biopython> git tag biopython-159
   drevil:~biopython> git push origin master --tags

16. Update API documentation using Epydoc.

  • Go to the /usr/local/lib/python2.6/site-packages (or equivalent) directory. Running epydoc in your git tree works, but can miss some packages due to import errors.
   epydoc -v -o ~/api -u -n Biopython --docformat plaintext Bio BioSQL
  • Move the generated ~/api directory to replace /home/websites/ on (aka

17. On your windows machine, build the Windows installers (either from a clean checkout, or the an unzipped copy of the source code bundle made earlier). Build the installers first, if you do a build/test/install before hand you seem to get a bloated setup exe. Assuming you have setup your compilers etc appropriately just do this:

   C:\python25\python bdist_wininst
   C:\python26\python bdist_wininst
   C:\python27\python bdist_wininst

18. Remove any prior Biopython installations on your windows machine, and confirm the Windows installers work.

19. scp or ftp the .tar.gz, .zip and Windows installer files to the Biopython website, folder /home/websites/ on (aka

20. Upload to the python package index:

   > python register sdist upload

You need to have a login on pypi and be registered with Biopython to be able to upload the new version.

21. Update the website and announce the release:

Personal tools