- Add patch support-python-311-typing.patch:

* Support typing changes for Python 3.11+

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-jedi?expand=0&rev=97
This commit is contained in:
Steve Kowalik 2023-01-10 04:02:48 +00:00 committed by Git OBS Bridge
parent 154113247e
commit cb9f70d5e6
3 changed files with 41 additions and 0 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Tue Jan 10 04:01:51 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>
- Add patch support-python-311-typing.patch:
* Support typing changes for Python 3.11+
-------------------------------------------------------------------
Tue Jan 3 19:08:04 UTC 2023 - Ben Greiner <code@bnavigator.de>

View File

@ -26,6 +26,8 @@ Group: Development/Languages/Python
URL: https://github.com/davidhalter/jedi
Source0: https://files.pythonhosted.org/packages/source/j/jedi/jedi-%{version}.tar.gz
Source1: %{name}-rpmlintrc
# PATCH-FIX-UPSTREAM gh#davidhalter/jedi#1903
Patch0: support-python-311-typing.patch
BuildRequires: %{python_module parso >= 0.8.0 with %python-parso < 0.9}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest >= 5}

View File

@ -0,0 +1,33 @@
From 00e23ddcee220110086621ff5922fb9cffddf60a Mon Sep 17 00:00:00 2001
From: Steve Kowalik <steven@wedontsleep.org>
Date: Tue, 10 Jan 2023 14:52:24 +1100
Subject: [PATCH] Support Python 3.11 typing changes
Python 3.11 has changed typing so that unions now return forward
refrences instead of erroring, and typing.Any is now an _AnyMeta class.
Correct the parameters for both of those.
Fixes #1858
---
test/test_api/test_interpreter.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/test/test_api/test_interpreter.py b/test/test_api/test_interpreter.py
index 848bca746..8e69cafc9 100644
--- a/test/test_api/test_interpreter.py
+++ b/test/test_api/test_interpreter.py
@@ -656,10 +656,12 @@ def bar():
({'return': 'typing.Union[str, int]'}, ['int', 'str'], ''),
({'return': 'typing.Union["str", int]'},
['int', 'str'] if sys.version_info >= (3, 9) else ['int'], ''),
- ({'return': 'typing.Union["str", 1]'}, [], ''),
+ ({'return': 'typing.Union["str", 1]'},
+ ['str'] if sys.version_info >= (3, 11) else [], ''),
({'return': 'typing.Optional[str]'}, ['NoneType', 'str'], ''),
({'return': 'typing.Optional[str, int]'}, [], ''), # Takes only one arg
- ({'return': 'typing.Any'}, [], ''),
+ ({'return': 'typing.Any'},
+ ['_AnyMeta'] if sys.version_info >= (3, 11) else [], ''),
({'return': 'typing.Tuple[int, str]'},
['Tuple' if sys.version_info[:2] == (3, 6) else 'tuple'], ''),