Traceback (most recent call last):
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 865, in import_plugin
__import__(importspec)
ModuleNotFoundError: No module named 'myProjectPytest.test.TestLoggingFixture'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint/lint/pylinter.py", line 788, in _lint_file
check_astroid_module(module)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint/lint/pylinter.py", line 1020, in check_astroid_module
retval = self._check_astroid_module(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint/lint/pylinter.py", line 1072, in _check_astroid_module
walker.walk(node)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint/utils/ast_walker.py", line 87, in walk
callback(astroid)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint_pytest/checkers/fixture.py", line 129, in visit_module
ret = pytest.main(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 159, in main
config = _prepareconfig(args, plugins)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 346, in _prepareconfig
config = pluginmanager.hook.pytest_cmdline_parse(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_hooks.py", line 513, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
raise exception.with_traceback(exception.__traceback__)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 122, in _multicall
teardown.throw(exception) # type: ignore[union-attr]
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/helpconfig.py", line 106, in pytest_cmdline_parse
config = yield
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 103, in _multicall
res = hook_impl.function(*args)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 1152, in pytest_cmdline_parse
self.parse(args)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 1501, in parse
self._preparse(args, addopts=addopts)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 1405, in _preparse
self.hook.pytest_load_initial_conftests(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_hooks.py", line 513, in __call__
return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_manager.py", line 120, in _hookexec
return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 139, in _multicall
raise exception.with_traceback(exception.__traceback__)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 122, in _multicall
teardown.throw(exception) # type: ignore[union-attr]
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/warnings.py", line 150, in pytest_load_initial_conftests
return (yield)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 122, in _multicall
teardown.throw(exception) # type: ignore[union-attr]
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/capture.py", line 153, in pytest_load_initial_conftests
yield
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pluggy/_callers.py", line 103, in _multicall
res = hook_impl.function(*args)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 1230, in pytest_load_initial_conftests
self.pluginmanager._set_initial_conftests(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 588, in _set_initial_conftests
self._try_load_conftest(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 626, in _try_load_conftest
self._loadconftestmodules(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 666, in _loadconftestmodules
mod = self._importconftest(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 742, in _importconftest
self.consider_conftest(mod, registration_name=conftestpath_plugin_name)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 823, in consider_conftest
self.register(conftestmodule, name=registration_name)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 519, in register
self.consider_module(plugin)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 831, in consider_module
self._import_plugin_specs(getattr(mod, "pytest_plugins", []))
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 838, in _import_plugin_specs
self.import_plugin(import_spec)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 867, in import_plugin
raise ImportError(
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/_pytest/config/__init__.py", line 865, in import_plugin
__import__(importspec)
ImportError: Error importing plugin "myProjectPytest.test.TestLoggingFixture": No module named 'myProjectPytest.test.TestLoggingFixture'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint/lint/pylinter.py", line 752, in _lint_files
self._lint_file(fileitem, module, check_astroid_module)
File "/home/user/myProject-test/python/venv/lib/python3.10/site-packages/pylint/lint/pylinter.py", line 790, in _lint_file
raise astroid.AstroidError from e
astroid.exceptions.AstroidError
The crash happens if i define an invalid/non existing module in
pytest_plugin.The import error is expected since that module doesn't exist, but it shouldn't crash pylint.
Once i remove the problematic import pylint runs fine.
The code that causes the crash:
Command used
Pylint output
pylint crashed with a ``AstroidError`` and with the following stacktrace:
Expected behavior
No crash.
Pylint version
OS / Environment
linux (Linux)