[Debian-med-packaging] Bug#936609: Ported ghmm to Python3 but issues with clapack (Was: Bug#936609: ghmm: Python2 removal in sid/bullseye)

Alexander Schliep alexander at schlieplab.org
Tue Oct 29 08:27:23 GMT 2019


Dear Andreas,

thanks for the work. I have had the looming Python 2.7 demise on my radar for a long time, but as typical in academic environments always too much on my plate.

Gato provides the basis for the graphical editor HMMEd, so it is *not* necessary to run ghmm either from C or Python.

- I started to port Gato to Python 3.x and can ping you when I am done

- I will incorporate your patches 

- Lapack: No idea, but it looks like a GSL issue? Or maybe our use of GSL

Best,
Alexander

PS: I’ll also update contact information –  alexander at schlieplab.org is my permanent work email.


> On 11 Sep 2019, at 17:34, Andreas Tille <andreas at an3as.eu> wrote:
> 
> Control: tags -1 pending, help
> 
> Hi,
> 
> as you can read below Python2 is EOL.  The Debian Med team has packaged
> ghmm for Debian and craftet a Python3 patch which you could use (and
> possibly test more deeply than we did).
> 
>   https://salsa.debian.org/med-team/ghmm/blob/master/debian/patches/2to3.patch
> 
> When trying HMMEd I've got
> 
>   ModuleNotFoundError: No module named 'Gato'
> 
> but in setup.py I read only a comment:
> 
>   #requires   = ['GATO', 'ghmm'],
> 
> Could you please clarify whether http://gato.sf.net is really needed
> to run ghmm in full functionality?  The other tools (ghmm-cluster,
> ghmm-config, probdist, scluster, smix_hmm) are all issuing
> 
>   ... is obsolete. If you need it rebuild the GHMM with "GHMM_OBSOLETE".
> 
> 
> Finally I have a question about building with lapack.  I get:
> 
> ...
> libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I.. -I.. -Wdate-time -D_FORTIFY_SOURCE=2 -DDTD_LOC=\"/usr/share/ghmm/ghmm.dtd.1.0\" -g -O2 "-fdebug-prefix-map=/build/ghmm-0.9~rc3=." -fstack-protector-strong -      Wformat -Werror=format-security -I/usr/include -I/usr/include/x86_64-linux-gnu -I/usr/include/libxml2 -c rng.c  -fPIC -DPIC -o .libs/rng.o
> In file included from /usr/include/x86_64-linux-gnu/clapack.h:4,
>                 from matrixop.c:48:
> /usr/include/x86_64-linux-gnu/cblas.h:5:9: error: nested redefinition of 'enum CBLAS_ORDER'
>    5 |    enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102 };
>      |         ^~~~~~~~~~~
> /usr/include/x86_64-linux-gnu/cblas.h:5:9: error: redeclaration of 'enum CBLAS_ORDER'
> In file included from /usr/include/gsl/gsl_blas_types.h:28,
>                 from /usr/include/gsl/gsl_blas.h:29,
>                 from /usr/include/gsl/gsl_linalg.h:30,
>                 from matrixop.c:44:
> /usr/include/gsl/gsl_cblas.h:46:6: note: originally defined here
>   46 | enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102};
>      |      ^~~~~~~~~~~
> In file included from /usr/include/x86_64-linux-gnu/clapack.h:4,
>                 from matrixop.c:48:
> /usr/include/x86_64-linux-gnu/cblas.h:5:22: error: redeclaration of enumerator 'CblasRowMajor'
>    5 |    enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102 };
>      |                      ^~~~~~~~~~~~~
> In file included from /usr/include/gsl/gsl_blas_types.h:28,
>                 from /usr/include/gsl/gsl_blas.h:29,
>                 from /usr/include/gsl/gsl_linalg.h:30,
>                 from matrixop.c:44:
> /usr/include/gsl/gsl_cblas.h:46:19: note: previous definition of 'CblasRowMajor' was here
>   46 | enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102};
>      |                   ^~~~~~~~~~~~~
> In file included from /usr/include/x86_64-linux-gnu/clapack.h:4,
>                 from matrixop.c:48:
> /usr/include/x86_64-linux-gnu/cblas.h:5:41: error: redeclaration of enumerator 'CblasColMajor'
>    5 |    enum CBLAS_ORDER {CblasRowMajor=101, CblasColMajor=102 };
>      |                                         ^~~~~~~~~~~~~
> 
> 
> Do you have any idea how to fix this?  I could just build without lapack
> to get ghmm working but I'd consider it a good idea to gain performance
> for our users.
> 
> Kind regards
> 
>      Andreas.
> 
> 
> On Fri, Aug 30, 2019 at 07:18:48AM +0000, Matthias Klose wrote:
>> Package: src:ghmm
>> Version: 0.9~rc3-2
>> Severity: normal
>> Tags: sid bullseye
>> User: debian-python at lists.debian.org
>> Usertags: py2removal
>> 
>> Python2 becomes end-of-live upstream, and Debian aims to remove
>> Python2 from the distribution, as discussed in
>> https://lists.debian.org/debian-python/2019/07/msg00080.html
>> 
>> Your package either build-depends, depends on Python2, or uses Python2
>> in the autopkg tests.  Please stop using Python2, and fix this issue
>> by one of the following actions.
>> 
>> - Convert your Package to Python3. This is the preferred option.  In
>>  case you are providing a Python module foo, please consider dropping
>>  the python-foo package, and only build a python3-foo package.  Please
>>  don't drop Python2 modules, which still have reverse dependencies,
>>  just document them.
>> 
>>  This is the preferred option.
>> 
>> - If the package is dead upstream, cannot be converted or maintained
>>  in Debian, it should be removed from the distribution.  If the
>>  package still has reverse dependencies, raise the severity to
>>  "serious" and document the reverse dependencies with the BTS affects
>>  command.  If the package has no reverse dependencies, confirm that
>>  the package can be removed, reassign this issue to ftp.debian.org,
>>  make sure that the bug priority is set to normal and retitle the
>>  issue to "RM: PKG -- removal triggered by the Python2 removal".
>> 
>> - If the package has still many users (popcon >= 300), or is needed to
>>  build another package which cannot be removed, document that by
>>  adding the "py2keep" user tag (not replacing the py2remove tag),
>>  using the debian-python at lists.debian.org user.  Also any
>>  dependencies on an unversioned python package (python, python-dev)
>>  must not be used, same with the python shebang.  These have to be
>>  replaced by python2/python2.7 dependencies and shebang.
>> 
>>  This is the least preferred option.
>> 
>> If the conversion or removal needs action on another package first,
>> please document the blocking by using the BTS affects command, like
>> 
>>  affects <bug number of blocking py2removal bug> + src:ghmm
>> 
>> If there is no py2removal bug for that reverse-dependency, please file
>> a bug on this package (similar to this bug report).
>> 
>> If there are questions, please refer to the wiki page for the removal:
>> https://wiki.debian.org/Python/2Removal, or ask for help on IRC
>> #debian-python, or the debian-python at lists.debian.org mailing list.
>> 
>> _______________________________________________
>> Debian-med-packaging mailing list
>> Debian-med-packaging at alioth-lists.debian.net
>> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-med-packaging
> 
> -- 
> http://fam-tille.de



--
Dr. Alexander Schliep, Associate Professor
Data Science & AI Division, http://dsai.se,  Computer Science & Engineering, Göteborgs Universitet | Chalmers 
alexander at schlieplab.org <mailto:alexander at schlieplab.org>, Lab: https://schlieplab <http://schlieplab/>.org   Tel: +46 76-608 69 63


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-packaging/attachments/20191029/3299570f/attachment-0001.html>


More information about the Debian-med-packaging mailing list