Create a new release
Run tests, check package, issue trackers, etc.
Commit any left over changes, update README.txt and setup.py
Build source release and pre-packaged releases:
cd biskit python setup.py sdist python setup.py bdist_rpm python setup.py bdist_wininst
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
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.
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.
Create a new release on sourceforge:
Log into SF account. Create new version-number folder in Files section, upload all files of the distribution.