Accepting request 1287713 from devel:languages:python:Factory

- Update to 3.14.0~b3:
  - Tests
    - gh-132815: Fix test__opcode: add JUMP_BACKWARD to
      specialization stats.
    - gh-135489: Show verbose output for failing tests during PGO
      profiling step with –enable-optimizations.
    - gh-135120: Add test.support.subTests().
  - Security
    - gh-135462: Fix quadratic complexity in processing specially
      crafted input in html.parser.HTMLParser. End-of-file errors
      are now handled according to the HTML5 specs – comments and
      declarations are automatically closed, tags are ignored.
    - gh-135034: Fixes multiple issues that allowed tarfile
      extraction filters (filter="data" and filter="tar") to be
      bypassed using crafted symlinks and hard links.
      Addresses CVE 2024-12718, CVE 2025-4138, CVE 2025-4330, and
      CVE 2025-4517.
  - Library
    - gh-65697: configparser’s error message when attempting to
      write an invalid key is now more helpful.
    - gh-135497: Fix os.getlogin() failing for longer usernames
      on BSD-based platforms.
    - gh-135429: Fix the argument mismatch in _lsprof for
      PY_THROW event.
    - gh-135368: Fix unittest.mock.Mock generation on
      dataclasses.dataclass() objects. Now all special attributes
      are set as it was before gh-124429.
    - gh-133967: Do not normalize locale name ‘C.UTF-8’ to
      ‘en_US.UTF-8’.
    - gh-135321: Raise a correct exception for values greater
      than 0x7fffffff for the BINSTRING opcode in the C
      implementation of pickle.
    - gh-135276: Backported bugfixes in zipfile.Path from
      zipp 3.23. Fixed .name, .stem and other basename-based
      properties on Windows when working with a zipfile on disk.
    - gh-135244: uuid: when the MAC address cannot be
      determined, the 48-bit node ID is now generated with a
      cryptographically-secure pseudo-random number generator
      (CSPRNG) as per RFC 9562, §6.10.3. This affects uuid1() and
      uuid6().
    - gh-134970: Fix the “unknown action” exception in
      argparse.ArgumentParser.add_argument_group() to correctly
      replace the action class.
    - gh-134718: ast.dump() now only omits None and [] values if
      they are default values.
    - gh-134939: Add the concurrent.interpreters module. See PEP
      734.
    - gh-134885: Fix possible crash in the compression.zstd
      module related to setting parameter types. Patch by Jelle
      Zijlstra.
    - gh-134857: Improve error report for doctests run with
      unittest. Remove doctest module frames from tracebacks and
      redundant newline character from a failure message.
    - gh-128840: Fix parsing long IPv6 addresses with embedded
      IPv4 address.
    - gh-134637: Fix performance regression in calling a ctypes
      function pointer in free threading.
    - gh-134696: Built-in HACL* and OpenSSL implementations of
      hash function constructors now correctly accept the same
      documented named arguments. For instance, md5() could be
      previously invoked as md5(data=data) or md5(string=string)
      depending on the underlying implementation but these calls
      were not compatible. Patch by Bénédikt Tran.
    - gh-134151: email: Fix TypeError in
      email.utils.decode_params() when sorting RFC 2231
      continuations that contain an unnumbered section.
    - gh-134210: curses.window.getch() now correctly handles
      signals. Patch by Bénédikt Tran.
    - gh-134152: email: Fix parsing of email message ID with
      invalid domain.
    - gh-133489: random.getrandbits() can now generate more that
      231 bits. random.randbytes() can now generate more that 256
      MiB.
    - gh-132813: Improve error messages for incorrect types and
      values of csv.Dialect attributes.
    - gh-132969: Prevent the ProcessPoolExecutor executor thread,
      which remains running when shutdown(wait=False), from
      attempting to adjust the pool’s worker processes after the
      object state has already been reset during shutdown. A
      combination of conditions, including a worker process
      having terminated abormally, resulted in an exception and
      a potential hang when the still-running executor thread
      attempted to replace dead workers within the pool.
    - gh-127081: Fix libc thread safety issues with os by
      replacing getlogin with getlogin_r re-entrant version.
    - gh-131884: Fix formatting issues in json.dump() when both
      indent and skipkeys are used.
    - gh-130999: Avoid exiting the new REPL and offer suggestions
      even if there are non-string candidates when errors occur.
  - Documentation
    - gh-135171: Document that the iterator for the leftmost for
      clause in the generator expression is created immediately.
    - bpo-45210: Document that error indicator may be set in
      tp_dealloc, and how to avoid clobbering it.
  - Core and Builtins
    - gh-135496: Fix typo in the f-string conversion type error
      (“exclamanation” -> “exclamation”).
    - gh-135371: Fixed asyncio debugging tools to properly
      display internal coroutine call stacks alongside external
      task dependencies. The python -m asyncio ps and python
      -m asyncio pstree commands now show complete execution
      context. Patch by Pablo Galindo.
    - gh-127319: Set the allow_reuse_port class variable to False
      on the XMLRPC, logging, and HTTP servers. This matches the
      behavior in prior Python releases, which is to not allow
      port reuse.
    - gh-135171: Reverts the behavior of async generator
      expressions when created with object w/o __aiter__ method
      to the pre-3.13 behavior of raising a TypeError.
    - gh-130077: Properly raise custom syntax errors when
      incorrect syntax containing names that are prefixes of soft
      keywords is encountered. Patch by Pablo Galindo.
    - gh-135171: Reverts the behavior of generator expressions
      when created with a non-iterable to the pre-3.13 behavior
      of raising a TypeError. It is no longer possible to
      cause a crash in the debugger by altering the generator
      expression’s local variables. This is achieved by moving
      the GET_ITER instruction back to the creation of the
      generator expression and adding an additional check to
      FOR_ITER.
    - gh-116738: Make methods in heapq thread-safe on the free
      threaded build.
    - gh-134876: Add support to PEP 768 remote debugging for
      Linux kernels which don’t have CONFIG_CROSS_MEMORY_ATTACH
      configured.
    - gh-134889: Fix handling of a few opcodes that leave
      operands on the stack when optimizing LOAD_FAST.
    - gh-134908: Fix crash when iterating over lines in a text
      file on the free threaded build.
    - gh-132617: Fix dict.update() modification check that could
      incorrectly raise a “dict mutated during update” error when
      a different dictionary was modified that happens to share
      the same underlying keys object.
    - gh-134679: Fix crash in the free threading build’s QSBR
      code that could occur when changing an object’s __dict__
      attribute.
    - gh-127682: No longer call __iter__ twice in list
      comprehensions. This brings the behavior of list
      comprehensions in line with other forms of iteration
    - gh-133912: Fix the C API function PyObject_GenericSetDict
      to handle extension classes with inline values.
  - C API
    - gh-134989: Fix Py_RETURN_NONE, Py_RETURN_TRUE and
      Py_RETURN_FALSE macros in the limited C API 3.11 and
      older: don’t treat Py_None, Py_True and Py_False as
      immortal. Patch by Victor Stinner.
    - gh-134989: Implement PyObject_DelAttr() and
      PyObject_DelAttrString() as macros in the limited C API
      3.12 and older. Patch by Victor Stinner.
    - gh-133968: Add PyUnicodeWriter_WriteASCII() function to
      write an ASCII string into a PyUnicodeWriter. The function
      is faster than PyUnicodeWriter_WriteUTF8(), but has an
      undefined behavior if the input string contains non-ASCII
      characters. Patch by Victor Stinner.
  - Build
    - gh-119132: Remove “experimental” tag from the CPython
      free-threading build.
    - gh-135497: Fix the detection of MAXLOGNAME in the
      configure.ac script.
    - gh-134923: Windows builds with profile-guided optimization
      enabled now use /GENPROFILE and /USEPROFILE instead of
      deprecated /LTCG: options.
    - gh-134774: Fix Py_DEBUG macro redefinition warnings on
      Windows debug builds. Patch by Chris Eibl.
    - gh-134632: Fixed build-details.json generation to use
      INCLUDEPY, in order to reference the pythonX.Y subdirectory
      of the include directory, as required in PEP 739, instead
      of the top-level include directory.

OBS-URL: https://build.opensuse.org/request/show/1287713
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python314?expand=0&rev=13
This commit is contained in:
2025-06-23 13:04:26 +00:00
committed by Git OBS Bridge
7 changed files with 181 additions and 9 deletions

BIN
Python-3.14.0b2.tar.xz (Stored with Git LFS)

Binary file not shown.

File diff suppressed because one or more lines are too long

BIN
Python-3.14.0b3.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@@ -2,10 +2,10 @@
Lib/test/test_compile.py | 5 +++++
1 file changed, 5 insertions(+)
Index: Python-3.14.0a7/Lib/test/test_compile.py
Index: Python-3.14.0b3/Lib/test/test_compile.py
===================================================================
--- Python-3.14.0a7.orig/Lib/test/test_compile.py 2025-04-12 23:55:24.033076315 +0200
+++ Python-3.14.0a7/Lib/test/test_compile.py 2025-04-12 23:58:06.932213319 +0200
--- Python-3.14.0b3.orig/Lib/test/test_compile.py 2025-06-22 00:32:01.975698954 +0200
+++ Python-3.14.0b3/Lib/test/test_compile.py 2025-06-22 00:32:07.740981155 +0200
@@ -24,6 +24,9 @@
from test.support.bytecode_helper import instructions_with_positions
from test.support.os_helper import FakePath

View File

@@ -1,3 +1,175 @@
-------------------------------------------------------------------
Sat Jun 21 22:30:08 UTC 2025 - Matej Cepl <mcepl@cepl.eu>
- Update to 3.14.0~b3:
- Tests
- gh-132815: Fix test__opcode: add JUMP_BACKWARD to
specialization stats.
- gh-135489: Show verbose output for failing tests during PGO
profiling step with enable-optimizations.
- gh-135120: Add test.support.subTests().
- Security
- gh-135462: Fix quadratic complexity in processing specially
crafted input in html.parser.HTMLParser. End-of-file errors
are now handled according to the HTML5 specs comments and
declarations are automatically closed, tags are ignored.
- gh-135034: Fixes multiple issues that allowed tarfile
extraction filters (filter="data" and filter="tar") to be
bypassed using crafted symlinks and hard links.
Addresses CVE 2024-12718, CVE 2025-4138, CVE 2025-4330, and
CVE 2025-4517.
- Library
- gh-65697: configparsers error message when attempting to
write an invalid key is now more helpful.
- gh-135497: Fix os.getlogin() failing for longer usernames
on BSD-based platforms.
- gh-135429: Fix the argument mismatch in _lsprof for
PY_THROW event.
- gh-135368: Fix unittest.mock.Mock generation on
dataclasses.dataclass() objects. Now all special attributes
are set as it was before gh-124429.
- gh-133967: Do not normalize locale name C.UTF-8 to
en_US.UTF-8.
- gh-135321: Raise a correct exception for values greater
than 0x7fffffff for the BINSTRING opcode in the C
implementation of pickle.
- gh-135276: Backported bugfixes in zipfile.Path from
zipp 3.23. Fixed .name, .stem and other basename-based
properties on Windows when working with a zipfile on disk.
- gh-135244: uuid: when the MAC address cannot be
determined, the 48-bit node ID is now generated with a
cryptographically-secure pseudo-random number generator
(CSPRNG) as per RFC 9562, §6.10.3. This affects uuid1() and
uuid6().
- gh-134970: Fix the “unknown action” exception in
argparse.ArgumentParser.add_argument_group() to correctly
replace the action class.
- gh-134718: ast.dump() now only omits None and [] values if
they are default values.
- gh-134939: Add the concurrent.interpreters module. See PEP
734.
- gh-134885: Fix possible crash in the compression.zstd
module related to setting parameter types. Patch by Jelle
Zijlstra.
- gh-134857: Improve error report for doctests run with
unittest. Remove doctest module frames from tracebacks and
redundant newline character from a failure message.
- gh-128840: Fix parsing long IPv6 addresses with embedded
IPv4 address.
- gh-134637: Fix performance regression in calling a ctypes
function pointer in free threading.
- gh-134696: Built-in HACL* and OpenSSL implementations of
hash function constructors now correctly accept the same
documented named arguments. For instance, md5() could be
previously invoked as md5(data=data) or md5(string=string)
depending on the underlying implementation but these calls
were not compatible. Patch by Bénédikt Tran.
- gh-134151: email: Fix TypeError in
email.utils.decode_params() when sorting RFC 2231
continuations that contain an unnumbered section.
- gh-134210: curses.window.getch() now correctly handles
signals. Patch by Bénédikt Tran.
- gh-134152: email: Fix parsing of email message ID with
invalid domain.
- gh-133489: random.getrandbits() can now generate more that
231 bits. random.randbytes() can now generate more that 256
MiB.
- gh-132813: Improve error messages for incorrect types and
values of csv.Dialect attributes.
- gh-132969: Prevent the ProcessPoolExecutor executor thread,
which remains running when shutdown(wait=False), from
attempting to adjust the pools worker processes after the
object state has already been reset during shutdown. A
combination of conditions, including a worker process
having terminated abormally, resulted in an exception and
a potential hang when the still-running executor thread
attempted to replace dead workers within the pool.
- gh-127081: Fix libc thread safety issues with os by
replacing getlogin with getlogin_r re-entrant version.
- gh-131884: Fix formatting issues in json.dump() when both
indent and skipkeys are used.
- gh-130999: Avoid exiting the new REPL and offer suggestions
even if there are non-string candidates when errors occur.
- Documentation
- gh-135171: Document that the iterator for the leftmost for
clause in the generator expression is created immediately.
- bpo-45210: Document that error indicator may be set in
tp_dealloc, and how to avoid clobbering it.
- Core and Builtins
- gh-135496: Fix typo in the f-string conversion type error
(“exclamanation” -> “exclamation”).
- gh-135371: Fixed asyncio debugging tools to properly
display internal coroutine call stacks alongside external
task dependencies. The python -m asyncio ps and python
-m asyncio pstree commands now show complete execution
context. Patch by Pablo Galindo.
- gh-127319: Set the allow_reuse_port class variable to False
on the XMLRPC, logging, and HTTP servers. This matches the
behavior in prior Python releases, which is to not allow
port reuse.
- gh-135171: Reverts the behavior of async generator
expressions when created with object w/o __aiter__ method
to the pre-3.13 behavior of raising a TypeError.
- gh-130077: Properly raise custom syntax errors when
incorrect syntax containing names that are prefixes of soft
keywords is encountered. Patch by Pablo Galindo.
- gh-135171: Reverts the behavior of generator expressions
when created with a non-iterable to the pre-3.13 behavior
of raising a TypeError. It is no longer possible to
cause a crash in the debugger by altering the generator
expressions local variables. This is achieved by moving
the GET_ITER instruction back to the creation of the
generator expression and adding an additional check to
FOR_ITER.
- gh-116738: Make methods in heapq thread-safe on the free
threaded build.
- gh-134876: Add support to PEP 768 remote debugging for
Linux kernels which dont have CONFIG_CROSS_MEMORY_ATTACH
configured.
- gh-134889: Fix handling of a few opcodes that leave
operands on the stack when optimizing LOAD_FAST.
- gh-134908: Fix crash when iterating over lines in a text
file on the free threaded build.
- gh-132617: Fix dict.update() modification check that could
incorrectly raise a “dict mutated during update” error when
a different dictionary was modified that happens to share
the same underlying keys object.
- gh-134679: Fix crash in the free threading builds QSBR
code that could occur when changing an objects __dict__
attribute.
- gh-127682: No longer call __iter__ twice in list
comprehensions. This brings the behavior of list
comprehensions in line with other forms of iteration
- gh-133912: Fix the C API function PyObject_GenericSetDict
to handle extension classes with inline values.
- C API
- gh-134989: Fix Py_RETURN_NONE, Py_RETURN_TRUE and
Py_RETURN_FALSE macros in the limited C API 3.11 and
older: dont treat Py_None, Py_True and Py_False as
immortal. Patch by Victor Stinner.
- gh-134989: Implement PyObject_DelAttr() and
PyObject_DelAttrString() as macros in the limited C API
3.12 and older. Patch by Victor Stinner.
- gh-133968: Add PyUnicodeWriter_WriteASCII() function to
write an ASCII string into a PyUnicodeWriter. The function
is faster than PyUnicodeWriter_WriteUTF8(), but has an
undefined behavior if the input string contains non-ASCII
characters. Patch by Victor Stinner.
- Build
- gh-119132: Remove “experimental” tag from the CPython
free-threading build.
- gh-135497: Fix the detection of MAXLOGNAME in the
configure.ac script.
- gh-134923: Windows builds with profile-guided optimization
enabled now use /GENPROFILE and /USEPROFILE instead of
deprecated /LTCG: options.
- gh-134774: Fix Py_DEBUG macro redefinition warnings on
Windows debug builds. Patch by Chris Eibl.
- gh-134632: Fixed build-details.json generation to use
INCLUDEPY, in order to reference the pythonX.Y subdirectory
of the include directory, as required in PEP 739, instead
of the top-level include directory.
-------------------------------------------------------------------
Thu May 29 11:42:15 UTC 2025 - Matej Cepl <mcepl@cepl.eu>

View File

@@ -162,8 +162,8 @@
# _md5.cpython-38m-x86_64-linux-gnu.so
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
Name: %{python_pkg_name}%{psuffix}
Version: 3.14.0~b2
%define tarversion 3.14.0b2
Version: 3.14.0~b3
%define tarversion 3.14.0b3
%define tarname Python-%{tarversion}
Release: 0
Summary: Python 3 Interpreter