[Debian-med-packaging] Bug#854837: Package dicompyler does not work

Andreas Tille andreas at fam-tille.de
Sat Feb 18 07:34:17 UTC 2017


Hi Vojtech,

I followed your hint and commited the following change to the packaging
SVN:

Index: changelog
===================================================================
--- changelog   (Revision 23672)
+++ changelog   (Arbeitskopie)
@@ -1,3 +1,11 @@
+dicompyler (0.4.2-4) UNRELEASED; urgency=medium
+
+  * Fix Open Patient dialog (Thanks for the patch to Vojtech Kulvait
+    <kulvait at gmail.com>)
+    may be close: #854837
+
+ -- Andreas Tille <tille at debian.org>  Sat, 18 Feb 2017 08:11:47 +0100
+
 dicompyler (0.4.2-3) unstable; urgency=medium
 
   * Fix title of citation
Index: patches/fix_DicomImporterDialog.patch
===================================================================
--- patches/fix_DicomImporterDialog.patch       (nicht existent)
+++ patches/fix_DicomImporterDialog.patch       (Arbeitskopie)
@@ -0,0 +1,16 @@
+Author: Vojtech Kulvait <kulvait at gmail.com>
+Last-Update: Tue, 14 Feb 2017 14:18:44 +0100
+Bug-Debian: https://bugs.debian.org/854837
+Description: Fix Open Patient dialog
+
+--- a/dicompyler/dicomgui.py
++++ b/dicompyler/dicomgui.py
+@@ -50,6 +50,8 @@ class DicomImporterDialog(wx.Dialog):
+         pre = wx.PreDialog()
+         # the Create step is done by XRC.
+         self.PostCreate(pre)
++        self.path = "/tmp"
++        self.import_location_setting = "Remember Last Used"
+ 
+     def Init(self, res):
+         """Method called after the panel has been initialized."""

My question is now: Is this according to your opinion an appropriate
fix for your problem and has dicompyler now some value for the user?

As I said I can not do any sensible test since I have no data files
and need your confirmation.

Thanks a lot for the patch

     Andreas.

On Tue, Feb 14, 2017 at 02:18:44PM +0100, Vojtech Kulvait wrote:
> Whoewer will be solving this issue. Quick fix should be to edit
> /usr/share/dicompyler/dicompyler/dicomgui.py such that after the line 46
> there will be edit adding these two lines
> 
> 
> class DicomImporterDialog(wx.Dialog):
>     """Import DICOM RT files and return a dictionary of data."""
> 
>     def __init__(self):
>         pre = wx.PreDialog()
>         # the Create step is done by XRC.
>         self.PostCreate(pre)
> 
> 
> 
> *    path = "/tmp"    import_location_setting = "Remember Last Used"*
> 
>     def Init(self, res):
> 
> 
> After doing that program seems to be able to read RT data and even seem to
> be importing them. However the program is unable to show these data,
> without warnings or errors in the console.
> 
> Vojtech.
> 
> 
> 
> 2017-02-12 22:51 GMT+01:00 Andreas Tille <andreas at an3as.eu>:
> 
> > tags 854837 help
> > severity 854837 grave
> > thanks
> >
> > I can confirm Vojtech's observation that "Open patient" button throws
> > this exception.  I've tagged this bug "help", raised its severity to
> > grave and added upstream developer in CC.  As I said there are no
> > commits on Github for quite some time and there are several open issues
> > which report about disfunctionality.  I have some slight hope that
> > somebody from the Debian team might pick up this issue since it seems to
> > be reproducible.  If it turns out that it can not be fixed until the
> > next release we will not distribute this package inside the next stable
> > release.
> >
> > Thanks for the bug report and sorry for not beeing more helpful
> >
> >     Andreas.
> >
> > On Sun, Feb 12, 2017 at 10:30:20PM +0100, Vojtech Kulvait wrote:
> > > Hi,
> > > the package you provided to me does not work either. It shows main
> > > application dialog but when I click on Open patient button it does not
> > open
> > > dialog but in console there is
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > *ERROR: Unhandled exception: Traceback (most recent call last):  File
> > > "/usr/share/dicompyler/dicompyler/main.py", line 314, in OnOpenPatient
> > > dicomgui.ImportDicom(self)  File
> > > "/usr/share/dicompyler/dicompyler/dicomgui.py", line 31, in ImportDicom
> > > dlgDicomImporter.Init(res)  File
> > > "/usr/share/dicompyler/dicompyler/dicomgui.py", line 129, in Init
> > > self.OnDirectorySearch()  File
> > > "/usr/share/dicompyler/dicompyler/dicomgui.py", line 188, in
> > > OnDirectorySearch    args=(self, self.path,
> > > self.import_search_subfolders,AttributeError: 'DicomImporterDialog'
> > object
> > > has no attribute 'path'*
> > > Which is the same behavior as when I solved that matplotlib problem by
> > > editing that file.
> > >
> > > I was lucky enough to run windows version today. I was able to view ct
> > data
> > > and radiotherapy data and doses data. It seems in the package you
> > provided
> > > to me there is even no button for importing these data and import dialog
> > is
> > > gray.
> > > Vojtech.
> > >
> > >
> > > 2017-02-12 15:46 GMT+01:00 Andreas Tille <tille at debian.org>:
> > >
> > > > Hi Vojtech,
> > > >
> > > > please make sure you send your mails to 854837 at bugs.debian.org and not
> > > > my private e-mail address.  Thanks.
> > > >
> > > > On Sun, Feb 12, 2017 at 08:50:05AM +0000, Vojtech Kulvait wrote:
> > > > > Andreas,
> > > > > I am using Debian Jessie and you are using some development version.
> > > >
> > > > I admit that is true and I assumed that the egg-info files would have
> > > > been cleaned up also by previous python helper versions.  Sorry for
> > > > the confusion.
> > > >
> > > > > In the
> > > > > package http://http.debian.net/debian/pool/main/d/dicompyler/
> > > > > dicompyler_0.4.2.orig.tar.gz there is file
> > > > > dicompyler/dicompyler-0.4.2.egg-info/requires.txt
> > > >
> > > > To be clear about this:  Inside the .orig.tar.gz tarball you will find
> > > > the orginal source as the authors of dicompyler.  As I said its
> > > > unmaintained and orphaned code which will probably never change.
> > > > However, at least in *recent* build tools the egg-info files are
> > cleaned
> > > > up.
> > > >
> > > > > in the format I have described with those dependencieds. To
> > replicate the
> > > > > problem I downloaded live CD with debian Jessie (XFCE).
> > > > >
> > > > > Using vanilla Debian Live CD:
> > > > > apt-get install dicompyler
> > > > > dicompyler
> > > > > The result is:
> > > > >
> > > > > *Traceback (most recent call last):  File "/usr/bin/dicompyler",
> > line 5,
> > > > in
> > > > > <module>    from pkg_resources import load_entry_point  File
> > > > > "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2876, in
> > > > > <module>    working_set = WorkingSet._build_master()  File
> > > > > "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 451, in
> > > > > _build_master    return cls._build_from_requirements(__requires__)
> > File
> > > > > "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 464, in
> > > > > _build_from_requirements    dists = ws.resolve(reqs, Environment())
> > File
> > > > > "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 639, in
> > > > > resolve    raise
> > > > > DistributionNotFound(req)pkg_resources.DistributionNotFound:
> > > > > matplotlib>=0.99,<=1.3.1*
> > > > >
> > > > >
> > > > > So the problem is that in Jessie is packaged software that does crash
> > > > after
> > > > > it is launched.
> > > >
> > > > I admit that's bad.  I remember that we did quite some effort to port
> > it
> > > > to wxpython3.0 and at this time it was running.  Most probably some
> > past
> > > > version bump of matplotlib spoiled this effort and the package was not
> > > > tested afterwards again since this is a very rarely used program (it
> > has
> > > > currently a popularity contest vote of 2 users).
> > > >
> > > > > Result of reportbug dicompyler:
> > > > >
> > > > > Subject: dicompyler: Dicompyler crashes after launch even from
> > vanilla
> > > > > Debian Jessie installation.
> > > > > Package: dicompyler
> > > > > Version: 0.4.2-2
> > > > > Severity: important
> > > >
> > > > I admit I do not have a Jessie system currently at hand but you might
> > > > like to try
> > > >
> > > >     wget http://ftp.debian.org/debian/pool/main/d/dicompyler/
> > > > dicompyler_0.4.2-3_all.deb
> > > >     sudo dpkg -i dicompyler_0.4.2-3_all.deb
> > > >
> > > > This package will be part of the next stable release Stretch and you
> > > > might be lucky that it also works on Jessie (sorry, I do not have any
> > > > Jessie system with GUI at hand but it seems it should be at least
> > > > installable.)
> > > >
> > > > Kind regards
> > > >
> > > >       Andreas.
> > > >
> > > > > -- System Information:
> > > > > Debian Release: 8.7
> > > > >   APT prefers stable
> > > > >   APT policy: (500, 'stable')
> > > > > Architecture: amd64 (x86_64)
> > > > >
> > > > > Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
> > > > > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
> > > > > Shell: /bin/sh linked to /bin/dash
> > > > > Init: systemd (via /run/systemd/system)
> > > > >
> > > > > Versions of packages dicompyler depends on:
> > > > > ii  python-dicom       0.9.8-1
> > > > > ii  python-imaging     2.6.1-2+deb8u3
> > > > > ii  python-matplotlib  1.4.2-3.1
> > > > > ii  python-numpy       1:1.8.2-2
> > > > > ii  python-pil         2.6.1-2+deb8u3
> > > > > ii  python-tornado     3.2.2-1.1
> > > > > ii  python-wxgtk3.0    3.0.1.1+dfsg-2
> > > > > pn  python:any         <none>
> > > > >
> > > > > Vojtech.
> > > > >
> > > > >
> > > > > 2017-02-11 23:31 GMT+00:00 Andreas Tille <tille at debian.org>:
> > > > >
> > > > > > Hi again,
> > > > > >
> > > > > > I need to admit we *really* need full system information to deal
> > > > > > with your bug report.
> > > > > >
> > > > > > On Sat, Feb 11, 2017 at 11:09:59PM +0100, Vojtech Kulvait wrote:
> > > > > > > Hi,
> > > > > > > well in the file
> > > > > > > /usr/share/dicompyler/dicompyler-0.4.2.egg-info/requires.txt
> > > > > > > matplotlib>=0.99, <=1.1.0
> > > > > > > numpy>=1.2.1
> > > > > > > pil>=1.1.7
> > > > > > > pydicom>=0.9.5, <0.9.7
> > > > > >
> > > > > > On my system I get:
> > > > > >
> > > > > >  $ LC_ALL=C apt-cache policy dicompyler
> > > > > > dicompyler:
> > > > > >   Installed: 0.4.2-3
> > > > > >   Candidate: 0.4.2-3
> > > > > >   Version table:
> > > > > >  *** 0.4.2-3 501
> > > > > >         501 http://httpredir.debian.org/debian testing/main amd64
> > > > Packages
> > > > > >          50 http://httpredir.debian.org/debian unstable/main amd64
> > > > > > Packages
> > > > > >         100 /var/lib/dpkg/status
> > > > > >
> > > > > > $ cat /usr/share/dicompyler/dicompyler-0.4.2.egg-info/requires.txt
> > > > > > $
> > > > > >
> > > > > > So the file you wrote above is in the Debian package empty (=has
> > zero
> > > > > > bytes).  I'm afraid you are using something else than the Debian
> > > > > > packaged version.  I can confirm that the original tarball
> > contains the
> > > > > > data you fixed but you most probably are lacking all the patches
> > that
> > > > > > are contained in the Debian package.
> > > > > >
> > > > > > > i had to edit it to be
> > > > > > > matplotlib>=0.99, <=1.3.1
> > > > > >
> > > > > > That's definitely not needed.
> > > > > >
> > > > > > > because otherwise python warns that the version of matplotlib is
> > too
> > > > new
> > > > > > > and can not run dicompyler
> > > > > > >
> > > > > > > after this bugfix however dicompiler itself draw its widget but
> > you
> > > > can
> > > > > > not
> > > > > > > import data or even open some dialogs, file import is grey. So
> > the
> > > > > > program
> > > > > > > is useless.
> > > > > >
> > > > > > Whatever you have installed might be useless since upstream seems
> > to
> > > > > > have orphaned this code and Debian is covering lots of patches to
> > fix
> > > > > > it.  If you really install the Debian package you can report bugs
> > about
> > > > > > the package but I have not idea how to fix your manual
> > installation.
> > > > > >
> > > > > > > I have to download windows version and then work on it.
> > > > > >
> > > > > > Alternatively remove your installation and try
> > > > > >
> > > > > >     apt-get install dicompyler
> > > > > >
> > > > > > If you confirm you did so and there might be any remaining problems
> > > > feel
> > > > > > free to report these here.  If not I probably need to close this
> > bug
> > > > > > report since it does not concern the Debian package but something
> > else
> > > > > > we do not control.
> > > > > >
> > > > > > Hope this helps
> > > > > >
> > > > > >        Andreas.
> > > > > >
> > > > > > --
> > > > > > http://fam-tille.de
> > > > > >
> > > >
> > > > --
> > > > http://fam-tille.de
> > > >
> >
> > > _______________________________________________
> > > Debian-med-packaging mailing list
> > > Debian-med-packaging at lists.alioth.debian.org
> > > http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/
> > debian-med-packaging
> >
> >
> > --
> > http://fam-tille.de
> >

> _______________________________________________
> Debian-med-packaging mailing list
> Debian-med-packaging at lists.alioth.debian.org
> http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-med-packaging


-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list