Closed gioman closed 2 years ago
Couldn't load plugin 'processing_saga_nextgen' due to an error when calling its classFactory() method
ModuleNotFoundError: No module named 'processing.algs.saga' Traceback (most recent call last): File "C:\OSGeo4W/apps/qgis/./python\qgis\utils.py", line 423, in _startPlugin plugins[packageName] = package.classFactory(iface) File "C:\Users/azmtas01/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\processing_saga_nextgen__init__.py", line 22, in classFactory from .saga_nextgen_plugin import SagaNextGenProviderPlugin File "C:\OSGeo4W/apps/qgis/./python\qgis\utils.py", line 888, in _import mod = _builtin_import(name, globals, locals, fromlist, level) File "C:\Users/azmtas01/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\processing_saga_nextgen\saga_nextgen_plugin.py", line 21, in from processing_saga_nextgen.processing.provider import SagaNextGenAlgorithmProvider File "C:\OSGeo4W/apps/qgis/./python\qgis\utils.py", line 888, in _import mod = _builtin_import(name, globals, locals, fromlist, level) File "C:\OSGeo4W/apps/qgis/./python/plugins\processing_saga_nextgen\processing\provider.py", line 35, in from .SagaAlgorithm import SagaAlgorithm File "C:\OSGeo4W/apps/qgis/./python\qgis\utils.py", line 888, in _import mod = _builtin_import(name, globals, locals, fromlist, level) File "C:\OSGeo4W/apps/qgis/./python/plugins\processing_saga_nextgen\processing\SagaAlgorithm.py", line 55, in from processing.algs.saga.SagaNameDecorator import decoratedAlgorithmName, decoratedGroupName File "C:\OSGeo4W/apps/qgis/./python\qgis\utils.py", line 888, in _import mod = _builtin_import(name, globals, locals, fromlist, level) ModuleNotFoundError: No module named 'processing.algs.saga'
Python version: 3.9.5 (tags/v3.9.5:0a7dcbd, May 3 2021, 17:27:52) [MSC v.1928 64 bit (AMD64)] QGIS version: 3.22.0-Białowieża Białowieża, d9022691f1
Python Path: C:/OSGeo4W/apps/qgis/./python C:/Users/azmtas01/AppData/Roaming/QGIS/QGIS3\profiles\default/python C:/Users/azmtas01/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins C:/OSGeo4W/apps/qgis/./python/plugins C:\OSGeo4W\bin\python39.zip C:\OSGeo4W\apps\Python39\DLLs C:\OSGeo4W\apps\Python39\lib C:\OSGeo4W\bin C:\Users\azmtas01\AppData\Roaming\Python\Python39\site-packages C:\OSGeo4W\apps\Python39 C:\OSGeo4W\apps\Python39\lib\site-packages C:\OSGeo4W\apps\Python39\lib\site-packages\GDAL-3.4.0-py3.9-win-amd64.egg C:\OSGeo4W\apps\Python39\lib\site-packages\win32 C:\OSGeo4W\apps\Python39\lib\site-packages\win32\lib C:\OSGeo4W\apps\Python39\lib\site-packages\Pythonwin C:/Users/azmtas01/AppData/Roaming/QGIS/QGIS3\profiles\default/python
It seems alexbruy has moved the SAGA provider to an independent plugin in commit 277b71a of QGIS, which moved processing.algs.saga
to sagaprovider
. The fix is as simple as changing all occurences of processing.algs.saga
to sagaprovider
, but I don't know how to keep it backwards compatible with earlier versions of QGIS.
Figured it out. if Qgis.QGIS_VERSION < '3.22'