Move ExitCode's definition from _pytest.main to _pytest.config
ExitCode is used in several internal modules and hooks and so with type annotations added, needs to be imported a lot. _pytest.main, being the entry point, generally sits at the top of the import tree. So, it's not great to have ExitCode defined in _pytest.main, because it will cause a lot of import cycles once type annotations are added (in fact there is already one, which this change removes). Move it to _pytest.config instead. _pytest.main still imports ExitCode, so importing from there still works, although external users should really be importing from `pytest`.
This commit is contained in:
@@ -4,7 +4,7 @@ import textwrap
|
||||
|
||||
import _pytest._code
|
||||
import pytest
|
||||
from _pytest.main import ExitCode
|
||||
from _pytest.config import ExitCode
|
||||
from _pytest.nodes import Collector
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user