[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Advise on packaging a new Python module



* Tomás Di Domenico <tdido@tdido.com.ar>, 2012-11-04, 15:43:
I've recently joined the Debian Med team, and am currently trying to package my first project, the CSB bioinformatics toolbox [1]. CSB is similar to the already packaged Biopython group of modules, but dealing exclusively with the structural side of bioinformatics. This is the reason why it seemed like a project for the Med team.

I have already set up the package in a git repository [2], and it seems to be in pretty good shape, according to Andreas Tille, my mentor. Laszlo Kajan, a member of the Med team, advised me to ask for help to the Python team, and particularly to Jakub Wilk, who's helped him in the past. His suggestion is that if the module is acceptable, it may be worth it to have the maintainer changed from the Med team to the Python team.

I feel like I've been just called to the blackboard. ;)

[2] http://anonscm.debian.org/gitweb/?p=debian-med/python-csb.git

I didn't play with the package for very long, because I couldn't build the source package. It looks like contents of the repository didn't match contents of the upstream tarball (which I downloaded with uscan), making dpkg-source abort due to upstream changes. The diff between the two is huge (664 files changed, 27972 insertions, 21422 deletions); it contains e.g.:

-__version__ = '1.1.0.463'
+__version__ = '1.1.0.507'

Did upstream release a new version without changing tarball name? :(

This package requires Python >= 2.6, and since 2.5 is a supported version in squeeze, so this should be declared in debian/control. Please add:
X-Python-Version: >= 2.6
to the source paragraph.

To be pedantically correct, build-dependency on python-all should be versioned: >= 2.6.6-3~ (see dh_python2 manpage).

Current standards version is 3.9.4. Note that lintian doesn't know it yet, so you'll have to live with a spurious warning. The new Policy version made build-arch and build-indep targets mandatory; dh support for these targets was implemented in debhelper 8.1.0, so don't forget to bump the build-dependency. It looks like upstream supports Python 3.X. You may consider supporting it in Debian, too. If you choose to do so, please build a separate binary package python3-csb. Beware that dh doesn't support building/installing Python 3.X modules, so you would have to write the code yourself.

I would advise you against using a more restrictive license for debian/* that upstream uses, like you currently do.

--
Jakub Wilk


Reply to: