matplotlib >=3.8.0 breaks pyqso when cartopy is installed
charims opened this issue · 2 comments
charims commented
pyqso was working fine until I installed cartopy to get the map to show. Then it failed to start. Running from the cli gives me:
$ pyqso
/usr/bin/pyqso:33: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
import pkg_resources
INFO:root:PyQSO version 1.1.0
INFO:root:Using version 1.26.1 of numpy.
INFO:root:Using version 3.8.1 of matplotlib.
INFO:root:Using version 0.22.0 of cartopy.
Traceback (most recent call last):
File "/usr/bin/pyqso", line 174, in <module>
application = PyQSO(args.logbook) # Populate the main window and show it.
^^^^^^^^^^^^^^^^^^^
File "/usr/bin/pyqso", line 95, in __init__
self.toolbox = Toolbox(self)
^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/pyqso/toolbox.py", line 41, in __init__
self.world_map = WorldMap(self.application)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/pyqso/world_map.py", line 163, in __init__
toolbar = NavigationToolbar(self.canvas, self.application.window)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: NavigationToolbar2GTK3.__init__() takes 2 positional arguments but 3 were given
Running archlinux with the install from the AUR. Looks like there was a change since matplotlib/matplotlib@0968f71#diff-b82974fdd131ae34e8637914da0f13f02f0ea4b5c57b7a8a5789a6faad7ebb5a
I tried dropping the window argument, then the application starts fine, but there's still no map.
jaycrav3ns commented
I have this happening as well. It ran straight from the unzipped folder. I installed the requirements and now:
INFO:root:PyQSO version 1.1.0
WARNING:root:Could not import the Hamlib module!
INFO:root:Using version 1.26.0 of numpy.
INFO:root:Using version 3.8.0 of matplotlib.
INFO:root:Using version 0.22.0 of cartopy.
WARNING:root:Could not import the Hamlib module!
Traceback (most recent call last):
File "/home/jason/Downloads/pyqso-master/pyqso/pyqso.py", line 153, in <module>
application = PyQSO(args.logbook) # Populate the main window and show it.
^^^^^^^^^^^^^^^^^^^
File "/home/jason/Downloads/pyqso-master/pyqso/pyqso.py", line 74, in __init__
self.toolbox = Toolbox(self)
^^^^^^^^^^^^^
File "/home/jason/Downloads/pyqso-master/pyqso/toolbox.py", line 24, in __init__
self.world_map = WorldMap(self.application)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/jason/Downloads/pyqso-master/pyqso/world_map.py", line 145, in __init__
toolbar = NavigationToolbar(self.canvas, self.application.window)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: NavigationToolbar2GTK3.__init__() takes 2 positional arguments but 3 were given
Arzorth commented
same error here:
self.toolbar_2d = NavigationToolbar(self.canvas_2d, self.window_path)
TypeError: NavigationToolbar2GTK3.init() takes 2 positional arguments but 3 were given