Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-typing_extensions for 
openSUSE:Factory checked in at 2025-05-23 14:27:37
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-typing_extensions (Old)
 and      /work/SRC/openSUSE:Factory/.python-typing_extensions.new.2732 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-typing_extensions"

Fri May 23 14:27:37 2025 rev:28 rq:1278841 version:4.13.2

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-typing_extensions/python-typing_extensions.changes
        2025-04-20 20:08:22.714144829 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-typing_extensions.new.2732/python-typing_extensions.changes
      2025-05-23 14:27:43.145381984 +0200
@@ -1,0 +2,14 @@
+Tue May 20 11:34:03 UTC 2025 - John Paul Adrian Glaubitz 
<[email protected]>
+
+- Update to 4.13.2
+  * Fix `TypeError` when taking the union of `typing_extensions.TypeAliasType`
+    and a `typing.TypeAliasType` on Python 3.12 and 3.13.
+  * Backport from CPython PR #132160) to avoid having user arguments
+    shadowed in generated `__new__` by `@typing_extensions.deprecated`.
+- from version 4.13.1
+  * Fix regression in 4.13.0 on Python 3.10.2 causing a `TypeError` when
+    using `Concatenate`.
+  * Fix `TypeError` when using `evaluate_forward_ref` on Python 3.10.1-2
+    and 3.9.8-10.
+
+-------------------------------------------------------------------

Old:
----
  typing_extensions-4.13.0.tar.gz

New:
----
  typing_extensions-4.13.2.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-typing_extensions.spec ++++++
--- /var/tmp/diff_new_pack.1RTyv8/_old  2025-05-23 14:27:43.749407506 +0200
+++ /var/tmp/diff_new_pack.1RTyv8/_new  2025-05-23 14:27:43.753407675 +0200
@@ -27,7 +27,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-typing_extensions%{psuffix}
-Version:        4.13.0
+Version:        4.13.2
 Release:        0
 Summary:        Backported and Experimental Type Hints for Python 3.8+
 License:        Python-2.0

++++++ typing_extensions-4.13.0.tar.gz -> typing_extensions-4.13.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typing_extensions-4.13.0/CHANGELOG.md 
new/typing_extensions-4.13.2/CHANGELOG.md
--- old/typing_extensions-4.13.0/CHANGELOG.md   2025-03-26 04:46:48.220348600 
+0100
+++ new/typing_extensions-4.13.2/CHANGELOG.md   2025-04-10 16:17:28.262305700 
+0200
@@ -1,3 +1,21 @@
+# Release 4.13.2 (April 10, 2025)
+
+- Fix `TypeError` when taking the union of `typing_extensions.TypeAliasType` 
and a
+  `typing.TypeAliasType` on Python 3.12 and 3.13.
+  Patch by [Joren Hammudoglu](https://github.com/jorenham).
+- Backport from CPython PR 
[#132160](https://github.com/python/cpython/pull/132160)
+  to avoid having user arguments shadowed in generated `__new__` by
+  `@typing_extensions.deprecated`.
+  Patch by [Victorien Plot](https://github.com/Viicos).
+
+# Release 4.13.1 (April 3, 2025)
+
+Bugfixes:
+- Fix regression in 4.13.0 on Python 3.10.2 causing a `TypeError` when using 
`Concatenate`.
+  Patch by [Daraan](https://github.com/Daraan).
+- Fix `TypeError` when using `evaluate_forward_ref` on Python 3.10.1-2 and 
3.9.8-10.
+  Patch by [Daraan](https://github.com/Daraan).
+
 # Release 4.13.0 (March 25, 2025)
 
 No user-facing changes since 4.13.0rc1.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typing_extensions-4.13.0/PKG-INFO 
new/typing_extensions-4.13.2/PKG-INFO
--- old/typing_extensions-4.13.0/PKG-INFO       1970-01-01 01:00:00.000000000 
+0100
+++ new/typing_extensions-4.13.2/PKG-INFO       1970-01-01 01:00:00.000000000 
+0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: typing_extensions
-Version: 4.13.0
+Version: 4.13.2
 Summary: Backported and Experimental Type Hints for Python 3.8+
 Keywords: 
annotations,backport,checker,checking,function,hinting,hints,type,typechecking,typehinting,typehints,typing
 Author-email: "Guido van Rossum, Jukka Lehtosalo, Ɓukasz Langa, Michael Lee" 
<[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typing_extensions-4.13.0/pyproject.toml 
new/typing_extensions-4.13.2/pyproject.toml
--- old/typing_extensions-4.13.0/pyproject.toml 2025-03-26 04:46:48.221348500 
+0100
+++ new/typing_extensions-4.13.2/pyproject.toml 2025-04-10 16:17:28.263306000 
+0200
@@ -6,7 +6,7 @@
 # Project metadata
 [project]
 name = "typing_extensions"
-version = "4.13.0"
+version = "4.13.2"
 description = "Backported and Experimental Type Hints for Python 3.8+"
 readme = "README.md"
 requires-python = ">=3.8"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/typing_extensions-4.13.0/src/test_typing_extensions.py 
new/typing_extensions-4.13.2/src/test_typing_extensions.py
--- old/typing_extensions-4.13.0/src/test_typing_extensions.py  2025-03-26 
04:46:48.222348500 +0100
+++ new/typing_extensions-4.13.2/src/test_typing_extensions.py  2025-04-10 
16:17:28.265305800 +0200
@@ -707,6 +707,25 @@
         instance = Child(42)
         self.assertEqual(instance.a, 42)
 
+    def test_do_not_shadow_user_arguments(self):
+        new_called = False
+        new_called_cls = None
+
+        @deprecated("MyMeta will go away soon")
+        class MyMeta(type):
+            def __new__(mcs, name, bases, attrs, cls=None):
+                nonlocal new_called, new_called_cls
+                new_called = True
+                new_called_cls = cls
+                return super().__new__(mcs, name, bases, attrs)
+
+        with self.assertWarnsRegex(DeprecationWarning, "MyMeta will go away 
soon"):
+            class Foo(metaclass=MyMeta, cls='haha'):
+                pass
+
+        self.assertTrue(new_called)
+        self.assertEqual(new_called_cls, 'haha')
+
     def test_existing_init_subclass(self):
         @deprecated("C will go away soon")
         class C:
@@ -7819,6 +7838,10 @@
             self.assertEqual(Alias | None, Union[Alias, None])
             self.assertEqual(Alias | (int | str), Union[Alias, int | str])
             self.assertEqual(Alias | list[float], Union[Alias, list[float]])
+
+            if sys.version_info >= (3, 12):
+                Alias2 = typing.TypeAliasType("Alias2", str)
+                self.assertEqual(Alias | Alias2, Union[Alias, Alias2])
         else:
             with self.assertRaises(TypeError):
                 Alias | int
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/typing_extensions-4.13.0/src/typing_extensions.py 
new/typing_extensions-4.13.2/src/typing_extensions.py
--- old/typing_extensions-4.13.0/src/typing_extensions.py       2025-03-26 
04:46:48.223348600 +0100
+++ new/typing_extensions-4.13.2/src/typing_extensions.py       2025-04-10 
16:17:28.265305800 +0200
@@ -2072,7 +2072,7 @@
     if parameters[-1] is ... and sys.version_info < (3, 9, 2):
         # Hack: Arguments must be types, replace it with one.
         parameters = (*parameters[:-1], _EllipsisDummy)
-    if sys.version_info >= (3, 10, 2):
+    if sys.version_info >= (3, 10, 3):
         concatenate = _ConcatenateGenericAlias(origin, parameters,
                                         _typevar_types=(TypeVar, ParamSpec),
                                         _paramspec_tvars=True)
@@ -3123,7 +3123,8 @@
         return arg
 
 
-if hasattr(warnings, "deprecated"):
+# Python 3.13.3+ contains a fix for the wrapped __new__
+if sys.version_info >= (3, 13, 3):
     deprecated = warnings.deprecated
 else:
     _T = typing.TypeVar("_T")
@@ -3203,7 +3204,7 @@
                 original_new = arg.__new__
 
                 @functools.wraps(original_new)
-                def __new__(cls, *args, **kwargs):
+                def __new__(cls, /, *args, **kwargs):
                     if cls is arg:
                         warnings.warn(msg, category=category, 
stacklevel=stacklevel + 1)
                     if original_new is not object.__new__:
@@ -3827,14 +3828,27 @@
     TypeAliasType = typing.TypeAliasType
 # 3.8-3.13
 else:
-    def _is_unionable(obj):
-        """Corresponds to is_unionable() in unionobject.c in CPython."""
-        return obj is None or isinstance(obj, (
-            type,
-            _types.GenericAlias,
-            _types.UnionType,
-            TypeAliasType,
-        ))
+    if sys.version_info >= (3, 12):
+        # 3.12-3.14
+        def _is_unionable(obj):
+            """Corresponds to is_unionable() in unionobject.c in CPython."""
+            return obj is None or isinstance(obj, (
+                type,
+                _types.GenericAlias,
+                _types.UnionType,
+                typing.TypeAliasType,
+                TypeAliasType,
+            ))
+    else:
+        # 3.8-3.11
+        def _is_unionable(obj):
+            """Corresponds to is_unionable() in unionobject.c in CPython."""
+            return obj is None or isinstance(obj, (
+                type,
+                _types.GenericAlias,
+                _types.UnionType,
+                TypeAliasType,
+            ))
 
     if sys.version_info < (3, 10):
         # Copied and pasted from 
https://github.com/python/cpython/blob/986a4e1b6fcae7fe7a1d0a26aea446107dd58dd2/Objects/genericaliasobject.c#L568-L582,
@@ -4371,7 +4385,11 @@
         A lax Python 3.11+ like version of typing._type_check
         """
         if hasattr(typing, "_type_convert"):
-            if _FORWARD_REF_HAS_CLASS:
+            if (
+                sys.version_info >= (3, 10, 3)
+                or (3, 9, 10) < sys.version_info[:3] < (3, 10)
+            ):
+                # allow_special_forms introduced later cpython/#30926 
(bpo-46539)
                 type_ = typing._type_convert(
                     value,
                     module=module,

Reply via email to