diff options
Diffstat (limited to 'dev-python/astroid')
-rw-r--r-- | dev-python/astroid/Manifest | 9 | ||||
-rw-r--r-- | dev-python/astroid/astroid-3.2.4.ebuild | 94 | ||||
-rw-r--r-- | dev-python/astroid/astroid-3.3.2.ebuild | 89 | ||||
-rw-r--r-- | dev-python/astroid/astroid-3.3.3.ebuild | 89 | ||||
-rw-r--r-- | dev-python/astroid/astroid-3.3.4.ebuild | 2 | ||||
-rw-r--r-- | dev-python/astroid/files/astroid-3.2.2-py313.patch | 177 |
6 files changed, 2 insertions, 458 deletions
diff --git a/dev-python/astroid/Manifest b/dev-python/astroid/Manifest index eec7a2f90b63..1edf0a6226b3 100644 --- a/dev-python/astroid/Manifest +++ b/dev-python/astroid/Manifest @@ -1,12 +1,5 @@ -AUX astroid-3.2.2-py313.patch 6670 BLAKE2B cb969f85e7810a2d1ef8088a9d35bc086df001589bd0de58be204db762e59aa145f930d275a02f49868277514a5ec492020d1537b323582b79733a5aebb6ba28 SHA512 d2800eab3ba1c54048a24758c9fbfb911a5af0add7a24d0c00f3b245a1a7fb5efbed9614ed5e0032fbf619a473192ba8039047bffdf33fdcdc027a22db2a5643 -DIST astroid-3.2.4.gh.tar.gz 465788 BLAKE2B 745a860b7bacb45cb86e9b232fe3a37cdac40cb471b00832a7dd7da4c3374760749cebe8c8688748e750cc3639554515a7a9e24f5f4d2ebac10af2c906fa04a9 SHA512 e48289794f67cf53bb8a2dcf357c1e892140a0a625c2e19601cf5ad579aaa33a94f0e052915fa6e854bc0a2e626f41b2d13773aa2b2af2412efeb33d030ed2b6 -DIST astroid-3.3.2.gh.tar.gz 464183 BLAKE2B a891a57ce697e539b865ead8f1a1a42aa57962d1ac3cb39624f3c8cac1a233ce5ed207a87f6b8ef0b2fcacc296610819d5612262a6fbfe08eed20a2955b168c4 SHA512 dc9777e701f0bf3dc5367da8e7c79eeba18f485ad1425f8e3e50814efef9f8fd0e11f30363d1c602cfd05c51b2b2e9749989da1413db59c9f648fbc47cfbc8ae -DIST astroid-3.3.3.gh.tar.gz 464883 BLAKE2B 0a0324619c15c0b5341f6b7d271b45a3d716814c5af35966cbc17dbd499196dc282b44e7a6e2904fac34d416343c79d2194f98f4811e16a2f7ee3365d759aa77 SHA512 a8f130bbf26d8cd3dd696bd6198e34f4e1585f11360acb068f95f26c4b72ec2187ce48533e3b00b4c1e3e33cbdc0a684999cc044f23de39f61111dc46781a1e6 DIST astroid-3.3.4.gh.tar.gz 465703 BLAKE2B a6ee3a02196e1fe67177339c235aa43419459f9b82d98e0cdf681e24321bf77517074ed756693b6f8d66e167f6d567e01694cb9678b4f60857fc6cd80365104f SHA512 fd826d8d08f3031670959eb0ef27108c6df632d951d47e75ee870d866b80da37e3880bfc51843ec7cf0a6441d6f9a85a16757a6b0c777844dd7ee0445fb8ef76 DIST astroid-3.3.5.gh.tar.gz 465885 BLAKE2B 64453a7b17aa1584083ca3c1fea4fdf8a236a1e0b80a66d8fe83a7201f2ef7c1cb362370648d61f766e8dc101c7797fbb7c5a2ab6f21e23da3830072e6a66c23 SHA512 323774d0853e8bebf5074eab3da3c29dfd2c04c96f222eb9a7fbe8da37544f7e6dceed8d0fd163591a2cd56a3d06ebf8ec33d23baeb921aa49cccb0f29cae426 -EBUILD astroid-3.2.4.ebuild 3139 BLAKE2B d19fdb72ab41af9b756225dd1d0e276eca369c68067c3e406a4fa9547bf9965c7d27a692e6b2c144b638a3625da4432d559b52f240b843b4c9dbc3c6fcb3bede SHA512 66bd5aa50697534a7b6e5439176e8980c3722e7720b916a4259ef52f71f692456cc2d6ae9786b975a396c22a7214e45fde2aae1be28b5fc78d5cf90263c3d4ba -EBUILD astroid-3.3.2.ebuild 3026 BLAKE2B 599c666c5b38ec6040107079be187c7d8ca3c58fd028a12df6ab8dc6ffc9e421794d83d3ec3ebbd9f1467eb4ed71cb049bcd90871dc959c5e1cad7833db0f0ec SHA512 f7cf04317a3a038f430729c2f519177869a8250aeb9cd4bf02c6907eab26ed75ff4add1b1c8b186693b8f83a1ccafdb3c2f209666d900d593c196c6cc6b03bd7 -EBUILD astroid-3.3.3.ebuild 3034 BLAKE2B 2e12e035ac338558dbcb06bfde557a2586a9c4c3ae477e2367ab8b9ba16b61fdc6a79fc57dafdc1abb315dbae0f0cc889970bd798477747d504dad0dd162053c SHA512 f9cf6786341175137551b2da820b1decbd0105dedab6be6108ab7fe584f5b33cd09379abad3f0ea0260646e95dcc0e8c7d05910dd1af81e009df98996051e1d4 -EBUILD astroid-3.3.4.ebuild 3034 BLAKE2B 2e12e035ac338558dbcb06bfde557a2586a9c4c3ae477e2367ab8b9ba16b61fdc6a79fc57dafdc1abb315dbae0f0cc889970bd798477747d504dad0dd162053c SHA512 f9cf6786341175137551b2da820b1decbd0105dedab6be6108ab7fe584f5b33cd09379abad3f0ea0260646e95dcc0e8c7d05910dd1af81e009df98996051e1d4 +EBUILD astroid-3.3.4.ebuild 3026 BLAKE2B 599c666c5b38ec6040107079be187c7d8ca3c58fd028a12df6ab8dc6ffc9e421794d83d3ec3ebbd9f1467eb4ed71cb049bcd90871dc959c5e1cad7833db0f0ec SHA512 f7cf04317a3a038f430729c2f519177869a8250aeb9cd4bf02c6907eab26ed75ff4add1b1c8b186693b8f83a1ccafdb3c2f209666d900d593c196c6cc6b03bd7 EBUILD astroid-3.3.5.ebuild 3034 BLAKE2B 2e12e035ac338558dbcb06bfde557a2586a9c4c3ae477e2367ab8b9ba16b61fdc6a79fc57dafdc1abb315dbae0f0cc889970bd798477747d504dad0dd162053c SHA512 f9cf6786341175137551b2da820b1decbd0105dedab6be6108ab7fe584f5b33cd09379abad3f0ea0260646e95dcc0e8c7d05910dd1af81e009df98996051e1d4 MISC metadata.xml 1148 BLAKE2B 29a6cfc0c292117920be154d37ed4770f1fb1679186576fe6151cc02d1d6be766045e0231e2fceb87cbd250dbed3888c99b7ca7dc0182cc700a11961d9cd6d9e SHA512 6821d13f5e82bd73ee4fd165c0b4c94f40cd6af536dee1658cccb4175e67da2611c4d1478cdef1607535f23224116ad482197e0b0eef8f0a94d596bf250b3074 diff --git a/dev-python/astroid/astroid-3.2.4.ebuild b/dev-python/astroid/astroid-3.2.4.ebuild deleted file mode 100644 index 810ff14e4489..000000000000 --- a/dev-python/astroid/astroid-3.2.4.ebuild +++ /dev/null @@ -1,94 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( pypy3 python3_{10..13} ) - -inherit distutils-r1 - -DESCRIPTION="Abstract Syntax Tree for logilab packages" -HOMEPAGE=" - https://github.com/pylint-dev/astroid/ - https://pypi.org/project/astroid/ -" -SRC_URI=" - https://github.com/pylint-dev/astroid/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="LGPL-2.1+" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -# Version specified in pyproject.toml -RDEPEND=" - $(python_gen_cond_dep ' - >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}] - ' 3.10) -" -# dev-python/regex isn't available for pypy -BDEPEND=" - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/attrs[${PYTHON_USEDEP}] - >=dev-python/numpy-1.17.0[${PYTHON_USEDEP}] - dev-python/python-dateutil[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/regex[${PYTHON_USEDEP}] - ' 'python*') - ) -" - -distutils_enable_tests pytest - -export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} - -PATCHES=( - # https://github.com/pylint-dev/astroid/pull/2424 (rebased) - "${FILESDIR}/${PN}-3.2.2-py313.patch" -) - -python_test() { - local EPYTEST_DESELECT=( - # no clue why they're broken - tests/test_modutils.py::GetModulePartTest::test_known_values_get_builtin_module_part - tests/test_regrtest.py::NonRegressionTests::test_numpy_distutils - # pydantic-2? - tests/brain/test_dataclasses.py::test_pydantic_field - # requires urllib3 with bundled six (skipped with urllib3>=2) - tests/test_modutils.py::test_file_info_from_modpath__SixMetaPathImporter - # hangs - tests/test_nodes.py::AsStringTest::test_recursion_error_trapped - # TODO - tests/test_builder.py::BuilderTest::test_data_build_error_filename - # numpy-2 (https://github.com/pylint-dev/astroid/issues/2442) - tests/brain/numpy/test_core_einsumfunc.py::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_fromnumeric.py::BrainNumpyCoreFromNumericTest::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_multiarray.py::BrainNumpyCoreMultiarrayTest::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_datetime_astype_return - tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_generic_types_are_subscriptables - tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type - tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type_tuple - ) - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - tests/test_transforms.py::TestTransforms::test_transform_aborted_if_recursion_limited - ) - ;; - python3.13) - EPYTEST_DESELECT+=( - # changes in py3.13.0b4 - # https://github.com/pylint-dev/astroid/issues/2478 - tests/test_nodes.py::AsStringTest::test_f_strings - tests/test_nodes_lineno.py::TestLinenoColOffset::test_end_lineno_string - ) - ;; - esac - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/astroid/astroid-3.3.2.ebuild b/dev-python/astroid/astroid-3.3.2.ebuild deleted file mode 100644 index 8e973999aca6..000000000000 --- a/dev-python/astroid/astroid-3.3.2.ebuild +++ /dev/null @@ -1,89 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( pypy3 python3_{10..13} ) - -inherit distutils-r1 - -DESCRIPTION="Abstract Syntax Tree for logilab packages" -HOMEPAGE=" - https://github.com/pylint-dev/astroid/ - https://pypi.org/project/astroid/ -" -SRC_URI=" - https://github.com/pylint-dev/astroid/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="LGPL-2.1+" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" - -# Version specified in pyproject.toml -RDEPEND=" - $(python_gen_cond_dep ' - >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}] - ' 3.10) -" -# dev-python/regex isn't available for pypy -BDEPEND=" - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/attrs[${PYTHON_USEDEP}] - >=dev-python/numpy-1.17.0[${PYTHON_USEDEP}] - dev-python/python-dateutil[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/regex[${PYTHON_USEDEP}] - ' 'python*') - ) -" - -distutils_enable_tests pytest - -export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} - -python_test() { - local EPYTEST_DESELECT=( - # no clue why they're broken - tests/test_modutils.py::GetModulePartTest::test_known_values_get_builtin_module_part - tests/test_regrtest.py::NonRegressionTests::test_numpy_distutils - # pydantic-2? - tests/brain/test_dataclasses.py::test_pydantic_field - # requires urllib3 with bundled six (skipped with urllib3>=2) - tests/test_modutils.py::test_file_info_from_modpath__SixMetaPathImporter - # hangs - tests/test_nodes.py::AsStringTest::test_recursion_error_trapped - # TODO - tests/test_builder.py::BuilderTest::test_data_build_error_filename - # numpy-2 (https://github.com/pylint-dev/astroid/issues/2442) - tests/brain/numpy/test_core_einsumfunc.py::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_fromnumeric.py::BrainNumpyCoreFromNumericTest::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_multiarray.py::BrainNumpyCoreMultiarrayTest::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_datetime_astype_return - tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_generic_types_are_subscriptables - tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type - tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type_tuple - ) - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - tests/test_transforms.py::TestTransforms::test_transform_aborted_if_recursion_limited - ) - ;; - python3.13) - EPYTEST_DESELECT+=( - # changes in py3.13.0b4 - # https://github.com/pylint-dev/astroid/issues/2478 - tests/test_nodes.py::AsStringTest::test_f_strings - tests/test_nodes_lineno.py::TestLinenoColOffset::test_end_lineno_string - ) - ;; - esac - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/astroid/astroid-3.3.3.ebuild b/dev-python/astroid/astroid-3.3.3.ebuild deleted file mode 100644 index adfa5e854419..000000000000 --- a/dev-python/astroid/astroid-3.3.3.ebuild +++ /dev/null @@ -1,89 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( pypy3 python3_{10..13} ) - -inherit distutils-r1 - -DESCRIPTION="Abstract Syntax Tree for logilab packages" -HOMEPAGE=" - https://github.com/pylint-dev/astroid/ - https://pypi.org/project/astroid/ -" -SRC_URI=" - https://github.com/pylint-dev/astroid/archive/v${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="LGPL-2.1+" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - -# Version specified in pyproject.toml -RDEPEND=" - $(python_gen_cond_dep ' - >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}] - ' 3.10) -" -# dev-python/regex isn't available for pypy -BDEPEND=" - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/attrs[${PYTHON_USEDEP}] - >=dev-python/numpy-1.17.0[${PYTHON_USEDEP}] - dev-python/python-dateutil[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - dev-python/regex[${PYTHON_USEDEP}] - ' 'python*') - ) -" - -distutils_enable_tests pytest - -export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} - -python_test() { - local EPYTEST_DESELECT=( - # no clue why they're broken - tests/test_modutils.py::GetModulePartTest::test_known_values_get_builtin_module_part - tests/test_regrtest.py::NonRegressionTests::test_numpy_distutils - # pydantic-2? - tests/brain/test_dataclasses.py::test_pydantic_field - # requires urllib3 with bundled six (skipped with urllib3>=2) - tests/test_modutils.py::test_file_info_from_modpath__SixMetaPathImporter - # hangs - tests/test_nodes.py::AsStringTest::test_recursion_error_trapped - # TODO - tests/test_builder.py::BuilderTest::test_data_build_error_filename - # numpy-2 (https://github.com/pylint-dev/astroid/issues/2442) - tests/brain/numpy/test_core_einsumfunc.py::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_fromnumeric.py::BrainNumpyCoreFromNumericTest::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_multiarray.py::BrainNumpyCoreMultiarrayTest::test_numpy_function_calls_inferred_as_ndarray - tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_datetime_astype_return - tests/brain/numpy/test_core_numerictypes.py::NumpyBrainCoreNumericTypesTest::test_generic_types_are_subscriptables - tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type - tests/brain/numpy/test_core_umath.py::NumpyBrainCoreUmathTest::test_numpy_core_umath_functions_return_type_tuple - ) - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - tests/test_transforms.py::TestTransforms::test_transform_aborted_if_recursion_limited - ) - ;; - python3.13) - EPYTEST_DESELECT+=( - # changes in py3.13.0b4 - # https://github.com/pylint-dev/astroid/issues/2478 - tests/test_nodes.py::AsStringTest::test_f_strings - tests/test_nodes_lineno.py::TestLinenoColOffset::test_end_lineno_string - ) - ;; - esac - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/astroid/astroid-3.3.4.ebuild b/dev-python/astroid/astroid-3.3.4.ebuild index adfa5e854419..8e973999aca6 100644 --- a/dev-python/astroid/astroid-3.3.4.ebuild +++ b/dev-python/astroid/astroid-3.3.4.ebuild @@ -20,7 +20,7 @@ SRC_URI=" LICENSE="LGPL-2.1+" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" # Version specified in pyproject.toml RDEPEND=" diff --git a/dev-python/astroid/files/astroid-3.2.2-py313.patch b/dev-python/astroid/files/astroid-3.2.2-py313.patch deleted file mode 100644 index f8addfe9ef7c..000000000000 --- a/dev-python/astroid/files/astroid-3.2.2-py313.patch +++ /dev/null @@ -1,177 +0,0 @@ -diff --git a/astroid/brain/brain_dataclasses.py b/astroid/brain/brain_dataclasses.py -index 88a4385f..743dfe96 100644 ---- a/astroid/brain/brain_dataclasses.py -+++ b/astroid/brain/brain_dataclasses.py -@@ -19,7 +19,7 @@ from typing import Literal, Tuple, Union - - from astroid import bases, context, nodes - from astroid.builder import parse --from astroid.const import PY39_PLUS, PY310_PLUS -+from astroid.const import PY39_PLUS, PY310_PLUS, PY313_PLUS - from astroid.exceptions import AstroidSyntaxError, InferenceError, UseInferenceDefault - from astroid.inference_tip import inference_tip - from astroid.manager import AstroidManager -@@ -503,6 +503,15 @@ def _looks_like_dataclass_field_call( - return inferred.name == FIELD_NAME and inferred.root().name in DATACLASS_MODULES - - -+def _looks_like_dataclasses(node: nodes.Module) -> bool: -+ return node.qname() == "dataclasses" -+ -+ -+def _resolve_private_replace_to_public(node: nodes.Module) -> None: -+ if "_replace" in node.locals: -+ node.locals["replace"] = node.locals["_replace"] -+ -+ - def _get_field_default(field_call: nodes.Call) -> _FieldDefaultReturn: - """Return a the default value of a field call, and the corresponding keyword - argument name. -@@ -618,6 +627,13 @@ def _infer_instance_from_annotation( - - - def register(manager: AstroidManager) -> None: -+ if PY313_PLUS: -+ manager.register_transform( -+ nodes.Module, -+ _resolve_private_replace_to_public, -+ _looks_like_dataclasses, -+ ) -+ - manager.register_transform( - nodes.ClassDef, dataclass_transform, is_decorated_with_dataclass - ) -diff --git a/astroid/brain/brain_pathlib.py b/astroid/brain/brain_pathlib.py -index 116cd2ee..d0f53132 100644 ---- a/astroid/brain/brain_pathlib.py -+++ b/astroid/brain/brain_pathlib.py -@@ -8,6 +8,7 @@ from collections.abc import Iterator - - from astroid import bases, context, inference_tip, nodes - from astroid.builder import _extract_single_node -+from astroid.const import PY313_PLUS - from astroid.exceptions import InferenceError, UseInferenceDefault - from astroid.manager import AstroidManager - -@@ -27,10 +28,11 @@ def _looks_like_parents_subscript(node: nodes.Subscript) -> bool: - value = next(node.value.infer()) - except (InferenceError, StopIteration): - return False -+ parents = "builtins.tuple" if PY313_PLUS else "pathlib._PathParents" - return ( - isinstance(value, bases.Instance) - and isinstance(value._proxied, nodes.ClassDef) -- and value.qname() == "pathlib._PathParents" -+ and value.qname() == parents - ) - - -diff --git a/astroid/brain/brain_typing.py b/astroid/brain/brain_typing.py -index 9965abc2..7a7c7183 100644 ---- a/astroid/brain/brain_typing.py -+++ b/astroid/brain/brain_typing.py -@@ -15,7 +15,7 @@ from typing import Final - from astroid import context, extract_node, inference_tip - from astroid.brain.helpers import register_module_extender - from astroid.builder import AstroidBuilder, _extract_single_node --from astroid.const import PY39_PLUS, PY312_PLUS -+from astroid.const import PY39_PLUS, PY312_PLUS, PY313_PLUS - from astroid.exceptions import ( - AstroidSyntaxError, - AttributeInferenceError, -@@ -168,6 +168,15 @@ def infer_typing_attr( - # If typing subscript belongs to an alias handle it separately. - raise UseInferenceDefault - -+ if ( -+ PY313_PLUS -+ and isinstance(value, FunctionDef) -+ and value.qname() == "typing.Annotated" -+ ): -+ # typing.Annotated is a FunctionDef on 3.13+ -+ node._explicit_inference = lambda node, context: iter([value]) -+ return iter([value]) -+ - if isinstance(value, ClassDef) and value.qname() in { - "typing.Generic", - "typing.Annotated", -diff --git a/tests/brain/test_brain.py b/tests/brain/test_brain.py -index b8bc84e3..78b6f8b3 100644 ---- a/tests/brain/test_brain.py -+++ b/tests/brain/test_brain.py -@@ -647,7 +647,7 @@ class TypingBrain(unittest.TestCase): - - @test_utils.require_version(minver="3.9") - def test_typing_annotated_subscriptable(self): -- """Test typing.Annotated is subscriptable with __class_getitem__""" -+ """typing.Annotated is subscriptable with __class_getitem__ below 3.13.""" - node = builder.extract_node( - """ - import typing -@@ -655,8 +655,13 @@ class TypingBrain(unittest.TestCase): - """ - ) - inferred = next(node.infer()) -- assert isinstance(inferred, nodes.ClassDef) -- assert isinstance(inferred.getattr("__class_getitem__")[0], nodes.FunctionDef) -+ if PY313_PLUS: -+ assert isinstance(inferred, nodes.FunctionDef) -+ else: -+ assert isinstance(inferred, nodes.ClassDef) -+ assert isinstance( -+ inferred.getattr("__class_getitem__")[0], nodes.FunctionDef -+ ) - - def test_typing_generic_slots(self): - """Test slots for Generic subclass.""" -diff --git a/tests/brain/test_pathlib.py b/tests/brain/test_pathlib.py -index d935d964..5aea8d37 100644 ---- a/tests/brain/test_pathlib.py -+++ b/tests/brain/test_pathlib.py -@@ -5,7 +5,7 @@ - - import astroid - from astroid import bases --from astroid.const import PY310_PLUS -+from astroid.const import PY310_PLUS, PY313_PLUS - from astroid.util import Uninferable - - -@@ -23,7 +23,10 @@ def test_inference_parents() -> None: - inferred = name_node.inferred() - assert len(inferred) == 1 - assert isinstance(inferred[0], bases.Instance) -- assert inferred[0].qname() == "pathlib._PathParents" -+ if PY313_PLUS: -+ assert inferred[0].qname() == "builtins.tuple" -+ else: -+ assert inferred[0].qname() == "pathlib._PathParents" - - - def test_inference_parents_subscript_index() -> None: -@@ -40,7 +43,10 @@ def test_inference_parents_subscript_index() -> None: - inferred = path.inferred() - assert len(inferred) == 1 - assert isinstance(inferred[0], bases.Instance) -- assert inferred[0].qname() == "pathlib.Path" -+ if PY313_PLUS: -+ assert inferred[0].qname() == "pathlib._local.Path" -+ else: -+ assert inferred[0].qname() == "pathlib.Path" - - - def test_inference_parents_subscript_slice() -> None: -diff --git a/tests/test_inference.py b/tests/test_inference.py -index ec8fc71b..95f00821 100644 ---- a/tests/test_inference.py -+++ b/tests/test_inference.py -@@ -4458,8 +4458,7 @@ class InferenceTest(resources.SysPathSetup, unittest.TestCase): - # and reraise it as a TypeError in Class.getitem - node = extract_node( - """ -- def test(): -- yield -+ def test(): ... - test() - """ - ) |