Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python315 for openSUSE:Factory 
checked in at 2026-06-22 17:29:05
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python315 (Old)
 and      /work/SRC/openSUSE:Factory/.python315.new.1956 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python315"

Mon Jun 22 17:29:05 2026 rev:14 rq:1360763 version:3.15.0~b2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python315/python315.changes      2026-04-29 
19:19:26.397004511 +0200
+++ /work/SRC/openSUSE:Factory/.python315.new.1956/python315.changes    
2026-06-22 17:29:55.606764465 +0200
@@ -1,0 +2,976 @@
+Tue Jun 16 14:50:17 UTC 2026 - Matej Cepl <[email protected]>
+
+- Update to 3.15.0~b2
+  - Security
+    - gh-149698: Update bundled libexpat to version 2.8.1 for the
+      fix for CVE 2026-45186.
+    - gh-87451: The ftplib module’s undocumented ftpcp function
+      no longer trusts the IPv4 address value returned from the
+      source server in response to the PASV command by default,
+      completing the fix for CVE-2021-4189. As with ftplib.FTP,
+      the former behavior can be re-enabled by setting the
+      trust_server_pasv_ipv4_address attribute on the source
+      ftplib.FTP instance to True. Thanks to Qi Deng at Aurascape
+      AI for the report. (bsc#1265268, CVE-2026-8328)
+    - gh-149474: Fix the binary writer in profiling.sampling not
+      firing the audit (PEP 578) when creating the output file.
+      The writer and the reader now accept any path-like object.
+      Patch by Maurycy Pawłowski-Wieroński.
+    - gh-149486: tarfile.data_filter() now validates link targets
+      using the same normalised value that is written to disk,
+      strips trailing separators from the member name when
+      resolving a symlink’s directory, and rejects link members
+      that would replace the destination directory itself. This
+      closes several path-traversal bypasses of the data
+      extraction filter. (bsc#1267821, CVE-2026-7774)
+    - gh-149079: Fix a potential denial of service in
+      unicodedata.normalize(). The canonical ordering step of
+      Unicode normalization used a quadratic-time insertion sort
+      for reordering combining characters, which could be
+      exploited with crafted input containing many combining
+      characters in non-canonical order. Replaced with
+      a linear-time counting sort for long runs. (bsc#1267581,
+      CVE-2026-3276).
+    - gh-149018: Improved protection against XML hash-flooding
+      attacks in xml.parsers.expat and xml.etree.ElementTree when
+      Python is compiled with libExpat 2.8.0 or later
+      (bsc#1264962, CVE-2026-7210).
+  - Core and Builtins
+    - gh-150374: Fix double release of the import lock on lazy
+      import reification errors.
+    - gh-149156: Fix an intermittent crash after os.fork() when
+      perf trampoline profiling is enabled and the child returns
+      through trampoline frames inherited from the parent
+      process.
+    - gh-149449: Fix a use-after-free crash when the unicodedata
+      module was removed from sys.modules and garbage-collected
+      between calls that decode \N{...} escapes or use the
+      namereplace codec error handler.
+    - gh-150107: asyncio: sendfile() and sock_sendfile() event
+      loop methods now call file.seek(offset) if file has
+      a seek() method, even if offset is 0 (default value).
+    - gh-150146: Fix a crash on a complex type variable
+      substitution.
+    - from typing import TypeVar;
+      memoryview[TypeVar("")][*typing.Mapping[..., ...]] used to
+      fail due to missing NULL check on _unpack_args C function
+      call.
+    - gh-148587: sys.lazy_modules is now a set instead of a dict
+      as initially spelled out in PEP 810.
+    - gh-150042: Fix refleak in queue.SimpleQueue.put if memory
+      allocation fails.
+    - gh-149590: Fix crash when faulthandler is imported more
+      than once.
+    - gh-149816: Fix a race condition in _PyBytes_FromList in
+      free-threading mode.
+    - gh-149816: Fix a race condition in memoryview with
+      free-threading.
+    - gh-149807: Fix hash(frozendict): compute the hash of each
+      (key, value) pair correctly. Patch by Victor Stinner.
+    - gh-149738: sqlite3: Disallow removing row_factory and
+      text_factory attributes of a connection to prevent a crash
+      on a query.
+    - gh-139808: Add branch protections for AArch64 (BTI/PAC) in
+      assembly code used by -X perf_jit (Linux perf profiler
+      integration).
+    - gh-149676: Fix frozendict | frozendict hash.
+    - gh-148829: sentinel objects now support a repr= argument
+      and their __module__ attribute is writable.
+    - gh-149642: Allow imports inside exec() calls within
+      functions under PYTHON_LAZY_IMPORTS=all.
+    - gh-144957: Fix lazy from imports of module attributes
+      provided by module-level __getattr__.
+    - gh-149459: Fix a crash in the JIT optimizer when
+      a specialized LOAD_SPECIAL guard deoptimized after
+      inserting the synthetic NULL stack entry.
+    - gh-148450: Fix abc.register() so it invalidates type
+      version tags for registered classes.
+  - Library
+    - gh-150685: Update bundled pip to 26.1.2
+    - gh-150228: The new site.StartupState class lets callers
+      batch-process PEP 829 startup configuration files across
+      multiple site directories before any startup code runs,
+      with public addsitedir(), addusersitepackages(),
+      addsitepackages(), and process() methods. The signature of
+      site.addsitedir() is unchanged from Python 3.14. The
+      defer_processing_start_files argument and the
+      process_startup_files() function added earlier in the 3.15
+      cycle have been removed; use site.StartupState instead.
+    - gh-150406: Fix a possible crash occurring during socket
+      module initialization when the system is out of memory on
+      platforms without a reentrant gethostbyname.
+    - gh-150372: readline: Fix a potential crash during tab
+      completion caused by an out-of-memory error during module
+      initialization.
+    - gh-150157: Fix a crash in free-threaded builds that occurs
+      when pickling by name objects without a __module__
+      attribute while sys.modules is concurrently being modified.
+    - gh-150175: Fix race condition in
+      unittest.mock.ThreadingMock where concurrent calls could
+      lose increments to call_count and other attributes due to
+      a missing lock in _increment_mock_call.
+    - gh-84353: Preserve non-UTF-8 encoded filenames when
+      appending to a zipfile.ZipFile. Previously, non-ASCII names
+      stored in a legacy encoding (without the UTF-8 flag bit
+      set) could be corrupted when the central directory was
+      rewritten: they were decoded as cp437 and then re-stored as
+      UTF-8.
+    - gh-149189: Revert the changes to pprint defaults. Patch by
+      Hugo van Kemenade.
+    - gh-149995: Update various docstrings in typing.
+    - gh-88726: The email package now uses standard MIME charset
+      names “gb2312” and “big5” instead of non-standard names
+      “eucgb2312_cn” and “big5_tw”.
+    - gh-149571: Fix the C implementation of
+      xml.etree.ElementTree.Element.itertext(): it no longer
+      emits text for comments and processing instructions.
+    - gh-149921: Fix reference leaks in error paths of the
+      _interpchannels and _interpqueues extension modules.
+    - gh-142349: Add lazy to the list of support topic by help().
+    - gh-149819: Fix regression in site.addsitedir() where .pth
+      files were no longer processed in Python subprocesses. This
+      happened because site.main() seeded known_paths with
+      entries inherited from the parent process, causing
+      addsitedir to skip .pth processing.
+    - gh-149816: Fix a race condition in _random.Random.__init__
+      method in free-threading mode.
+    - gh-149801: Add IANA registered names and aliases with
+      leading zeros before number (like IBM00858, CP00858,
+      IBM01140, CP01140) for corresponding codecs.
+    - gh-149718: Coalesce consecutive identical stack frames in
+      Tachyon, so aggregating collectors (pstats, collapsed,
+      flamegraph, gecko) receive one collect. Improves sample
+      rate 3x, error rate and missed rate drop by 70%. Patch by
+      Maurycy Pawłowski-Wieroński.
+    - gh-149701: Fix bad return code from Lib/venv/bin/activate
+      if hashing is disabled
+    - gh-149504: Fix site.addsitedir() to allow re-entrant calls
+      from within startup files. Previously, a .pth file
+      containing an import line that called site.addsitedir() (or
+      a .start entry point doing the same) could crash with
+      RuntimeError: dictionary changed size during iteration
+      during site initialization, breaking tools such as uv run
+      --with.
+    - gh-149584: Fix excessive overhead in the Tachyon profiler
+      when inspecting a remote process by avoiding repeated
+      remote page-cache scans, batching predicted remote reads,
+      and reusing cached profiler result objects. Patch by Pablo
+      Galindo and Maurycy Pawłowski-Wieroński.
+    - gh-139489: Add xml.is_valid_text() to xml.__all__.
+    - gh-149614: Fix a regression that broke the ability to
+      deepcopy argparse.ArgumentParser instances.
+    - gh-112821: In the REPL, autocompletion might run arbitrary
+      code in the getter of a descriptor. If that getter raised
+      an exception, autocompletion would fail to present any
+      options for the entire object. Autocompletion now works as
+      expected for these objects.
+    - gh-149534: Fix merging of collections.defaultdict and
+      frozendict.
+    - gh-149388: Make asyncio.windows_utils.PipeHandle closing
+      idempotent.
+    - gh-149489: Fix ElementTree serialization to HTML. The
+      content of comments, processing instructions and elements
+      “xmp”, “iframe”, “noembed”, “noframes”, and “plaintext” is
+      no longer escaped. The “plaintext” element no longer have
+      the closing tag. Add support of empty attributes (with
+      value None).
+    - gh-149056: Fix json.load() not forwarding the array_hook
+      argument to json.loads(). Patch by Thomas Kowalski.
+    - gh-149046: io: Fix io.StringIO serialization: no longer
+      call str(obj) on str subclasses. Patch by Thomas Kowalski.
+    - gh-148441: xml.parsers.expat: prevent a crash in
+      CharacterDataHandler() when the character data size exceeds
+      the parser’s buffer size.
+    - gh-146452: Fix segfault in pickle when pickling
+      a dictionary concurrently mutated by another thread in the
+      free-threaded build.
+    - gh-86533: The os.makedirs() function and
+      pathlib.Path.mkdir() method now have a parent_mode
+      parameter to specify the mode for intermediate directories
+      when creating parent directories. This allows one to match
+      the behavior from Python 3.6 and earlier for os.makedirs().
+    - gh-134261: zip: On reproducible builds, ZipFile uses UTC
+      instead of the local time when writing file datetimes to
+      avoid underflows.
+    - gh-133998: Fix struct.error exception when creating a file
+      with gzip.GzipFile or compressing data with gzip.compress()
+      if the system time is outside the range 00:00:00 UTC,
+      January 1, 1970 through 06:28:15 UTC, February 7, 2106, or
+      explicitly passed mtime argument is outside the range 0 to
+      2**32-1.
+    - gh-128110: Fix bug in the parsing of email address headers
+      that could result in extraneous spaces in the decoded text
+      when using a modern email policy. Space between pairs of
+      adjacent RFC 2047 encoded-words is now ignored, per section
+      6.2 (and consistent with existing parsing of unstructured
+      headers like Subject).
+    - gh-107398: Fix tarfile stream mode exception when process
+      the file with the gzip extra field.
+    - gh-121109: Fix tarfile performance issue when reading
+      archives in streaming mode (e.g. r|*).
+    - bpo-45509: Gzip headers are now checked for corrupted NAME,
+      COMMENT and HCRC fields.
+  - Tests
+    - gh-150387: Fix hang in
+      
test.test_profiling.test_sampling_profiler.test_live_collector_ui.TestLiveModeErrors.test_run_failed_script_live
+      on slow buildbots. The test now always queues a final
+      q keystroke so the live TUI loop exits even when the
+      profiler collects enough samples to enter the post-finished
+      input loop.
+    - gh-149776: Fix test_socket on Linux kernel 7.1 and newer:
+      skip UDP Lite tests if it’s not supported. Patch by Victor
+      Stinner.
+  - Build
+    - gh-148294: Corrected the use of AC_PATH_TOOL in
+      configure.ac to allow a C++ compiler to be found on PATH.
+    - gh-148260: On Linux when Python is linked to the musl
+      C library, use a thread stack size of at least 1 MiB
+      instead of musl default which is 128 kiB. Patch by Victor
+      Stinner.
+  - Windows
+    - gh-149786: Fixes virtual environment launchers on Windows
+      free-threaded builds.
+    - gh-124111: Updated Windows builds to use Tcl/Tk 9.0.3.
+    - gh-138489: Windows distributions now include
+      a build-details.json file (see PEP 739). The legacy
+      installer does not install it, but all other distributions
+      from python.org and all preset configurations in the
+      PC\layout script will include one.
+    - gh-149029: Update Windows installer to ship with SQLite
+      3.53.1. macOS
+    - gh-150644: When system logging is enabled (with
+      config.use_system_logger, messages are now tagged as
+      public. This allows the macOS 26 system logger to view
+      messages without special configuration.
+    - gh-149029: Update macOS installer to ship with SQLite
+      version 3.53.1.
+  - Tools/Demos
+    - gh-150258: Update the tooltip on the Tachyon flame graph to
+      show both absolute and relative percentages.
+  - C API
+    - gh-149725: Add PySentinel_CheckExact() for exact sentinel
+      type tests to accompany the existing PySentinel_Check().
+    - gh-145235: Made PyDict_AddWatcher(), PyDict_ClearWatcher(),
+      PyDict_Watch(), and PyDict_Unwatch() thread-safe on the
+      free threaded build.
+- Update to 3.15.0~b1:
+  - Security
+    - gh-149254: Update Android and iOS installer to use OpenSSL
+      3.5.6.
+    - gh-149017: Update bundled libexpat to version 2.8.0.
+    - gh-148252: Fixed string table and sample record bounds
+      checks in _remote_debugging when decoding certain .pyb
+      inputs on 32-bit builds. Patch by Maurycy
+      Pawłowski-Wieroński.
+    - gh-90309: Base64-encode values when embedding cookies to
+      JavaScript using the http.cookies.BaseCookie.js_output()
+      method to avoid injection and escaping. (bsc#1262654,
+      CVE-2026-6019)
+    - gh-148808: Added buffer boundary check when using nbytes
+      parameter with
+      asyncio.AbstractEventLoop.sock_recvfrom_into(). Only
+      relevant for Windows and the asyncio.ProactorEventLoop.
+    - gh-148395: Fix a dangling input pointer in
+      lzma.LZMADecompressor, bz2.BZ2Decompressor, and internal
+      zlib._ZlibDecompressor when memory allocation fails with
+      MemoryError, which could let a subsequent decompress() call
+      read or write through a stale pointer to the
+      already-released caller buffer (bsc#1262098,
+      CVE-2026-6100).
+    - gh-148252: Fixed stack depth calculation in
+      _remote_debugging when decoding certain .pyb inputs on
+      32-bit builds. Issue originally identified and diagnosed by
+      Tristan Madani (@TristanInSec on GitHub).
+    - gh-148178: Hardened _remote_debugging by validating remote
+      debug offset tables before using them to size memory reads
+      or interpret remote layouts.
+    - gh-148169: A bypass in webbrowser allowed URLs prefixed
+      with %action to pass the dash-prefix safety check
+      (bsc#1262319, CVE-2026-4786).
+    - gh-146581: Fix vulnerability in shutil.unpack_archive() for
+      ZIP files on Windows which allowed to write files outside
+      of the destination tree if the patch in the archive
+      contains a Windows drive prefix. Now such invalid paths
+      will be skipped. Files containing “..” in the name (like
+      “foo..bar”) are no longer skipped.
+    - gh-137586: Fix a PATH-injection vulnerability in webbrowser
+      on macOS where osascript was invoked without an absolute
++++ 679 more lines (skipped)
++++ between /work/SRC/openSUSE:Factory/python315/python315.changes
++++ and /work/SRC/openSUSE:Factory/.python315.new.1956/python315.changes

Old:
----
  CVE-2026-1502-reject-CRLF-HTTP-tunnel.patch
  CVE-2026-4786-webbrowser-open-action.patch
  CVE-2026-5713-validate-debug-load.patch
  CVE-2026-6019-Morsel-js_output.patch
  CVE-2026-6100-use-after-free-decompression.patch
  Python-3.15.0a8.tar.xz
  Python-3.15.0a8.tar.xz.sigstore
  macros.python3

New:
----
  Python-3.15.0b2.tar.xz
  Python-3.15.0b2.tar.xz.sigstore
  test_UDPLITE_support.patch

----------(Old B)----------
  Old:- Remove upstreamed patches:
  - CVE-2026-1502-reject-CRLF-HTTP-tunnel.patch
  - CVE-2026-4786-webbrowser-open-action.patch
  Old:  - CVE-2026-1502-reject-CRLF-HTTP-tunnel.patch
  - CVE-2026-4786-webbrowser-open-action.patch
  - CVE-2026-5713-validate-debug-load.patch
  Old:  - CVE-2026-4786-webbrowser-open-action.patch
  - CVE-2026-5713-validate-debug-load.patch
  - CVE-2026-6019-Morsel-js_output.patch
  Old:  - CVE-2026-5713-validate-debug-load.patch
  - CVE-2026-6019-Morsel-js_output.patch
  - CVE-2026-6100-use-after-free-decompression.patch
  Old:  - CVE-2026-6019-Morsel-js_output.patch
  - CVE-2026-6100-use-after-free-decompression.patch
- For &ix86 we build `--without-frame-pointers`
----------(Old E)----------

----------(New B)----------
  New:
- Add test_UDPLITE_support.patch which improves testing for the
  support of IPPROTO_UDPLITE, which could be not present although
----------(New E)----------

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

Other differences:
------------------
++++++ python315.spec ++++++
--- /var/tmp/diff_new_pack.A1MWZ1/_old  2026-06-22 17:29:56.710802923 +0200
+++ /var/tmp/diff_new_pack.A1MWZ1/_new  2026-06-22 17:29:56.714803063 +0200
@@ -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.15.0~a8
-%define         tarversion 3.15.0a8
+Version:        3.15.0~b2
+%define         tarversion 3.15.0b2
 %define         tarname    Python-%{tarversion}
 Release:        0
 Summary:        Python 3 Interpreter
@@ -174,7 +174,6 @@
 Source2:        baselibs.conf
 Source3:        README.SUSE
 Source4:        externally_managed.in
-Source7:        macros.python3
 Source8:        import_failed.py
 Source9:        import_failed.map
 Source10:       pre_checkin.sh
@@ -228,24 +227,13 @@
 # PATCH-FIX-UPSTREAM skip-test_array_alignment.patch gh#python/cpython#144725 
[email protected]
 # skip failing test
 Patch43:        skip-test_array_alignment.patch
-# PATCH-FIX-UPSTREAM CVE-2026-6100-use-after-free-decompression.patch 
bsc#1262098 [email protected]
-# NULL dangling pointer to avoid use-after-free error
-Patch44:        CVE-2026-6100-use-after-free-decompression.patch
-# PATCH-FIX-UPSTREAM CVE-2026-4786-webbrowser-open-action.patch bsc#1262319 
[email protected]
-# Fix webbrowser %action substitution bypass of dash-prefix check
-Patch45:        CVE-2026-4786-webbrowser-open-action.patch
-# PATCH-FIX-UPSTREAM CVE-2026-5713-validate-debug-load.patch bsc#1262132 
[email protected]
-# Validate remote debug offset tables on load
-Patch46:        CVE-2026-5713-validate-debug-load.patch
-# PATCH-FIX-UPSTREAM CVE-2026-1502-reject-CRLF-HTTP-tunnel.patch bsc#1261969 
[email protected]
-# Reject CR/LF in HTTP tunnel request headers
-Patch47:        CVE-2026-1502-reject-CRLF-HTTP-tunnel.patch
-# PATCH-FIX-UPSTREAM CVE-2026-6019-Morsel-js_output.patch bsc#1262654 
[email protected]
-# Base64-encode cookie values embedded in JS
-Patch48:        CVE-2026-6019-Morsel-js_output.patch
+# PATCH-FIX-OPENSUSE test_UDPLITE_support.patch gh#python/cpython#149078 
[email protected]
+# improve testing of the presence of IPPROTO_UDPLITE support
+Patch49:        test_UDPLITE_support.patch
 #### Python 3.15 DEVELOPMENT PATCHES
 BuildRequires:  autoconf-archive
 BuildRequires:  automake
+BuildRequires:  crypto-policies-scripts
 BuildRequires:  fdupes
 BuildRequires:  gmp-devel
 BuildRequires:  lzma-devel
@@ -261,7 +249,6 @@
 BuildRequires:  pkgconfig(zlib)
 #!BuildIgnore:  gdk-pixbuf-loader-rsvg
 %if 0%{?suse_version} >= 1550 && %{without base}
-# The provider for python(abi) is in rpm-build-python
 # Skip for the base flavor: rpm-build-python requires python3-base, which
 # creates an unresolvable dependency loop when building python3xx-base itself.
 BuildRequires:  rpm-build-python
@@ -438,7 +425,9 @@
 # Explicitly provided because rpm-build-python (which auto-generates this)
 # cannot be installed in the base flavor build root due to a bootstrap cycle:
 # rpm-build-python -> python3-base -> (this package)
+%if %{with GIL}
 Provides:       python(abi) = %{python_version}
+%endif
 
 %description -n %{python_pkg_name}-base
 Python is an interpreted, object-oriented programming language, and is
@@ -578,6 +567,7 @@
 
 export CFLAGS="%{optflags} -IVendor/"
 
+# gh#python/cpython#151602 for that without-frame-pointers
 %configure \
     --with-platlibdir=%{_lib} \
     --docdir=%{_docdir}/python \
@@ -599,6 +589,9 @@
 %if %{with experimental_jit}
     --enable-experimental-jit=yes-off \
 %endif
+%ifarch %ix86
+    --without-frame-pointers \
+%endif
 %if %{without GIL}
     --disable-gil \
 %endif
@@ -736,10 +729,10 @@
     _posixsubprocess _queue _random resource select _ssl _socket \
     _statistics _struct syslog termios _testbuffer _testimportmultiple \
     _testmultiphase unicodedata zlib _ctypes_test _testinternalcapi _testcapi \
-    _testclinic _testclinic_limited xxlimited xxlimited_35 _remote_debugging \
-    _testlimitedcapi _xxtestfuzz _elementtree pyexpat _md5 _sha1 \
+    _testclinic _testclinic_limited xxlimited xxlimited_35 xxlimited_3_13 \
+    _remote_debugging _testlimitedcapi _xxtestfuzz _elementtree pyexpat \
     _interpchannels _interpqueues _interpreters \
-    _sha2 _blake2 _sha3 _uuid _zstd _zoneinfo \
+    _md5 _sha1 _sha2 _blake2 _sha3 _uuid _zstd _zoneinfo \
     _testsinglephase xxsubtype
 do
     eval rm "%{buildroot}%{sitedir}/lib-dynload/$library.*"
@@ -852,12 +845,6 @@
 # Remove -IVendor/ from python-config boo#1231795
 sed -i 's/-IVendor\///' %{buildroot}%{_bindir}/python%{python_abi}-config
 
-# RPM macros
-%if %{primary_interpreter}
-mkdir -p %{buildroot}%{_rpmconfigdir}/macros.d/
-install -m 644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/macros.d/ # 
macros.python3
-%endif
-
 # import_failed hooks
 FAILDIR=%{buildroot}/%{sitedir}/_import_failed
 mkdir $FAILDIR
@@ -1015,10 +1002,6 @@
 %endif
 # license text, not a doc because the code can use it at run-time
 %{sitedir}/LICENSE.txt
-# RPM macros
-%if %{primary_interpreter}
-%{_rpmconfigdir}/macros.d/macros.python3
-%endif
 # build-details
 %{_libdir}/python3*/build-details.json
 
@@ -1074,6 +1057,7 @@
 %{dynlib _uuid}
 %{dynlib xxlimited}
 %{dynlib xxlimited_35}
+%{dynlib xxlimited_3_13}
 %{dynlib xxsubtype}
 %{dynlib zlib}
 %{dynlib _zoneinfo}

++++++ Python-3.15.0a8.tar.xz -> Python-3.15.0b2.tar.xz ++++++
/work/SRC/openSUSE:Factory/python315/Python-3.15.0a8.tar.xz 
/work/SRC/openSUSE:Factory/.python315.new.1956/Python-3.15.0b2.tar.xz differ: 
char 26, line 1

++++++ Python-3.15.0b2.tar.xz.sigstore ++++++
{"mediaType": "application/vnd.dev.sigstore.bundle.v0.3+json", 
"verificationMaterial": {"certificate": {"rawBytes": 
"MIIDITCCAqigAwIBAgIUHmbBhF4jjLUnNhIYBQOaslMVLVcwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNjAyMTczNzE4WhcNMjYwNjAyMTc0NzE4WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEc9ky2FHaaQVmok4Simv/MTtSopw0HT2hcHQV9oOEe3maDZwLx40MoaSdP9bK9XXmMXvhkayOur57o/w3BdUSkKOCAccwggHDMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUxLZW58R5scMTa7vy6bTB64E6EY0wHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wHQYDVR0RAQH/BBMwEYEPaHVnb0BweXRob24ub3JnMCwGCisGAQQBg78wAQEEHmh0dHBzOi8vZ2l0aHViLmNvbS9sb2dpbi9vYXV0aDAuBgorBgEEAYO/MAEIBCAMHmh0dHBzOi8vZ2l0aHViLmNvbS9sb2dpbi9vYXV0aDBSBgorBgEEAYO/MAEYBEQMQkNnY3hNekkwTWpJMUVpWm9kSFJ3Y3pvbE1rWWxNa1puYVhSb2RXSXVZMjl0SlRKR2JHOW5hVzRsTWtadllYVjBhQTCBigYKKwYBBAHWeQIEAgR8BHoAeAB2AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABnolpRdMAAAQDAEcwRQIhAM+5vT4NOGsCNyGLCz/TDrO1zgYOrs8xiObIvfovVT9ZAiA35AKlk
 
yUyJOeM8yu3EooPgS7Fr1Y0L5bf0REzALOUoTAKBggqhkjOPQQDAwNnADBkAjBT3eBc2Aw/JKi9BXgRMQgSszlrjhIfA9l5uom7XqI1s6p5gQuGHB6KnDbl4DUr1U4CMDodWR+9v7lzXLSeMVG9BLwYxTFyqS9njY+CY4IxPiXsvogPmNpiDWWixKXyeeNCeg=="},
 "tlogEntries": [{"logIndex": "1704748907", "logId": {"keyId": 
"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion": {"kind": 
"hashedrekord", "version": "0.0.1"}, "integratedTime": "1780421838", 
"inclusionPromise": {"signedEntryTimestamp": 
"MEQCICoTZYb/zhz8nBCpFTa5ANq9sTHbSC29T1GftPeXr/hOAiB0vuT+/AXRFV84yCT73RrUSdFWQvwWom+xKEacI9WkuA=="},
 "inclusionProof": {"logIndex": "1582844645", "rootHash": 
"6qFxnYkigNpj16EDZD+k7NqCl9640pVQ4J/frg3dLvs=", "treeSize": "1582844649", 
"hashes": ["IkkfGT8jyrnH8JpKqZKkbSvHZqHp0SVrI/L0BjWidNY=", 
"iCUhZkGsMAXG3kv+m9URwFYuGyuh699l30gQH9PWu0Y=", 
"jEVGS4SPNKbmu+0Vqe0jTYP4IM4wGoSOMJVM8fyX2s8=", 
"g54uvZZmxobSu+efV3YgDffHpdjhXbq441D+t7p6ScE=", 
"c22YuiwikvgC8esaDl3pEiEqW/XpeUO9zchCch8MOf0=", 
"KTIS+tDrIXAmVFZaKuO2SgNT8529T7RSFTjBntUR6O8=", "JVnVx8Ljeja9MpYHU
 G/8izinFj3wEDPqAgDuQKdzAvk=", "RIxhB9AOkIkGgOnQS4iYqdv7LFXTYVNv5vCRPqffdCs=", 
"2j/53VNmt2TlS4Aule6ZxCWbkKgdkA3ldjcko9eB5XY=", 
"Y6M44ZSYwlSfJEaEhk1PHbCdRZj7IOJIPF8z7N+kEGs=", 
"j1rCX1QuUdofyyxDgCkPUcpnuxAZYUdfYMdo3TkFRMc=", 
"SoJy6N97isYHMWJfw3FaePdu5dYWeCfXobH5//JNp+o=", 
"nASV631t7gYxGYgOJTrtSamCWnvYVtLAqzvU4X/rapA=", 
"NSkfjqosjcbjuITRR3k++3CKLDql/hao4MUycvdrMXc=", 
"hn+ppu7vwlSCi7W1L5Z750bpAdr+WUAJLSUnb8qLy3k=", 
"r5nn9+mbgUQL4m8neTg/XjYkdf2hD/cvZMsNR/v0cBU=", 
"eT+F471g2HJfd43U4j4L1PIBkt4rLbHQd/pOR/rllO0=", 
"DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="], "checkpoint": {"envelope": 
"rekor.sigstore.dev - 
1193050959916656506\n1582844649\n6qFxnYkigNpj16EDZD+k7NqCl9640pVQ4J/frg3dLvs=\n\n\u2014
 rekor.sigstore.dev 
wNI9ajBFAiBaIQG9ageD2JjAIYIiq3Pi9b22MgFQH2kDUDod8qgoSwIhALl02jR180QymU8cqBfCo8VuxM0JcAevLzJ9cMxzOXPf\n"}},
 "canonicalizedBody": 
"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJkMTRmNDc0YWI2NzllOTBiY
 
zczNGIwMmZmNTg0NDdiNmVjOTlhODIxYWY2MWQ2ZmYwYzFkYTBmODZlMzQxYTcxIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUNaNmd5VnkzOWEreXBHOXUzUlgrY1Y4Zi8vWVFTT1pQdDJoekpEYlkzSTVnSWhBUEY0d2JWOEFWK0lidVFFV2lHK0dRTy9YQVJsbWZybjUza0FrcFc0TS9PRiIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVUkpWRU5EUVhGcFowRjNTVUpCWjBsVlNHMWlRbWhHTkdwcVRGVnVUbWhKV1VKUlQyRnpiRTFXVEZaamQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDVxUVhsTlZHTjZUbnBGTkZkb1kwNU5hbGwzVG1wQmVVMVVZekJPZWtVMFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZqT1d0NU1rWklZV0ZSVm0xdmF6UlRhVzEyTDAxVWRGTnZjSGN3U0ZReWFHTklVVllLT1c5UFJXVXpiV0ZFV25kTWVEUXdUVzloVTJSUU9XSkxPVmhZYlUxWWRtaHJZWGxQZFhJMU4yOHZkek5DWkZWVGEwdFBRMEZqWTNkblowaEVUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVl
 
Y0VEZwWENqVTRValZ6WTAxVVlUZDJlVFppVkVJMk5FVTJSVmt3ZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDBoUldVUldVakJTUVZGSUwwSkNUWGRGV1VWUVlVaFdibUl3UW5kbFdGSnZZakkwZFdJelNtNU5RM2RIUTJselIwRlJVVUpuTnpoM1FWRkZSUXBJYldnd1pFaENlazlwT0haYU1td3dZVWhXYVV4dFRuWmlVemx6WWpKa2NHSnBPWFpaV0ZZd1lVUkJkVUpuYjNKQ1owVkZRVmxQTDAxQlJVbENRMEZOQ2todGFEQmtTRUo2VDJrNGRsb3liREJoU0ZacFRHMU9kbUpUT1hOaU1tUndZbWs1ZGxsWVZqQmhSRUpUUW1kdmNrSm5SVVZCV1U4dlRVRkZXVUpGVVUwS1VXdE9ibGt6YUU1bGEydDNWRmR3U2sxVlZuQlhiVGxyVTBaS00xa3pjSFppUlRGeVYxZDRUbUV4Y0hWWlZtaFRZakpTV0ZOWVZscE5hbXd3VTJ4U1N3cFNNa3BJVDFjMWFGWjZVbk5VVjNSaFpHeHNXVlpxUW1oUlZFTkNhV2RaUzB0M1dVSkNRVWhYWlZGSlJVRm5VamhDU0c5QlpVRkNNa0ZPTURsTlIzSkhDbmg0UlhsWmVHdGxTRXBzYms1M1MybFRiRFkwTTJwNWRDODBaVXRqYjBGMlMyVTJUMEZCUVVKdWIyeHdVbVJOUVVGQlVVUkJSV04zVWxGSmFFRk5LelVLZGxRMFRrOUhjME5PZVVkTVEzb3ZWRVJ5VHpGNloxbFBjbk00ZUdsUFlrbDJabTkyVmxRNVdrRnBRVE0xUVV0c2EzbFZlVXBQWlUwNGVYVXpSVzl2VUFwblV6ZEdjakZaTUV3MVltWXdVa1Y2UVV4UFZXOVVRVXRDWjJkeGFHdHFUMUJSVVV
 
SQmQwNXVRVVJDYTBGcVFsUXpaVUpqTWtGM0wwcExhVGxDV0dkU0NrMVJaMU56ZW14eWFtaEpaa0U1YkRWMWIyMDNXSEZKTVhNMmNEVm5VWFZIU0VJMlMyNUVZbXcwUkZWeU1WVTBRMDFFYjJSWFVpczVkamRzZWxoTVUyVUtUVlpIT1VKTWQxbDRWRVo1Y1ZNNWJtcFpLME5aTkVsNFVHbFljM1p2WjFCdFRuQnBSRmRYYVhoTFdIbGxaVTVEWldjOVBRb3RMUzB0TFVWT1JDQkRSVkpVU1VaSlEwRlVSUzB0TFMwdENnPT0ifX19fQ=="}],
 "timestampVerificationData": {}}, "messageSignature": {"messageDigest": 
{"algorithm": "SHA2_256", "digest": 
"0U9HSrZ56QvHNLAv9YRHtuyZqCGvYdb/DB2g+G40GnE="}, "signature": 
"MEYCIQCZ6gyVy39a+ypG9u3RX+cV8f//YQSOZPt2hzJDbY3I5gIhAPF4wbV8AV+IbuQEWiG+GQO/XARlmfrn53kAkpW4M/OF"}}

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.A1MWZ1/_old  2026-06-22 17:29:56.862808218 +0200
+++ /var/tmp/diff_new_pack.A1MWZ1/_new  2026-06-22 17:29:56.866808358 +0200
@@ -1,6 +1,6 @@
-mtime: 1777389487
-commit: db293248026c1d96752c7c1824197f4395ab0ae8a863eba5b9f004f621e0338e
+mtime: 1781728243
+commit: 7a9e7096519ee415e97198209ffee048a08e34c23e3cb2efab548f22ec1f7ec4
 url: https://src.opensuse.org/python-interpreters/python315
-revision: db293248026c1d96752c7c1824197f4395ab0ae8a863eba5b9f004f621e0338e
+revision: 7a9e7096519ee415e97198209ffee048a08e34c23e3cb2efab548f22ec1f7ec4
 projectscmsync: https://src.opensuse.org/python-interpreters/_ObsPrj
 

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-06-17 22:30:43.000000000 +0200
@@ -0,0 +1,5 @@
+*.obscpio
+*.osc
+_build.*
+.pbuild
+python315-*-build/

++++++ gh139257-Support-docutils-0.22.patch ++++++
--- /var/tmp/diff_new_pack.A1MWZ1/_old  2026-06-22 17:29:57.082815882 +0200
+++ /var/tmp/diff_new_pack.A1MWZ1/_new  2026-06-22 17:29:57.086816022 +0200
@@ -7,13 +7,13 @@
  Doc/tools/extensions/pyspecific.py |   18 ++++++++++++++++++
  1 file changed, 18 insertions(+)
 
-Index: Python-3.15.0a8/Doc/tools/extensions/pyspecific.py
+Index: Python-3.15.0b2/Doc/tools/extensions/pyspecific.py
 ===================================================================
---- Python-3.15.0a8.orig/Doc/tools/extensions/pyspecific.py    2026-04-08 
13:45:33.788093782 +0200
-+++ Python-3.15.0a8/Doc/tools/extensions/pyspecific.py 2026-04-08 
13:46:02.807521346 +0200
+--- Python-3.15.0b2.orig/Doc/tools/extensions/pyspecific.py    2026-06-02 
17:28:41.000000000 +0200
++++ Python-3.15.0b2/Doc/tools/extensions/pyspecific.py 2026-06-16 
20:07:40.232951315 +0200
 @@ -24,6 +24,24 @@
  # Used in conf.py and updated here by python/release-tools/run_release.py
- SOURCE_URI = 'https://github.com/python/cpython/tree/main/%s'
+ SOURCE_URI = 'https://github.com/python/cpython/tree/3.15/%s'
  
 +# monkey-patch reST parser to disable alphabetic and roman enumerated lists
 +def _disable_alphabetic_and_roman(text):

++++++ python-3.3.0b1-localpath.patch ++++++
--- /var/tmp/diff_new_pack.A1MWZ1/_old  2026-06-22 17:29:57.174819087 +0200
+++ /var/tmp/diff_new_pack.A1MWZ1/_new  2026-06-22 17:29:57.182819365 +0200
@@ -2,12 +2,12 @@
  Lib/site.py |    2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-Index: Python-3.15.0a7/Lib/site.py
+Index: Python-3.15.0b2/Lib/site.py
 ===================================================================
---- Python-3.15.0a7.orig/Lib/site.py   2026-03-10 21:55:34.774030935 +0100
-+++ Python-3.15.0a7/Lib/site.py        2026-03-10 21:55:45.838165991 +0100
-@@ -80,7 +80,7 @@
- import errno
+--- Python-3.15.0b2.orig/Lib/site.py   2026-06-16 20:06:48.442161632 +0200
++++ Python-3.15.0b2/Lib/site.py        2026-06-16 20:07:29.659404808 +0200
+@@ -54,7 +54,7 @@
+ lazy import warnings
  
  # Prefixes for site-packages; add additional prefixes like /usr/local here
 -PREFIXES = [sys.prefix, sys.exec_prefix]

++++++ test_UDPLITE_support.patch ++++++
---
 Lib/test/test_socket.py |   18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

Index: Python-3.15.0b2/Lib/test/test_socket.py
===================================================================
--- Python-3.15.0b2.orig/Lib/test/test_socket.py        2026-06-16 
20:06:50.647664953 +0200
+++ Python-3.15.0b2/Lib/test/test_socket.py     2026-06-16 20:07:44.984538637 
+0200
@@ -170,6 +170,22 @@
     return (cid is not None)
 
 
+def _have_socket_udplite():
+    """Check whether UDPLITE sockets are supported on this host."""
+    if not hasattr(socket, "IPPROTO_UDPLITE"):
+        return False
+    # Older Android versions block UDPLITE with SELinux.
+    if support.is_android and platform.android_ver().api_level < 29:
+        return False
+    try:
+        s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, 
socket.IPPROTO_UDPLITE)
+    except (AttributeError, OSError):
+        return False
+    else:
+        s.close()
+    return True
+
+
 def _have_socket_bluetooth():
     """Check whether AF_BLUETOOTH sockets are supported on this host."""
     try:
@@ -266,7 +282,7 @@
 
 HAVE_SOCKET_VSOCK = _have_socket_vsock()
 
-HAVE_SOCKET_UDPLITE = _have_udp_lite()
+HAVE_SOCKET_UDPLITE = _have_socket_udplite()
 
 HAVE_SOCKET_BLUETOOTH = _have_socket_bluetooth()
 

Reply via email to