Personal tools
You are here: Home / Documentation / Extending Biskit / Create a new release

Create a new release

This page describes how to create a new biskit release through the sourceforge file release mechanism. You need to be project administrator or 'release technician' to follow all the steps.
  1. Run tests, check package, issue trackers, etc.

  2. Commit any left over changes, update README.txt and setup.py

  3. Build source release and pre-packaged releases:

    cd biskit
    python setup.py sdist
    python setup.py bdist_rpm
    python setup.py bdist_wininst
    
  4. Create/update PyPi record

    Create .pypirc file with PyPi credentials (in home directory):

    [server-login]
    username:raik
    password:******** (the real one)
    

    Now rebuild and upload with distutils:

    python setup.py sdist upload
    
  5. Build Debian package (stdeb + distutils)

    Install stdeb python module:

    sudo apt-get install python-stdeb fakeroot devscripts dh-make
    

    Create temporary folder with the Biskit source package (generated before):

    mkdir biskit2deb
    cd biskit2deb
    cp ../dist/biskit*tar.gz .
    tar -xvf biskit*tar.gz
    

    Now use the stdeb extension + distutils to prepare packaging (Note: requires stdeb.cfg file same folder as setup.py):

    python setup.py --command-packages=stdeb.command sdist_dsc
    

    Verify content of debian packaging control files in:

    cd deb_dist/biskit-2.4.0/debian
    more control
    more copying
    

    Build debian package:

    dpkg-buildpackage -rfakeroot -uc -us
    

    The deb package can be found in:

    deb_dist/python-biskit_2.4.0-1_all.deb
    

    Note: more manual packaging with deb helper:

    See https://wiki.ubuntu.com/PackagingGuide/Python

    Rather than using stdeb to create Debian control folders, we can also use debhelper directly. This is not as convenient but gives us additional template files in debian/, for example, for mandatory man page files. Also, the stdeb is not completely adhering to Debian python policies, so a mix of the two will be needed if the package is to be submitted to Debian.

    To create a standard debian control folder:

    cd biskit2deb/biskit-2.4.0/
    dh_make -c gpl3 -i -p python-biskit -f ../biskit-2.4.tar.gz
    

    Then merge control files from the dh_make run back into the version generated by stdeb and continue with step 5.e.

  6. Tag the current status in the SVN repository

    This will later allow to check out or branch the cvs archive that corresponds to this release. Enter your working biskit folder (or check out a fresh working copy) and:

    cd biskit
    svn copy https://biskit.svn.sourceforge.net/svnroot/biskit/trunk \
         https://biskit.svn.sourceforge.net/svnroot/biskit/tags/release-2.2 \
         -m "Tagging the 2.2 release of biskit"
    

    The tagging migrates to the server without need to commit. Modified files in your local working copy don't matter.

  7. Create a new release on sourceforge:

    Log into SF account. Create new version-number folder in Files section, upload all files of the distribution.