void-packages/srcpkgs/python3-astroid/patches/0001-Do-not-require-typing_...

67 lines
2.2 KiB
Diff

From 9555255e220554e3eab05257b1c39b4e635de18b Mon Sep 17 00:00:00 2001
From: Michal Vasilek <michal@vasilek.cz>
Date: Fri, 13 Jan 2023 10:20:49 +0100
Subject: [PATCH] Do not require typing_extensions on Python 3.11
19878a55e61ce8788db530240dba9570706a5aac added an unconditional
dependency on typing_extensions to fix tests with Python 3.10 3.11.
This commit fixes this issue by only requiring typing_extensions on
Python versions lower than 3.11 and using standard typing on Python 3.11
and newer.
---
ChangeLog | 2 ++
pyproject.toml | 2 +-
tests/unittest_scoped_nodes.py | 7 +++++--
3 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 94208b67..5eb6c5e9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -16,6 +16,8 @@ Release date: TBA
Closes #1958
+* Remove unnecessary typing_extensions dependency on Python 3.11 and newer
+
What's New in astroid 2.13.2?
=============================
Release date: 2023-01-08
diff --git a/pyproject.toml b/pyproject.toml
index 537bca9a..3fac032e 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -36,7 +36,7 @@ dependencies = [
"wrapt>=1.14,<2;python_version>='3.11'",
"wrapt>=1.11,<2;python_version<'3.11'",
"typed-ast>=1.4.0,<2.0;implementation_name=='cpython' and python_version<'3.8'",
- "typing-extensions>=4.0.0",
+ "typing-extensions>=4.0.0;python_version<'3.11'",
]
dynamic = ["version"]
diff --git a/tests/unittest_scoped_nodes.py b/tests/unittest_scoped_nodes.py
index 39d21369..c59bdc3f 100644
--- a/tests/unittest_scoped_nodes.py
+++ b/tests/unittest_scoped_nodes.py
@@ -1907,11 +1907,14 @@ class ClassNodeTest(ModuleLoader, unittest.TestCase):
import typing
import dataclasses
- import typing_extensions
+ if sys.version_info >= (3, 8):
+ from typing import Protocol
+ else:
+ from typing_extensions import Protocol
T = typing.TypeVar("T")
- class MyProtocol(typing_extensions.Protocol): pass
+ class MyProtocol(Protocol): pass
class EarlyBase(typing.Generic[T], MyProtocol): pass
class Base(EarlyBase[T], abc.ABC): pass
class Final(Base[object]): pass
--
2.39.0