diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2023-04-02 10:02:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-02 10:02:55 +0200 |
commit | 538c41b7044e8945a8bb6e58b44caef61fa062a3 (patch) | |
tree | c587d742c58fadf64bd269746948075b9712c1c2 /pylint | |
parent | 4e11693a411433cb03b07fc3a04f2e4151280953 (diff) | |
download | pylint-git-538c41b7044e8945a8bb6e58b44caef61fa062a3.tar.gz |
Don't use removed function from ``astroid`` (#8525) (#8526)
(cherry picked from commit f7bd67604f395cd50734b9559acc37ae5d34ce4b)
Co-authored-by: Daniƫl van Noord <13665637+DanielNoord@users.noreply.github.com>
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 1ed70d958..ef7fe50cc 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. |