diff options
author | Daniƫl van Noord <13665637+DanielNoord@users.noreply.github.com> | 2023-04-01 23:17:59 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-01 21:17:59 +0000 |
commit | f7bd67604f395cd50734b9559acc37ae5d34ce4b (patch) | |
tree | c173bbe1ca61fa8157b49621a9a38847299cddb3 /pylint | |
parent | 13e55d3daf8652450bfa10d54231e888c3496502 (diff) | |
download | pylint-git-f7bd67604f395cd50734b9559acc37ae5d34ce4b.tar.gz |
Don't use removed function from ``astroid`` (#8525)
Diffstat (limited to 'pylint')
-rw-r--r-- | pylint/checkers/imports.py | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/pylint/checkers/imports.py b/pylint/checkers/imports.py index 64b2abef6..9f4b0e379 100644 --- a/pylint/checkers/imports.py +++ b/pylint/checkers/imports.py @@ -37,6 +37,12 @@ from pylint.utils.linterstats import LinterStats if TYPE_CHECKING: from pylint.lint import PyLinter +if sys.version_info >= (3, 8): + from functools import cached_property +else: + from astroid.decorators import cachedproperty as cached_property + + # The dictionary with Any should actually be a _ImportTree again # but mypy doesn't support recursive types yet _ImportTree = Dict[str, Union[List[Dict[str, Any]], List[str]]] @@ -997,7 +1003,7 @@ class ImportsChecker(DeprecatedMixin, BaseChecker): self, sect: Section, _: LinterStats, _dummy: LinterStats | None ) -> None: """Return a verbatim layout for displaying dependencies.""" - dep_info = _make_tree_defs(self._external_dependencies_info().items()) + dep_info = _make_tree_defs(self._external_dependencies_info.items()) if not dep_info: raise EmptyReportError() tree_str = _repr_tree_defs(dep_info) @@ -1019,10 +1025,10 @@ class ImportsChecker(DeprecatedMixin, BaseChecker): _make_graph(filename, dep_info, sect, "") filename = self.linter.config.ext_import_graph if filename: - _make_graph(filename, self._external_dependencies_info(), sect, "external ") + _make_graph(filename, self._external_dependencies_info, sect, "external ") filename = self.linter.config.int_import_graph if filename: - _make_graph(filename, self._internal_dependencies_info(), sect, "internal ") + _make_graph(filename, self._internal_dependencies_info, sect, "internal ") def _filter_dependencies_graph(self, internal: bool) -> defaultdict[str, set[str]]: """Build the internal or the external dependency graph.""" @@ -1035,14 +1041,14 @@ class ImportsChecker(DeprecatedMixin, BaseChecker): graph[importee].add(importer) return graph - @astroid.decorators.cached + @cached_property def _external_dependencies_info(self) -> defaultdict[str, set[str]]: """Return cached external dependencies information or build and cache them. """ return self._filter_dependencies_graph(internal=False) - @astroid.decorators.cached + @cached_property def _internal_dependencies_info(self) -> defaultdict[str, set[str]]: """Return cached internal dependencies information or build and cache them. |