diff --git a/python-jedi.changes b/python-jedi.changes index bc2ad71..800bb5a 100644 --- a/python-jedi.changes +++ b/python-jedi.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Jan 10 04:01:51 UTC 2023 - Steve Kowalik + +- Add patch support-python-311-typing.patch: + * Support typing changes for Python 3.11+ + ------------------------------------------------------------------- Tue Jan 3 19:08:04 UTC 2023 - Ben Greiner diff --git a/python-jedi.spec b/python-jedi.spec index 8d4bc7e..43677ba 100644 --- a/python-jedi.spec +++ b/python-jedi.spec @@ -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} diff --git a/support-python-311-typing.patch b/support-python-311-typing.patch new file mode 100644 index 0000000..5af7ea9 --- /dev/null +++ b/support-python-311-typing.patch @@ -0,0 +1,33 @@ +From 00e23ddcee220110086621ff5922fb9cffddf60a Mon Sep 17 00:00:00 2001 +From: Steve Kowalik +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'], ''),