2. cloudportal.open-bio.org. You need to have write access to write the API and the source tarballs (might require 2 different operations).

+

2. biopython.org aka cloudportal.open-bio.org. You need to have write access to write the API and the source tarballs and Windows installers (might require 2 different operations) under the DIST folder.

3. Wordpress news.open-bio.org with posting permissions.

3. Wordpress news.open-bio.org with posting permissions.

Line 63:

Line 63:

−

If you are using MinGW, do not forget to add --compiler=mingw32 (or make it the default on distutils, see the step on building on windows machines). Also If you are using a modern MinGW compiler, then distutils of Python will use an option (-mno-cywgin) that is deprecated and will break gcc. A possible solution is to [http://bugs.python.org/issue12641 edit distutils]

+

If you are using MinGW, do not forget to add --compiler=mingw32 (or make it the default on distutils, see the step on building on windows machines). Also If you are using a modern MinGW compiler, then distutils of Python will use an option (-mno-cywgin) that is deprecated and will break gcc. A possible solution is to [http://bugs.python.org/issue12641 edit distutils], but on recent Python (3.3 as tested) this seems to have been addressed.

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

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

22. Ask Peter, Brad, or Bjoern to prepare a new Galaxy package on https://github.com/biopython/galaxy_packages and upload it to the main and test Galaxy ToolShed

+

+

23. Bump version numbers again

+

* Update Bio/__init__.py version

+

* Biopython Tutorial - update the date/version line in the Doc/Tutorial.tex file

+

* Make sure to commit the modified files to github.

+

+

Add a plus to the version to note that development is after the said version. E.g. if you have __version__ = "1.61", make it 1.61+

Revision as of 17:17, 20 February 2014

Build Biopython in 23 easy steps!!

Setup required for a new release manager

The instructions below require that you have access to a few servers and the code repository. When you start, be sure to have access to:

1. Write access to the github biopython repo.

2. biopython.org aka cloudportal.open-bio.org. You need to have write access to write the API and the source tarballs and Windows installers (might require 2 different operations) under the DIST folder.

3. Wordpress news.open-bio.org with posting permissions.

4. pypi - associated with Biopython.

5. Writing permissions on the wiki page.

If you don't have any of the above, please ask.

The instructions proper

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/__init__.py

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 setup.py is still up to date

Are there any new modules which should get installed?

You don't need to update version in setup.py itself (this is now done in Bio/__init__.py as described above)

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

C:\python26\python setup.py build
C:\python26\python setup.py test

C:\python27\python setup.py build
C:\python27\python setup.py test

C:\python33\python setup.py build
C:\python33\python setup.py test

If you are using MinGW, do not forget to add --compiler=mingw32 (or make it the default on distutils, see the step on building on windows machines). Also If you are using a modern MinGW compiler, then distutils of Python will use an option (-mno-cywgin) that is deprecated and will break gcc. A possible solution is to edit distutils, but on recent Python (3.3 as tested) this seems to have been addressed.

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

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:

If you are using MinGW, you will have to make distutils use it (it will use a MS compiler by default). Here (contrary to the build step) you cannot pass the compiler as a parameter. The best solution might be to configure distutils