Fix compatibility with astroid v3

pull/398/head
Ashley Whetter 11 months ago
parent 0ba883ab89
commit 2219dcdd7a

@ -73,10 +73,7 @@ def resolve_qualname(node, basename):
full_basename = basename
top_level_name = re.sub(r"\(.*\)", "", basename).split(".", 1)[0]
# Disable until pylint uses astroid 2.7
if isinstance(
node, astroid.nodes.node_classes.LookupMixIn # pylint: disable=no-member
):
if isinstance(node, astroid.nodes.LocalsDictNodeNG):
lookup_node = node
else:
lookup_node = node.scope()
@ -417,7 +414,8 @@ def _resolve_annotation(annotation):
elif isinstance(annotation, astroid.Subscript):
value = _resolve_annotation(annotation.value)
slice_node = annotation.slice
if isinstance(slice_node, astroid.Index):
# astroid.Index was removed in astroid v3
if hasattr(astroid, "Index") and isinstance(slice_node, astroid.Index):
slice_node = slice_node.value
if isinstance(slice_node, astroid.Tuple):
slice_ = ", ".join(_resolve_annotation(elt) for elt in slice_node.elts)

@ -35,7 +35,8 @@ include_package_data = True
python_requires = >=3.7
install_requires =
anyascii
astroid>=2.7
astroid>=2.7;python_version<"3.12"
astroid>=3.0.0a1;python_version>="3.12"
Jinja2
PyYAML
sphinx>=5.2.0

Loading…
Cancel
Save