Accepting request 1295248 from devel:languages:python:Factory

- Update to 3.14.0~rc1:
  - Tools/Demos
    - gh-136251: Fixes and usability improvements for
      Tools/wasm/emscripten/web_example
  - Security
    - gh-135661: Fix parsing attributes with whitespaces around
      the = separator in html.parser.HTMLParser according to the
      HTML5 standard.
    - gh-118350: Fix support of escapable raw text mode (elements
      “textarea” and “title”) in html.parser.HTMLParser.
  - Library
    - gh-136170: Removed the unreleased
      zipfile.ZipFile.data_offset property added in 3.14.0a7 as
      it wasn’t fully clear which behavior it should have in some
      situations so the result was not always what a user might
      expect.
    - gh-124621: pyrepl now works in Emscripten.
    - gh-136874: Discard URL query and fragment in
      urllib.request.url2pathname().
    - gh-130645: Enable color help by default in argparse.
    - gh-136549: Fix signature of threading.excepthook().
    - gh-136523: Fix wave.Wave_write emitting an unraisable when
      open raises.
    - gh-52876: Add missing keepends (default True)
      parameter to codecs.StreamReaderWriter.readline() and
      codecs.StreamReaderWriter.readlines().
    - gh-136470: Correct
      concurrent.futures.InterpreterPoolExecutor’s default thread
      name.
    - gh-136476: Fix a bug that was causing the
      get_async_stack_trace function to miss some frames in the
      stack trace.
    - gh-136434: Fix docs generation of UnboundItem in
      concurrent.interpreters when running with -OO.
    - gh-136380: Raises AttributeError when accessing
      concurrent.futures.InterpreterPoolExecutor and
      subinterpreters are not available.
    - gh-134759: Fix UnboundLocalError in
      email.message.Message.get_payload() when the payload to
      decode is a bytes object. Patch by Kliment Lamonov.
    - gh-134657: asyncio: Remove some private names from
      asyncio.__all__.
  - Core and Builtins
    - gh-136801: Fix PyREPL syntax highlighting on match cases
      after multi-line case. Contributed by Olga Matoula.
    - gh-136421: Fix crash when initializing datetime
      concurrently.
    - gh-136541: Fix some issues with the perf trampolines
      on x86-64 and aarch64. The trampolines were not being
      generated correctly for some cases, which could lead to
      the perf integration not working correctly. Patch by Pablo
      Galindo.
    - gh-136517: Fixed a typo that prevented printing of
      uncollectable objects when the gc.DEBUG_UNCOLLECTABLE mode
      was set.
    - gh-136525: Fix issue where per-thread bytecode was not
      instrumented for newly created threads.
    - gh-132661: Interpolation.expression now has a default, the
      empty string.
    - gh-132661: Reflect recent PEP 750 change.
    - Disallow concatenation of string.templatelib.Template and
      str. Also, disallow implicit concatenation of t-string
      literals with string or f-string literals.
    - gh-116738: Make functions in grp thread-safe on the free
      threaded build.
    - gh-135148: Fixed a bug where f-string debug expressions
      (using =) would incorrectly strip out parts of strings
      containing escaped quotes and # characters. Patch by Pablo
      Galindo.
    - gh-133136: Limit excess memory usage in the free threading
      build when a large dictionary or list is resized and
      accessed by multiple threads.
    - gh-91153: Fix a crash when a bytearray is concurrently
      mutated during item assignment.
    - gh-127971: Fix off-by-one read beyond the end of a string
      in string search.
  - C API
    - gh-112068: Revert support of nullable arguments in
      PyArg_Parse().
    - gh-133296: New variants for the critical section API that
      accept one or two PyMutex pointers rather than PyObject
      instances are now public in the non-limited C API.
    - gh-134009: Expose PyMutex_IsLocked() as part of the public
      C API.
  - Build
    - gh-135621: PyREPL no longer depends on the curses standard
      library. Contributed by Łukasz Langa.

OBS-URL: https://build.opensuse.org/request/show/1295248
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python314?expand=0&rev=19
This commit is contained in:
2025-07-23 14:35:49 +00:00
committed by Git OBS Bridge
8 changed files with 134 additions and 32 deletions

BIN
Python-3.14.0b4.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.0rc1.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

@@ -13,9 +13,11 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
5 files changed, 37 insertions(+), 9 deletions(-)
create mode 100644 Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
--- a/Doc/library/ensurepip.rst
+++ b/Doc/library/ensurepip.rst
@@ -61,7 +61,11 @@ is at least as recent as the one availab
Index: Python-3.14.0rc1/Doc/library/ensurepip.rst
===================================================================
--- Python-3.14.0rc1.orig/Doc/library/ensurepip.rst 2025-07-22 18:42:44.000000000 +0200
+++ Python-3.14.0rc1/Doc/library/ensurepip.rst 2025-07-23 10:10:31.690342385 +0200
@@ -61,7 +61,11 @@
By default, ``pip`` is installed into the current virtual environment
(if one is active) or into the system site packages (if there is no
active virtual environment). The installation location can be controlled
@@ -28,7 +30,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
.. option:: --root <dir>
@@ -102,7 +106,7 @@ Module API
@@ -102,7 +106,7 @@
Returns a string specifying the available version of pip that will be
installed when bootstrapping an environment.
@@ -37,7 +39,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
altinstall=False, default_pip=False, \
verbosity=0)
@@ -112,6 +116,8 @@ Module API
@@ -112,6 +116,8 @@
If *root* is ``None``, then installation uses the default install location
for the current environment.
@@ -46,7 +48,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
*upgrade* indicates whether or not to upgrade an existing installation
of an earlier version of ``pip`` to the available version.
@@ -132,6 +138,8 @@ Module API
@@ -132,6 +138,8 @@
*verbosity* controls the level of output to :data:`sys.stdout` from the
bootstrapping operation.
@@ -55,9 +57,11 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
.. audit-event:: ensurepip.bootstrap root ensurepip.bootstrap
.. note::
--- a/Lib/ensurepip/__init__.py
+++ b/Lib/ensurepip/__init__.py
@@ -106,27 +106,27 @@ def _disable_pip_configuration_settings(
Index: Python-3.14.0rc1/Lib/ensurepip/__init__.py
===================================================================
--- Python-3.14.0rc1.orig/Lib/ensurepip/__init__.py 2025-07-23 10:10:18.541751619 +0200
+++ Python-3.14.0rc1/Lib/ensurepip/__init__.py 2025-07-23 10:10:31.690818287 +0200
@@ -106,27 +106,27 @@
os.environ['PIP_CONFIG_FILE'] = os.devnull
@@ -90,7 +94,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
Note that calling this function will alter both sys.path and os.environ.
"""
@@ -162,6 +162,8 @@ def _bootstrap(*, root=None, upgrade=Fal
@@ -162,6 +162,8 @@
args = ["install", "--no-cache-dir", "--no-index", "--find-links", tmpdir]
if root:
args += ["--root", root]
@@ -99,7 +103,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
if upgrade:
args += ["--upgrade"]
if user:
@@ -238,6 +240,11 @@ def _main(argv=None):
@@ -238,6 +240,11 @@
help="Install everything relative to this alternate root directory.",
)
parser.add_argument(
@@ -111,7 +115,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
"--altinstall",
action="store_true",
default=False,
@@ -256,6 +263,7 @@ def _main(argv=None):
@@ -256,6 +263,7 @@
return _bootstrap(
root=args.root,
@@ -119,9 +123,11 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
upgrade=args.upgrade,
user=args.user,
verbosity=args.verbosity,
--- a/Lib/test/test_ensurepip.py
+++ b/Lib/test/test_ensurepip.py
@@ -100,6 +100,17 @@ class TestBootstrap(EnsurepipMixin, unit
Index: Python-3.14.0rc1/Lib/test/test_ensurepip.py
===================================================================
--- Python-3.14.0rc1.orig/Lib/test/test_ensurepip.py 2025-07-23 10:10:19.969641992 +0200
+++ Python-3.14.0rc1/Lib/test/test_ensurepip.py 2025-07-23 10:10:31.691217643 +0200
@@ -100,6 +100,17 @@
unittest.mock.ANY,
)
@@ -139,9 +145,11 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
def test_bootstrapping_with_user(self):
ensurepip.bootstrap(user=True)
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -2341,7 +2341,7 @@ install: @FRAMEWORKINSTALLFIRST@ @INSTAL
Index: Python-3.14.0rc1/Makefile.pre.in
===================================================================
--- Python-3.14.0rc1.orig/Makefile.pre.in 2025-07-23 10:10:27.325708066 +0200
+++ Python-3.14.0rc1/Makefile.pre.in 2025-07-23 10:10:31.691716104 +0200
@@ -2371,7 +2371,7 @@
install|*) ensurepip="" ;; \
esac; \
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
@@ -150,7 +158,7 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
fi
.PHONY: altinstall
@@ -2352,7 +2352,7 @@ altinstall: commoninstall
@@ -2382,7 +2382,7 @@
install|*) ensurepip="--altinstall" ;; \
esac; \
$(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \
@@ -159,7 +167,9 @@ Co-Authored-By: Xavier de Gaye <xdegaye@gmail.com>
fi
.PHONY: commoninstall
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
Index: Python-3.14.0rc1/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ Python-3.14.0rc1/Misc/NEWS.d/next/Build/2019-12-16-17-50-42.bpo-31046.XA-Qfr.rst 2025-07-23 10:10:31.692253536 +0200
@@ -0,0 +1 @@
+A directory prefix can now be specified when using :mod:`ensurepip`.

View File

@@ -2,9 +2,11 @@
Makefile.pre.in | 5 +++++
1 file changed, 5 insertions(+)
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -1880,6 +1880,11 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \
Index: Python-3.14.0rc1/Makefile.pre.in
===================================================================
--- Python-3.14.0rc1.orig/Makefile.pre.in 2025-07-22 18:42:44.000000000 +0200
+++ Python-3.14.0rc1/Makefile.pre.in 2025-07-23 10:10:27.325708066 +0200
@@ -1910,6 +1910,11 @@
-DGITBRANCH="\"`LC_ALL=C $(GITBRANCH)`\"" \
-o $@ $(srcdir)/Modules/getbuildinfo.c

View File

@@ -1,3 +1,94 @@
-------------------------------------------------------------------
Wed Jul 23 08:05:20 UTC 2025 - Matej Cepl <mcepl@cepl.eu>
- Update to 3.14.0~rc1:
- Tools/Demos
- gh-136251: Fixes and usability improvements for
Tools/wasm/emscripten/web_example
- Security
- gh-135661: Fix parsing attributes with whitespaces around
the = separator in html.parser.HTMLParser according to the
HTML5 standard.
- gh-118350: Fix support of escapable raw text mode (elements
“textarea” and “title”) in html.parser.HTMLParser.
- Library
- gh-136170: Removed the unreleased
zipfile.ZipFile.data_offset property added in 3.14.0a7 as
it wasnt fully clear which behavior it should have in some
situations so the result was not always what a user might
expect.
- gh-124621: pyrepl now works in Emscripten.
- gh-136874: Discard URL query and fragment in
urllib.request.url2pathname().
- gh-130645: Enable color help by default in argparse.
- gh-136549: Fix signature of threading.excepthook().
- gh-136523: Fix wave.Wave_write emitting an unraisable when
open raises.
- gh-52876: Add missing keepends (default True)
parameter to codecs.StreamReaderWriter.readline() and
codecs.StreamReaderWriter.readlines().
- gh-136470: Correct
concurrent.futures.InterpreterPoolExecutors default thread
name.
- gh-136476: Fix a bug that was causing the
get_async_stack_trace function to miss some frames in the
stack trace.
- gh-136434: Fix docs generation of UnboundItem in
concurrent.interpreters when running with -OO.
- gh-136380: Raises AttributeError when accessing
concurrent.futures.InterpreterPoolExecutor and
subinterpreters are not available.
- gh-134759: Fix UnboundLocalError in
email.message.Message.get_payload() when the payload to
decode is a bytes object. Patch by Kliment Lamonov.
- gh-134657: asyncio: Remove some private names from
asyncio.__all__.
- Core and Builtins
- gh-136801: Fix PyREPL syntax highlighting on match cases
after multi-line case. Contributed by Olga Matoula.
- gh-136421: Fix crash when initializing datetime
concurrently.
- gh-136541: Fix some issues with the perf trampolines
on x86-64 and aarch64. The trampolines were not being
generated correctly for some cases, which could lead to
the perf integration not working correctly. Patch by Pablo
Galindo.
- gh-136517: Fixed a typo that prevented printing of
uncollectable objects when the gc.DEBUG_UNCOLLECTABLE mode
was set.
- gh-136525: Fix issue where per-thread bytecode was not
instrumented for newly created threads.
- gh-132661: Interpolation.expression now has a default, the
empty string.
- gh-132661: Reflect recent PEP 750 change.
- Disallow concatenation of string.templatelib.Template and
str. Also, disallow implicit concatenation of t-string
literals with string or f-string literals.
- gh-116738: Make functions in grp thread-safe on the free
threaded build.
- gh-135148: Fixed a bug where f-string debug expressions
(using =) would incorrectly strip out parts of strings
containing escaped quotes and # characters. Patch by Pablo
Galindo.
- gh-133136: Limit excess memory usage in the free threading
build when a large dictionary or list is resized and
accessed by multiple threads.
- gh-91153: Fix a crash when a bytearray is concurrently
mutated during item assignment.
- gh-127971: Fix off-by-one read beyond the end of a string
in string search.
- C API
- gh-112068: Revert support of nullable arguments in
PyArg_Parse().
- gh-133296: New variants for the critical section API that
accept one or two PyMutex pointers rather than PyObject
instances are now public in the non-limited C API.
- gh-134009: Expose PyMutex_IsLocked() as part of the public
C API.
- Build
- gh-135621: PyREPL no longer depends on the curses standard
library. Contributed by Łukasz Langa.
-------------------------------------------------------------------
Thu Jul 10 10:17:47 UTC 2025 - Daniel Garcia <daniel.garcia@suse.com>

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~b4
%define tarversion 3.14.0b4
Version: 3.14.0~rc1
%define tarversion 3.14.0rc1
%define tarname Python-%{tarversion}
Release: 0
Summary: Python 3 Interpreter
@@ -727,7 +727,7 @@ done
for library in \
array _asyncio binascii _bisect _bz2 cmath _codecs_* \
_csv _ctypes _datetime _decimal fcntl grp \
_csv _ctypes _decimal fcntl grp \
_hashlib _heapq _hmac _json _lsprof _lzma math mmap \
_multibytecodec _multiprocessing _pickle _posixshmem \
_posixsubprocess _queue _random resource select _ssl _socket \
@@ -1044,7 +1044,6 @@ fi
%{dynlib _codecs_tw}
%{dynlib _csv}
%{dynlib _ctypes}
%{dynlib _datetime}
%{dynlib _decimal}
%{dynlib _elementtree}
%{dynlib fcntl}