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

Re: Help needed for python-biopython which splits up modules into two packages per Python version



[Andreas Tille, 2014-03-04]
> I tried to work on python-biopython which according to authors request
> supports also Python3 and so I tried to put this into the packaging at
> 
>    svn://anonscm.debian.org/debian-med/trunk/packages/python-biopython/trunk/

^ this one is not anonymous, this one is:

  svn://anonscm.debian.org/svn/debian-med/trunk/packages/python-biopython/trunk/

(which is weird, I was sure it's the other way around)

> The problem is that I seem to have messed up the debian/*.install files
> in a way that Python2 packages will be moved to the python3 package and
> the other way around - but I have no idea why.  I seem to need those
> install files since the other method to simply put
> 
>   export PYBUILD_DESTDIR_python2=debian/python-biopython/
>   export PYBUILD_DESTDIR_python3=debian/python3-biopython/

FTR: this requires less typing:

  export PYBUILD_NAME=biopython

anyway, you cannot mix .install files and pybuild's DESTDIR, dh_install
will not find files already installed in the final location AFAIR

> into debian/rules does not separate the Bio module from BioSQL (and I
> have no idea how to do this properly).

you can force pybuild to move BioSQL files to a different location
(hint: --ext-dest-dir & --ext-pattern or equivalent PYBUILD_* vars)
but IMO it's cleaner to use *.install files for that

[...]
>   2. Tests are not run.  Log just says
> 
>    dh_auto_test -O--buildsystem=pybuild
>         pybuild --test -i python{version} -p 2.7 --dir .
> I: pybuild base:170: cd /tmp/buildd/python-biopython-1.63/.pybuild/pythonX.Y_2.7/build; python2.7 -m unittest discover -v

another pybuild example (without magic PYBUILD_* vars this time):

 override_dh_auto_test:
        dh_auto_test -- --test --system=custom --test-args='env PYTHONPATH={build_dir} {interpreter} setup.py test'

(pybuild didn't detect that it should simply invoke setup.py's test
because "test_suite" is not declared in setup.py. Standards... eh, why
there are some many of them in Python distutils world?)


PS please add "X-Python-Version: >= 3.3" in debian/control, this module
   doesn't work with 3.2
-- 
Piotr Ożarowski                         Debian GNU/Linux Developer
www.ozarowski.pl          www.griffith.cc           www.debian.org
GPG Fingerprint: 1D2F A898 58DA AF62 1786 2DF7 AEF6 F1A2 A745 7645


Reply to: