- changed component to HUB
enmapboxapplications: recursion error
Issue #204
invalid
Loading of SynthmixApp from enmapboxapplications fails because of loading recursion.
Test Cases
import unittest
from unittest import TestCase
from enmapbox.gui.utils import *
APP = initQgisApplication()
class BugTests(TestCase):
def test_loadsynthmix(self):
exception = None
try:
from enmapboxapplications.synthmixapp.core import SynthmixApp
except Exception as ex:
exception = ex
self.assertTrue(exception == None, msg='import raised:\n{}'.format(exception))
def test_enmapboxcoreapps(self):
from enmapbox import EnMAPBox, EnMAPBoxApplication
enmapBox = EnMAPBox(None)
self.assertIsInstance(enmapBox, EnMAPBox)
from reclassifyapp import enmapboxApplicationFactory as factory1
apps = factory1(enmapBox)
self.assertIsInstance(apps, list)
for app in apps:
self.assertIsInstance(app, EnMAPBoxApplication)
from enmapbox.coreapps.reclassifyapp import enmapboxApplicationFactory as factory2
apps = factory2(enmapBox) #this fails
self.assertIsInstance(apps, list)
self.assertTrue(len(apps) > 0)
for app in apps:
self.assertIsInstance(app, EnMAPBoxApplication)
if __name__ == "__main__":
unittest.main()
Errors:
Error
Traceback (most recent call last):
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\unittest\case.py", line 59, in testPartExecutor
yield
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\unittest\case.py", line 615, in run
testMethod()
File "C:\Users\geo_beja\Repositories\QGIS_Plugins\enmap-box\snippets\bugs.py", line 11, in test_loadsynthmix
from enmapboxapplications.synthmixapp.core import SynthmixApp
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\Users\geo_beja\Repositories\QGIS_Plugins\enmap-box\enmapbox\coreapps\enmapboxapplications\__init__.py", line 7, in <module>
from enmapboxapplications.synthmixapp.core import SynthmixApp
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\Users\geo_beja\Repositories\QGIS_Plugins\enmap-box\enmapbox\coreapps\enmapboxapplications\synthmixapp\core.py", line 11, in <module>
from enmapboxapplications.synthmixapp.script import synthmixRegressionEnsemble
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\Users\geo_beja\Repositories\QGIS_Plugins\enmap-box\enmapbox\coreapps\enmapboxapplications\synthmixapp\script.py", line 2, in <module>
from sklearn.ensemble import RandomForestRegressor
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\ensemble\__init__.py", line 7, in <module>
from .forest import RandomForestClassifier
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\ensemble\forest.py", line 57, in <module>
from ..metrics import r2_score
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\metrics\__init__.py", line 7, in <module>
from .ranking import auc
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\metrics\ranking.py", line 36, in <module>
from ..preprocessing import label_binarize
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\preprocessing\__init__.py", line 6, in <module>
from ._function_transformer import FunctionTransformer
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\preprocessing\_function_transformer.py", line 5, in <module>
from ..utils.testing import assert_allclose_dense_sparse
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\sklearn\utils\testing.py", line 758, in <module>
import pytest
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\pytest.py", line 7, in <module>
from _pytest.assertion import register_assert_rewrite
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\_pytest\assertion\__init__.py", line 12, in <module>
from _pytest.assertion import rewrite
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 672, in _import
mod = _builtin_import(name, globals, locals, fromlist, level)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\_pytest\assertion\rewrite.py", line 19, in <module>
import py
File "C:\Program Files\QGIS 3.0\apps\qgis\python\qgis\utils.py", line 674, in _import
if mod and '__file__' in mod.__dict__:
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\py\_vendored_packages\apipkg.py", line 168, in __dict__
self.__makeattr(name)
File "C:\PROGRA~1\QGIS3~1.0\apps\Python37\lib\site-packages\py\_vendored_packages\apipkg.py", line 148, in __makeattr
....
RecursionError: maximum recursion depth exceeded while calling a Python object
Comments (4)
-
reporter -
BugTest is running without errors:
Testing started at 12:47 ... C:\OSGeo4W64\bin\python3.exe "C:\Program Files\JetBrains\PyCharm 2018.2.4\helpers\pycharm\_jb_unittest_runner.py" --path C:/source/arcoop/x.py Launching unittests with arguments python -m unittest C:/source/arcoop/x.py in C:\source\arcoop C:\OSGeo4W64\apps\qgis\python\qgis\utils.py:674: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses mod = _builtin_import(name, globals, locals, fromlist, level) DEGUB: init resources C:\OSGEO4~1\apps\Python37\lib\site-packages\PyQt5\uic\objcreator.py:152: DeprecationWarning: 'U' mode is deprecated plugin = open(filename, 'rU') None-existing resource file(s) in: C:\Users\janzandr\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\enmapboxplugin\enmapbox\gui\speclib\spectralprofileeditorconfigwidget.ui <include location="../../../../../QGIS/images/images.qrc"/> None-existing resource file(s) in: C:\Users\janzandr\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\enmapboxplugin\enmapbox\gui\ui\textdockwidget.ui <include location="../../../../../QGIS/images/images.qrc"/> <include location="../../../../../QGIS/images/images.qrc"/> None-existing resource file(s) in: C:\Users\janzandr\AppData\Roaming\QGIS\QGIS3\profiles\default\python\plugins\enmapboxplugin\enmapbox\gui\ui\enmapbox_gui.ui C:\OSGeo4W64\apps\qgis\python\qgis\utils.py:674: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working C:\OSGEO4~1\apps\Python37\lib\site-packages\yaml\constructor.py:126: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated, and in 3.8 it will stop working C:\OSGEO4~1\apps\Python37\lib\site-packages\PyQt5\uic\objcreator.py:152: DeprecationWarning: 'U' mode is deprecated C:\OSGEO4~1\apps\Python37\lib\site-packages\osgeo\gdal.py:113: DeprecationWarning: gdal.py was placed in a namespace, it is now available as osgeo.gdal Application state: QGIS_PREFIX_PATH env var: C:\OSGEO4~1\apps\qgis Prefix: C:\OSGEO4~1\apps\qgis Plugin Path: C:\OSGEO4~1\apps\qgis/plugins Package Data Path: C:\OSGEO4~1\apps\qgis/. Active Theme Name: Active Theme Path: C:\OSGEO4~1\apps\qgis/./resources/themes\\icons/ Default Theme Path: :/images/themes/default/ SVG Search Paths: C:\OSGEO4~1\apps\qgis/./svg/ C:/Users/janzandr/AppData/Roaming/python3\profiles\default/svg/ User DB Path: C:\OSGEO4~1\apps\qgis/./resources/qgis.db Auth DB Path: C:/Users/janzandr/AppData/Roaming/python3\profiles\default/qgis-auth.db EnMAP-Box(0): initializes an own QGIS Processing framework EnMAP-Box(0): Provider added enmapbox EnMAP-Box(0): QGIS Processing framework initialized Load EnMAPBoxApplication(s) from "enmapboxapplications" C:\OSGEO4~1\apps\Python37\lib\importlib\_bootstrap.py:219: ImportWarning: can't resolve package from __spec__ or __package__, falling back on __name__ and __path__ C:\OSGEO4~1\apps\Python37\lib\importlib\_bootstrap.py:219: ImportWarning: can't resolve package from __spec__ or __package__, falling back on __name__ and __path__ C:\OSGEO4~1\apps\Python37\lib\site-packages\PyQt5\uic\objcreator.py:152: DeprecationWarning: 'U' mode is deprecated Load EnMAPBoxApplication(s) from "hubtimeseriesviewerapp" Load EnMAPBoxApplication(s) from "metadataeditorapp" Load EnMAPBoxApplication(s) from "reclassifyapp" Load EnMAPBoxApplication(s) from "vrtbuilderapp" Load EnMAPBoxApplication(s) from "enpt_app" Load EnMAPBoxApplication(s) from "hzg_apps" Load EnMAPBoxApplication(s) from "lmuvegetationapps" Ran 2 tests in 1.615s OK Process finished with exit code 0
-
- changed status to invalid
-
- removed component
Removing component: HUB (automated comment)
- Log in to comment