- Package:
- python3-bioxtasraw
- Source:
- python3-bioxtasraw
- Description:
- process biological small angle scattering data
- Submitter:
- Picca Frédéric-Emmanuel
- Date:
- 2026-03-09 13:55:01 UTC
- Severity:
- normal
Hello,
while trying to use bioxtasraw, I get this error message in a dialog box
An unexpected error has occurred, please report it to the developers.
System: Linux-6.12.73+deb13-amd64-x86_64-with-glibc2.41
RAW version: 2.4.1
Prebuilt: False
Error:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/wx/core.py", line 2338, in Notify
self.notify()
~~~~~~~~~~~^^
File "/usr/lib/python3/dist-packages/wx/core.py", line 3550, in Notify
self.result = self.callable(*self.args, **self.kwargs)
~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/bioxtasraw/RAW.py", line 16625, in ShowMain
MainFrame('RAW %s' %(RAWGlobals.version), -1)
~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/bioxtasraw/RAW.py", line 303, in __init__
self.plot_panel = RAWPlot.PlotPanel(self.plot_notebook, -1, 'PlotPanel')
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/bioxtasraw/RAWPlot.py", line 362, in __init__
self.toolbar = CustomPlotToolbar(self, self.canvas)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3/dist-packages/bioxtasraw/RAWPlot.py", line 143, in __init__
float(matplotlib.__version__.split('.')[2]) >= 1) or
~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: could not convert string to float: '1+dfsg1'
Cheers
Fred
If I look for this pattern in the upstream code...
./bioxtasraw/RAWImage.py: if ((float(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWImage.py: float(matplotlib.__version__.split('.')[1]) >= 3 and
./bioxtasraw/RAWImage.py: float(matplotlib.__version__.split('.')[2]) >= 1) or
./bioxtasraw/RAWImage.py: (float(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWImage.py: float(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWImage.py: float(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWImage.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWImage.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWImage.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWImage.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWImage.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWImage.py: and int(matplotlib.__version__.split('.')[1]) <5)
./bioxtasraw/RAWImage.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWImage.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWImage.py: and int(matplotlib.__version__.split('.')[1]) <5)
./bioxtasraw/RAWImage.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWImage.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWImage.py: and int(matplotlib.__version__.split('.')[1]) <5)
./bioxtasraw/RAWImage.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWCustomDialogs.py: if (int(matplotlib.__version__.split('.')[0]) < 3 or
./bioxtasraw/RAWCustomDialogs.py: (int(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWCustomDialogs.py: int(matplotlib.__version__.split('.')[1]) <8)):
./bioxtasraw/RAWPlot.py:if int(matplotlib.__version__.split('.')[0]) >= 2:
./bioxtasraw/RAWPlot.py: if ((float(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWPlot.py: float(matplotlib.__version__.split('.')[1]) >= 3 and
./bioxtasraw/RAWPlot.py: float(matplotlib.__version__.split('.')[2]) >= 1) or
./bioxtasraw/RAWPlot.py: (float(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWPlot.py: float(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWPlot.py: float(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWPlot.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWPlot.py: and int(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWPlot.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWPlot.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWPlot.py: and int(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWPlot.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWPlot.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWPlot.py: and int(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWPlot.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWPlot.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWPlot.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWPlot.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWAnalysis.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if (int(matplotlib.__version__.split('.')[0]) < 3 or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) <8)):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 1
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) > 1):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) <5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) ==1
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >=5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) > 1):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) <5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0])==1
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >=5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) > 1):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) <4)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) <4)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) ==1
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >=5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0])) > 1:
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0])==3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) <5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) < 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) ==1
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >=5)
./bioxtasraw/RAWAnalysis.py: or int(matplotlib.__version__.split('.')[0]) > 1):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) ==1 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) >=5) or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) > 1 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) < 3) or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) <8)):
./bioxtasraw/RAWAnalysis.py: elif ((int(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) >=8) or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) > 3)):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) ==1 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) >=5) or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) > 1 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) < 3) or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) <8)):
./bioxtasraw/RAWAnalysis.py: elif ((int(matplotlib.__version__.split('.')[0]) == 3 and
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[1]) >=8) or
./bioxtasraw/RAWAnalysis.py: (int(matplotlib.__version__.split('.')[0]) > 3)):
./bioxtasraw/RAWAnalysis.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 4) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if float(matplotlib.__version__[:3]) >= 1.2:
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWAnalysis.py: if ((int(matplotlib.__version__.split('.')[0]) == 3
./bioxtasraw/RAWAnalysis.py: and int(matplotlib.__version__.split('.')[1]) >= 9) or
./bioxtasraw/RAWAnalysis.py: int(matplotlib.__version__.split('.')[0]) > 3):
./bioxtasraw/RAWMultiSeriesAnalysis.py: if float(matplotlib.__version__[:3]) >= 1.2:
maybe the best solutin is to fix the version number of matplotlib. I do not know if it is allow to provide a version number with the a debian version in it...
The best would be to use the packaging.version Version type in order to deal with these verrsion comparisons.
from packaging.version import Version
v = Version(matplotlib.__version__)
v < Version ("3.3.3")
...
forwarded 1130153 https://github.com/jbhopkins/bioxtasraw/issues/14 thanks Good idea. I see you have just forwarded the bug upstream. Thanks a lot.