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-10-29 20:36:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python315 (Old) and /work/SRC/openSUSE:Factory/.python315.new.1255 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python315" Thu Oct 29 20:36:03 2026 rev:23 rq:1393663 version:3.15.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python315/python315.changes 2026-10-22 17:00:30.704504439 +0200 +++ /work/SRC/openSUSE:Factory/.python315.new.1255/python315.changes 2026-10-29 20:36:07.652053610 +0100 @@ -1,0 +2,1087 @@ +Wed Oct 28 09:52:03 UTC 2026 - Matej Cepl <[email protected]> + +- Update to 3.15.2: + - Security + - gh-160300: Fix http.cookiejar.DefaultCookiePolicy accepting + and returning cookies with a negative Version attribute + without checking their domain against the request host. + Such cookies are now ignored. + - CVE-2026-114583, gh-160097: tarfile.tar_filter() now + rejects link members whose path resolves to the destination + directory itself, as tarfile.data_filter() already did. + (bsc#1288258) + - CVE-2026-115557, gh-160040: ssl now rejects TLS certificate + chains that contain any of a set of compromised eMudhra + intermediate CA keys. This is an extraordinary measure and + a last line of defense: removing trust is primarily the job + of the platform root store, and the built-in denylist only + blocks connections while that update has not yet reached + the OS, a container image, or a bundled trust store in + various Python packages. Entries are added to the denylist + only under a very high threshold. The denylist matches on + the public key (the SHA-256 digest of the RFC 5280 + SubjectPublicKeyInfo), so it also covers the cross-signed + certificates that reuse one of the distrusted keys. + (bsc#1287903, bsc#1287357) + - Core and Builtins + - gh-160491: Fix the location reported for invalid escape + sequences in f-strings and t-strings. The SyntaxError now + points at the literal part that contains the escape, + instead of at the closing quote. + - gh-160268: Fix a crash in tokenize when a mismatched + closing bracket follows the opening brace of an f-string or + t-string replacement field, as in f'{]a'. It now raises the + same “unmatched” error as the parser. + - gh-106045: Fix venv path discovery when the base executable + resolves to a location outside the installation pointed to + by the home key in pyvenv.cfg. The standard library is now + found from home, and extension modules from the resolved + executable’s installation, instead of falling back to the + compiled-in prefix. + - gh-160162: Fix a crash on 32-bit platforms when left + shifting an int by a count close to sys.maxsize * + sys.int_info.bits_per_digit. OverflowError is now raised, + as for other too large counts. + - gh-160179: Fix bytearray.__init__() leaving uninitialized + memory in the object when it fails on a list or tuple + containing an integer not in range(256). The object is now + empty after the failed call. + - gh-159739: Fix a possible crash when assigning metadata to + classmethod or staticmethod objects. + - gh-159739: Fix a race in list.__sizeof__() when a list is + concurrently resized on a free-threaded build. + - gh-159739: Fix a reference leak when the value of a type + alias is evaluated recursively or concurrently. + - gh-159739: Fix a crash in free-threaded builds when + codecs.unregister() is called concurrently. + - gh-159963: Fix a regression in Python 3.15.0 where threads + importing submodules of packages for the first time could + raise _DeadlockError or a spurious “partially initialized + module” ImportError, or block one another, with no + circular import involved. importlib.import_module() now + returns the partially initialized module in a cross-thread + circular import, as the import statement does, instead of + raising _DeadlockError. + - gh-159739: Fix reference leaks when free-threaded garbage + collection aborts early because of an allocation error. + - gh-159739: Prevent free-threaded builds from interning and + immortalizing complex subclasses in code object constants. + - gh-159739: Fix a reference leak in binary, ternary, and + comparison operations on weak reference proxies when + another operand is a dead proxy. + - gh-159739: Fix a crash when constructing an error for + invalid generic alias arguments. + - gh-159739: Allow the garbage collector to break reference + cycles involving property accessors or names. + - gh-159739: Fix a crash in warnings.warn() when + skip_file_prefixes is an empty tuple subclass. Propagate + allocation errors when creating the fallback filename. + - gh-159431: Fix an assertion failure, or an immortal object + becoming mortal, on the free threaded build when an object + passed to the internal delayed decref mechanism is immortal + or becomes immortal before the delayed decref is processed + by the garbage collector. + - gh-159294: Fix a crash in a debug build when creating an + ExceptionGroup or BaseExceptionGroup fails with + MemoryError. Patch by Christian Aurich Zanettini Martins. + - gh-159244: Fix a crash in dict and dict.update() in the + free-threaded build when another thread concurrently + mutates a list used as a key/value pair. Patch by Christian + Aurich Zanettini Martins. + - gh-159111: Update mimalloc version from 2.1.2 to 2.5.2. + Patch by Donghee Na. + - gh-154318: Fix a crash when hashing a deeply nested tuple + or frozendict. A RecursionError is now raised instead of + overflowing the C stack. + - gh-151818: Fix a double-free crash in list.append() (the + specialized CALL_LIST_APPEND instruction) when growing the + list fails with MemoryError. + - Library + - gh-160549: Fix a crash when a + compression.zstd.ZstdCompressor that uses worker threads + and a ZstdDict is deallocated, or the interpreter exits, + while data passed to compress() is still being compressed. + - gh-160535: Fix a crash in compression.zstd when the garbage + collector frees a ZstdCompressor that uses worker threads + together with its ZstdDict before the compression of + already submitted data has finished. + - gh-160520: Fix asyncio SSL transports not applying + ssl_shutdown_timeout when the peer has sent EOF but does + not read the data still queued for it. Closing such a + connection could wait indefinitely; it is now aborted with + TimeoutError once the timeout expires. + - gh-160326: Raise ValueError for a NaN timeout in + threading.Condition.wait() and the blocking calls built on + it, such as threading.Event.wait(), + threading.Semaphore.acquire() and queue.Queue.get(), + instead of returning at once or looping without ever timing + out. + - gh-159739: Fix crashes in profiling.tracing when a custom + timer reinitializes the profiler or its result clears or + disables the profiler during conversion or cleanup. + - gh-159739: Fix crashes in xml.parsers.expat when a + character data callback disables buffering or clears + another handler during a flush, or when interning an + attribute name changes ordered_attributes. + - gh-160299: Fix symtable.Symbol.is_referenced() for local + and nonlocal symbols in function scopes when their only + uses are in inlined comprehensions. + - gh-159739: Fix a crash when a ctypes structure subclass + cannot be created due to an allocation failure. + - gh-159739: Fix clearing a pickle.Unpickler memo so that the + unpickler can be reused for independent records. + - gh-160171: On the server side, + ssl.SSLSocket.get_unverified_chain() now returns the + client’s certificate when the session was resumed from a + session ticket, instead of an empty list, and returns an + empty list instead of raising AttributeError when the + client sent no certificate. + - gh-159739: Fix a possible crash in abc.ABCMeta instance + checks when a subclass-checking callback changes the + instance’s class. + - gh-159739: Fix the truncate method on io.BytesIO when + converting its size argument closes the stream or exports + its buffer. + - gh-159739: Fix contextvars.ContextVar returning a stale + value after a reentrant finalizer changes it during + reset(). + - gh-159739: Detect recursive _as_parameter_ chains for + ctypes calls without argument types. + - gh-159739: Fix a possible crash when a list of sqlite3 + parameters is modified concurrently on a free-threaded + build. + - gh-159739: Avoid a crash when a threading.local subclass + finalizer accesses attributes after construction fails. + - gh-159739: Avoid a crash when a queue.SimpleQueue subclass + finalizer adds an item after construction fails. + - gh-100609: str() of a zipfile.Path whose underlying zipfile + has no filename, such as one constructed from an + io.BytesIO, now renders that filename as :zipfile: instead + of raising TypeError. The root of a zipfile is also no + longer rendered with a trailing slash. Synchronized with + zipp 3.23.1. + - gh-159690: Fix logging.handlers.TimedRotatingFileHandler + permanently stopping rollover after a rollover failed or + its backup file already existed, for example at a DST + change. + - gh-159739: Avoid undefined behavior when struct.pack_into() + copies a bytearray into overlapping output. + - gh-159739: Fix allocation error handling in the fallback + implementation of getaddrinfo(). + - gh-159739: Fix a double free if remote unwinder + initialization runs out of memory. + - gh-159739: Fix io.IOBase.readline() returning more bytes + than requested when a stream supports peek() and returns + short reads. + - gh-159739: Fix multibyte encoders silently consuming a + non-BMP character when looking up a two-character mapping. + - gh-159739: Fix off-by-one output buffer checks in the + fallback implementation of getnameinfo(). + - gh-159739: Fix reference cycles involving the types of + grapheme iterators and segments created by + unicodedata.iter_graphemes(). + - gh-159706: Fix the pure-Python zoneinfo.ZoneInfo setting + fold=0 in fromutc() for times in the fold created by the + only transition of a zone with a single transition. + - gh-159714: Fix zoneinfo.ZoneInfo interpreting the Julian + day rule J59 as February 29 in leap years instead of + February 28. + - gh-159304: Fix AttributeError in + email.message.EmailMessage.get_body() when a nested + multipart part is malformed and its payload is a string. + - gh-158287: Fix a bug in asyncio where stopping a child + process (such as with SIGSTOP) on macOS caused the event + loop to block indefinitely. + - gh-130698: Fix PyREPL to convert sys.ps1 and sys.ps2 to + strings before use, and fall back to the default prompts if + the conversion raises. + - gh-158126: Speed up pickle.dumps() and creating a + pickle.Pickler by avoiding the creation of an + AttributeError when looking up the optional + reducer_override and dispatch_table attributes. + - gh-157880: Fix mailbox.Babyl to write the visible headers + of a mailbox.BabylMessage to the mailbox file. + - gh-156784: asyncio.ProactorEventLoop no longer silently + ignores ConnectionResetError on UDP sockets, matching + asyncio.SelectorEventLoop. + - gh-156078: zipfile.ZipFile.mkdir() now raises ValueError + when the archive is closed or when a writable member handle + is open. + - gh-155833: Ensure that MD5 and SHA* objects are properly + GC-untracked before freeing their internal HACL* state. + Patch by Bénédikt Tran. + - gh-155428: Ensure that hmac.digest() and hmac.HMAC.digest() + output identical values when using a digest’s block size + smaller than 16. Patch by Bénédikt Tran. + - gh-155152: Improve performance of some zipimport archives + that use Zstandard compression. + - gh-153679: zipimport.zipimporter now raises + zipimport.ZipImportError instead of UnicodeDecodeError for + a UTF-8-flagged file name that is not valid UTF-8. Patch by + tonghuaroot. + - gh-153319: The turtledemo viewer now reads each demo script + as UTF-8 instead of the locale encoding. + - gh-127636: Fix tarfile.TarFile.extract() to accept archive + member names with a trailing forward slash, including those + returned by tarfile.TarFile.getnames(). Contributed by Xiao + Yuan. + - gh-149527: multiprocessing: fix creation of temporary + socket files following gh-137335 (PR#148578 and + corresponding backports). Patch by Bénédikt Tran. + - gh-146169: xml.parsers.expat: raise RuntimeError when an + Expat handler calls parser.Parse or parser.ParseFile on the + parser that called the handler. Patch by Bénédikt Tran. + - gh-140036: Avoid hanging in floor division of pure Python + decimal.Decimal instances when the context precision is + very large. Patch by Bénédikt Tran. + - Build + - gh-128883: Fix crashes with -X perf and -X perf_jit in BOLT + builds. The ELF perf trampoline templates now use read-only + data sections. + - gh-160004: Fix the paths in the PEP 739 build-details.json + file generated by Tools/build/generate-build-details.py + with both --relative-paths and --config-file-path. + Previously, every path except base_prefix was wrong and + depended on the directory the script was run from. + - gh-159998: Fix libpython.dynamic in the PEP 739 + build-details.json file for macOS and iOS framework builds. + It now points at the framework’s library instead of a + nonexistent path under lib/. + - gh-144942: Fix the macOS shared library and framework + builds not linking the libraries required by built-in + modules, such as the HACL* objects needed by _blake2 when + it is built in via Modules/Setup.local. + - gh-159819: Fix the shell version of python3-config (used on + all POSIX platforms except macOS) when the installation + prefix contains spaces or other characters special to the + shell or sed: it printed an empty --prefix and wrong + --includes/--ldflags paths while exiting successfully. The + script now also exits with status 1 if it cannot determine + its installation prefix. + - gh-157354: Fix the --with-name-sanitizer=no and + --without-name-sanitizer configure options enabling the + sanitizer instead of disabling it. + - gh-155813: On macOS, LIBFFI_CFLAGS and LIBFFI_LIBS are no + longer ignored when the SDK provides libffi, so ctypes can + again be built against a different libffi. Patch by Advit + Arora. + - C API + - gh-159739: Avoid a crash if a context watcher is cleared + while other context watchers are being notified. +- Update to 3.15.1: + - Security + - gh-159894: Bump the version of pip bundled in ensurepip to + version 26.2.2. + - gh-159428: mimetypes no longer reads the files listed in + mimetypes.knownfiles by default on Windows, and uses only + the registry. + - gh-157953: Update bundled libexpat to version 2.9.0. + - Core and Builtins + - gh-159739: Avoid a crash if allocation fails while creating + a string.templatelib.Template iterator. + - gh-159739: Propagate errors during generic class + construction and avoid a crash after failed generic alias + substitution. + - gh-159739: Raise OverflowError when the absolute value of a + dynamic printf-style formatting width is too large. + - gh-159739: Fix a reference leak in gc.get_objects() and + gc.get_referrers() when an internal allocation fails in the + free-threaded build. + - gh-159739: Fix memory leaks during interpreter startup when + a path configuration file is empty or too large, or when an + audit hook rejects a command. + - gh-159739: Avoid a crash when an interpreter configuration + string cannot be encoded as UTF-8. + - gh-159739: Preserve the original SyntaxError if allocating + optional error metadata fails. + - gh-159739: Avoid a crash if formatting an integer with the ++++ 790 more lines (skipped) ++++ between /work/SRC/openSUSE:Factory/python315/python315.changes ++++ and /work/SRC/openSUSE:Factory/.python315.new.1255/python315.changes Old: ---- CVE-2026-82049-tarfile-hard-link.patch Python-3.15.0.tar.xz Python-3.15.0.tar.xz.sigstore New: ---- Python-3.15.2.tar.xz Python-3.15.2.tar.xz.sigstore ----------(Old B)---------- Old:- Removed upstreamed patch: * CVE-2026-82049-tarfile-hard-link.patch ----------(Old E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python315.spec ++++++ --- /var/tmp/diff_new_pack.bFT8Wo/_old 2026-10-29 20:36:11.441212328 +0100 +++ /var/tmp/diff_new_pack.bFT8Wo/_new 2026-10-29 20:36:11.443212412 +0100 @@ -124,7 +124,7 @@ # %%define tarversion %%{version} # %%endif # We don't process beta signs well -%define folderversion 3.15.0 +%define folderversion %{version} %define sitedir %{_libdir}/python%{python_version} # three possible ABI kinds: m - pymalloc, d - debug build; see PEP 3159 %define abi_kind %{nil} @@ -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 -%define tarversion 3.15.0 +Version: 3.15.2 +%define tarversion %version %define tarname Python-%{tarversion} Release: 0 Summary: Python 3 Interpreter @@ -230,9 +230,6 @@ # 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 -# PATCH-FIX-UPSTREAM CVE-2026-82049-tarfile-hard-link.patch bsc#1280459 [email protected] -# Follow symlinks when extracting tarfile hard links (GH-157191) -Patch50: CVE-2026-82049-tarfile-hard-link.patch #### Python 3.15 DEVELOPMENT PATCHES BuildRequires: autoconf-archive BuildRequires: automake @@ -620,7 +617,7 @@ # we patch out the message to recommend zypper in and thus this would fail EXCLUDE="$EXCLUDE test_pydoc" -%ifarch %{arm} s390x +%ifarch %{arm} aarch64 s390x # test_multiprocessing_forkserver is racy EXCLUDE="$EXCLUDE test_multiprocessing_forkserver" # gh#python/cpython#160102 ++++++ Python-3.15.0.tar.xz -> Python-3.15.2.tar.xz ++++++ /work/SRC/openSUSE:Factory/python315/Python-3.15.0.tar.xz /work/SRC/openSUSE:Factory/.python315.new.1255/Python-3.15.2.tar.xz differ: char 27, line 1 ++++++ Python-3.15.0.tar.xz.sigstore -> Python-3.15.2.tar.xz.sigstore ++++++ --- /work/SRC/openSUSE:Factory/python315/Python-3.15.0.tar.xz.sigstore 2026-10-12 22:06:15.003887383 +0200 +++ /work/SRC/openSUSE:Factory/.python315.new.1255/Python-3.15.2.tar.xz.sigstore 2026-10-29 20:36:07.494046991 +0100 @@ -1 +1 @@ -{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIDAjCCAomgAwIBAgIUKPHezkhKCMBdFKgvd5HjM2+KOpcwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDA5MTQwMTUwWhcNMjYxMDA5MTQxMTUwWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAgHlxp3h0lstHCVGwUVjPNW7sK687RHqbhbfSVwnVVjOA8sNztDWxOO0x4FSWfLaOPeRkdUTzLT+G9Q/q2ePZqOCAagwggGkMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzAdBgNVHREBAf8EEzARgQ9odWdvQHB5dGhvbi5vcmcwLAYKKwYBBAGDvzABAQQeaHR0cHM6Ly9naXRodWIuY29tL2xvZ2luL29hdXRoMC4GCisGAQQBg78wAQgEIAweaHR0cHM6Ly9naXRodWIuY29tL2xvZ2luL29hdXRoMFIGCisGAQQBg78wARgERAxCQ2djeE16STBNakkxRWlab2RIUndjem9sTWtZbE1rWm5hWFJvZFdJdVkyOXRKVEpHYkc5bmFXNGxNa1p2WVhWMGFBMIGKBgorBgEEAdZ5AgQCBHwEegB4AHYA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhIPheiQAABAMARzBFAiAncoiqmzJCG9UFWzoxDVcrAQZB0u9D1V6aQ8Ry6rjcOAIhAI+7kvWJc3py9cKnWc5K2Ppu1sEhirPvCY7fhMOvQAfbMAoGCCqGS M49BAMDA2cAMGQCMAYobgf+cc5WG9bCkHHP1+9souyizip7/9S9P2JzbJhA5AqQSFWjvmwOZY5WgcYa5gIwCS66t7y1KEbhfeSXxWPjwYBTjCFs4r70Z2L7ufLr75jLDP6kO0wjk3AMjjeIu9oG"},"tlogEntries":[{"logIndex":"3165694859","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1791554511","inclusionPromise":{"signedEntryTimestamp":"MEYCIQDLqe3sYeewUep6EW9beJyp75UA3L9pGzP3UMLrkwGq+AIhAIDJFbQBb/s8iAAGaRr/fRlb7wkORSYqS9FYhMoWyf3/"},"inclusionProof":{"logIndex":"3043790597","rootHash":"/Wc9gXZcky8NXSzsESy7HD9YGPUzdlbpT+Fvcqr4YUk=","treeSize":"3043790745","hashes":["JKUB1Sk+nxYKF4bYg7eF9TQRZncZEOw5ZoO/rCbwiG8=","AFa7j5jT1FTbmO9yQeeYMpF2TuOc3/L/lWWUJq6zh5w=","0n4KLdcLofBxS1Z4LmpIUJbcGg5w+1C5o+cV5tgVzMQ=","qK0or7AzPT74OsTrVzhoMGElbg8wkAGPy1rxGS5oAAE=","ncm4dkmddbUnodPMCOROc18i8opD9USQz1FGL2jsyrk=","Rej8DZY+rIgZigWuGFwM8bAHYeLA1sQ6goGh3zYLVbo=","ST53sHwYtQi6XvjAUxNlCR2Adx9M2653O9RmCuQO7Ow=","zgGri7BfufdMJHGs+2c6WE3S2MHb3mJj0b/yZuJFaBk=","cb jTviqVWWmI5KnSTMowa/ZSqAPrJyfLawCb9ialU7U=","+6kIXqub6EfThJ+4/NUQ4uBu3oiL5h0NIz5o0X+kYi8=","Z4LXmB0PGOIQ6UZHDNv7Omnk8cz1Bs1KDkErbwSHcsM=","o2qMOKWW73aG9eqOTXzpxCQIIvLspFRpH0jcWOwzQ+g=","fo72e8eOq3k9rdveT4Vcv5Th3+w5Pw4yGT49fScZ7OI=","OdSBUyAwA5dsID8Oo1PJV2rUMRkA/BkDj03yCp9muBA=","5o2ne41oi2hCQ/KzwZkP+njFir5RLlbxEQmpZIa0mX8=","Qt/w/MJ97Os0ZG7ArHzxM2dxEUSFl9usGjQ+V33C5kA=","RsB1Z/7kD7nWxQcIe4zP6NNT0AkldkUDMfGWA5i0jos=","wSaHrpTQFjMB4RSxQVUhglqJvAGe2z1ilppo9GSYLkY=","hafZfJdzUX/yyCr3Anv7Qq1DWVaWxotaclNRcl/O9SQ=","NlOclldmKPA1tMKIskqHAwuQDYHp31YwpK+OOMrMccc=","qxzHanAzz57SDdmJe0B7bJK72NTIBbwEMGBBKvDOROw=","xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3043790745\n/Wc9gXZcky8NXSzsESy7HD9YGPUzdlbpT+Fvcqr4YUk=\n\n— rekor.sigstore.dev wNI9ajBEAiApUSaG9UaEsp7z9v5Bki1tJYg2EX06hlQIC3k0W9FWHgIgR4DLHXiFeHUBNADAUSK5tdzAfkRBHjk0R/SsoSZoyjE=\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3B lYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJiYTRiZWQxYmEzNDZiOTE2ODkwYjc2ZDllMzIwNDUxNDIwYWE2OWY2NDA4OTk3ZDMzYzY2NDgyZWVhZTNkNTc1In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUNCOW5jZWlaZnc4Wllra0dpWGRiUFphQkhNR0Z5K0tWUXdIeSs3MEVIZ2ZBSWhBSXRDTWc0NG5JSHpzci9xRlVUOTFOODIzZjM5VWhraHRBNEljWWNVcnJSNiIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVUkJha05EUVc5dFowRjNTVUpCWjBsVlMxQklaWHByYUV0RFRVSmtSa3RuZG1RMVNHcE5NaXRMVDNCamQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFUVRWTlZGRjNUVlJWZDFkb1kwNU5hbGw0VFVSQk5VMVVVWGhOVkZWM1YycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZCWjBoc2VIQXphREJzYzNSSVExWkhkMVZXYWxCT1Z6ZHpTelk0TjFKSWNXSm9ZbVlLVTFaM2JsWldhazlCT0hOT2VuUkVWM2hQVHpCNE5FWlRWMlpNWVU5UVpWSnJaRlZVZWt4VUswYzVVUzl4TW1WUVduRlBRMEZoWjNkblowZHJUVUUwUndwQk1WVmtSSGRGUWk5 M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFXUkNaMDVXU0ZKRlFrRm1PRVZGZWtGU1oxRTViMlJYWkhaUlNFSTFaRWRvZG1KcE5YWUtZMjFqZDB4QldVdExkMWxDUWtGSFJIWjZRVUpCVVZGbFlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKNGRsb3liSFZNTWpsb1pGaFNid3BOUXpSSFEybHpSMEZSVVVKbk56aDNRVkZuUlVsQmQyVmhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1uaDJXakpzZFV3eU9XaGtXRkp2Q2sxR1NVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlVrRjRRMUV5WkdwbFJURTJVMVJDVG1GcmEzaFNWMnhoWWpKU1NWVnVaR3BsYlRselZGZDBXbUpGTVhJS1YyMDFhRmRHU25aYVJtUktaRlpyZVU5WVVrdFdSWEJJV1d0ak5XSnRSbGhPUjNoT1lURndNbGRXYUZkTlIwWkNUVWxIUzBKbmIzSkNaMFZGUVdSYU5RcEJaMUZEUWtoM1JXVm5RalJCU0ZsQk0xUXdkMkZ6WWtoRlZFcHFSMUkwWTIxWFl6TkJjVXBMV0hKcVpWQkxNeTlvTkhCNVowTTRjRGR2TkVGQlFVZG9Da2xRYUdWcFVVRkJRa0ZOUVZKNlFrWkJhVUZ1WTI5cGNXMTZTa05IT1ZWR1YzcHZlRVJXWTNKQlVWcENNSFU1UkRGV05tRlJPRko1Tm5KcVkwOUJTV2dLUVVrck4ydDJWMHBqTTNCNU9XTkxibGRqTlVzeVVIQjFNWE5GYUdseVVIWkRXVGRtYUUxUGRsRkJabUpOUVc5SFEwT nhSMU5OTkRsQ1FVMUVRVEpqUVFwTlIxRkRUVUZaYjJKblppdGpZelZYUnpsaVEydElTRkF4S3psemIzVjVhWHBwY0Rjdk9WTTVVREpLZW1KS2FFRTFRWEZSVTBaWGFuWnRkMDlhV1RWWENtZGpXV0UxWjBsM1ExTTJOblEzZVRGTFJXSm9abVZUV0hoWFVHcDNXVUpVYWtOR2N6UnlOekJhTWt3M2RXWk1jamMxYWt4RVVEWnJUekIzYW1zelFVMEthbXBsU1hVNWIwY0tMUzB0TFMxRlRrUWdRMFZTVkVsR1NVTkJWRVV0TFMwdExRbz0ifX19fQ=="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIIE6zADAgEAMIIE4gYJKoZIhvcNAQcCoIIE0zCCBM8CAQMxDTALBglghkgBZQMEAgEwgcIGCyqGSIb3DQEJEAEEoIGyBIGvMIGsAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgFHaSZkNbYbudmCmCC8i7SrVTW+fV+FKrBFc2Yq8d6HkCFQCA8Tfp3M2ib0mwTCUAo/+yAXMFpRgPMjAyNjEwMDkxNDAxNTBaMAMCAQECCCJaCpwl6IQxoDKkMDAuMRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxFTATBgNVBAMTDHNpZ3N0b3JlLXRzYaCCAhQwggIQMIIBlqADAgECAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkMB4XDTI1MDQwODA2NTk0M1oXDTM1MDQwNjA2NTk0M1owLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2EwdjAQBgcq hkjOPQIBBgUrgQQAIgNiAATitrZnyEo2KDZP2QWMIBOgYbfSOTL5ZC/cHMv6Yq+HVIo1H9TC7Cx80KDiyvKhgB3wTqKyi9UDczhqg12b1AOLnRnydMTK+qB8M+1MjBci1+Jb8AV/VXu7CRuQCiPTHFyjajBoMA4GA1UdDwEB/wQEAwIHgDAdBgNVHQ4EFgQUif15Q4fP0GVGwwJGxyxzW3206wMwHwYDVR0jBBgwFoAUmOwB73+7Uf/UlR5vioiYUweJzr8wFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwgwCgYIKoZIzj0EAwMDaAAwZQIwO2mxX/opo7SrIX9QyxfZpJRcpAV2gZOm1AZzR+2rVyy6Uc8Ybp2ybIw13ckH4bcRAjEA5qO8FyOkmYpvg2/7ZNqiPxRzn5vqKHoVcIIqtpKq6l7TvOqzAxxclN7VwTG8e++XMYIB3DCCAdgCAQEwUTA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDALBglghkgBZQMEAgGggfwwGgYJKoZIhvcNAQkDMQ0GCyqGSIb3DQEJEAEEMBwGCSqGSIb3DQEJBTEPFw0yNjEwMDkxNDAxNTBaMC8GCSqGSIb3DQEJBDEiBCD63Iwlze82nQdxeorIgmbzqgADHgHBPbZWBj5xRlpxwDCBjgYLKoZIhvcNAQkQAi8xfzB9MHsweQQghfknvAerYsrDtENWwQ78gbLGiD/aernm2HDZ0TrNBbcwVTA9pDswOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCgYIKoZIzj0EAwIEaDBmAjEAo0Y/Xu1Gq1sOfWjnzkNYt5PRUGS2HUqif67vW fg0XfbxyTE5L0hpN5/mkVwT539bAjEA31aYoxQOXYM4V7kbymtwYPAthqmqUY/DX9GbPsk3u+P99WINfjnECzTlyHqRg8wI"}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"ukvtG6NGuRaJC3bZ4yBFFCCqafZAiZfTPGZILurj1XU="},"signature":"MEYCIQCB9nceiZfw8ZYkkGiXdbPZaBHMGFy+KVQwHy+70EHgfAIhAItCMg44nIHzsr/qFUT91N823f39UhkhtA4IcYcUrrR6"}} +{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIDBDCCAomgAwIBAgIUTsX4dUr1qR6no1Ma64+xYeqt7QIwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYxMDI2MDQyMzEzWhcNMjYxMDI2MDQzMzEzWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEdMqSoocHNpOUi/b/Ild/VI6k5fMhVDK31JPYP+33xXJn6264H/62pKFEdg9YsMt5lOBLoUEa5rZCrefCpiD0waOCAagwggGkMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBTf0+nPViQRlvmo2OkoVaLGLhhkPzAdBgNVHREBAf8EEzARgQ9odWdvQHB5dGhvbi5vcmcwLAYKKwYBBAGDvzABAQQeaHR0cHM6Ly9naXRodWIuY29tL2xvZ2luL29hdXRoMC4GCisGAQQBg78wAQgEIAweaHR0cHM6Ly9naXRodWIuY29tL2xvZ2luL29hdXRoMFIGCisGAQQBg78wARgERAxCQ2djeE16STBNakkxRWlab2RIUndjem9sTWtZbE1rWm5hWFJvZFdJdVkyOXRKVEpHYkc5bmFXNGxNa1p2WVhWMGFBMIGKBgorBgEEAdZ5AgQCBHwEegB4AHYA3T0wasbHETJjGR4cmWc3AqJKXrjePK3/h4pygC8p7o4AAAGhdnK8NAAABAMARzBFAiAcAaBfj0DWNOJ0gjjkJvXt/nbtaaK4Lh/GaXUpxY5bDAIhAPkfG2IC2MfRD39nzJhp51xzA0iwyVttXB2SvV2v72zBMAoGCCqGS M49BAMDA2kAMGYCMQDtk9yXl8Cu6/UIIsMZjGGMSxiKGEs7hR338+gDpIzwFBWhruvEtc9Ls4gj5/urNFgCMQC3imbJt5jcHJ4bPuGVxH9yMD8dbHXdacqMjqM3Y1Bv9Vhz5/K0PD/credtWTBv9G0="},"tlogEntries":[{"logIndex":"3479106830","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1792988593","inclusionPromise":{"signedEntryTimestamp":"MEQCIAIp5ecHWD10PkwfI9kxXTVszRWWFF/Z+SI0o9VXeeerAiA7D2xVCJNn32IfqtYireKT7F6I6geyQihB+YNZGiMmcA=="},"inclusionProof":{"logIndex":"3357202568","rootHash":"lCbABuCF3rg4H322h3zLvIA4ezexDeJSPs3nmb5zi+M=","treeSize":"3357202594","hashes":["Ow4pgubt0Cg3GTsKoPQPizC3UoaIXT52lFuyjCkrVgQ=","n6pdYKt8Hds0HfloGzjVxOUfrX0sgqPu/6N4y/iCEms=","U30aqW29XKtiqcIu1R7GXeuJlA0iojB5ukc8XyM5sqI=","26Ha5XLfFyK9AtiODQ1TOVman9hjQ01Ty9goBSEno9g=","ZyEDltL+Yt+qpaPLPcXrQtEcPUyQvFUXsZG4qJwBNFs=","uO9S9bPcYlCCHLoqfEEJgmozLxbCCJoPXo4cPIM/rFE=","kspO8fIFUbCx1nU+wCxiiLanK6R8CCWHXe1/JmmNW+A=","aZuP18Ke1vX1y3hqNRpkDiGhhn1Ckp89J9EWRTfD2T8=" ,"JqLD66m5NRPZNkv+RqLOL+ZxfHQby5ZoZs+6c/M00Mk=","VJXd88yPdKL7/PGgY2bTYsEIK/fc3RsGXYDyACVzY5g=","tVf/yERsPmAGBZKvKWJg2Op2mFVCJnCzp8hJUCT6lfg=","7rmMV2pxHQNS4J7r/ahdsyUiONdT2XCbxWmr4+OkivY=","qqUX+cZgNg8pdIpvdzkn2Lz5VjXuFbCJERgcdSErzIU=","3KFTDqjWsYCWLMizv/Xiacvfx9QCkXRfmrbv87UYr2Y=","zGfeoWKmrZlXMOvyi3R2GDbGpmI1skJW/wLTXCCgF0o=","1DaDKzrCNNBhmSdY5vFjz+NpAmxmYfYEgBCdPLrMP1A=","xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n3357202594\nlCbABuCF3rg4H322h3zLvIA4ezexDeJSPs3nmb5zi+M=\n\n— rekor.sigstore.dev wNI9ajBFAiEA5lY+L7ii+kLkVFP+YJa0ccHsrhB7EVXCYLbIdD5p4cwCIEEQnwQ/4KHBzJCbXLDYdpX9ymUxSaBrxHFkKtisFQZb\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI4YjU1MzZkMjgwMTQyZWNmNmNkZmUxNWQxMmEyMWJhMWM2NWUzMDBiYmY3YjI4YThkMGNkYjg0OTU3NTc5N2RlIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUM0WXNkdzdTZjlxcXo1VWQyVzFYcjl0bU 5PbHdpV2Vmd2w4dURwZ0h3OFRBSWdKN3dxNmNOTTVTbHU5T3IwaGl3NnZvMVQ3cWlqTEZPY0phMXVhTzVsSzBBPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVUkNSRU5EUVc5dFowRjNTVUpCWjBsVlZITllOR1JWY2pGeFVqWnViekZOWVRZMEszaFpaWEYwTjFGSmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFplRTFFU1RKTlJGRjVUWHBGZWxkb1kwNU5hbGw0VFVSSk1rMUVVWHBOZWtWNlYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZrVFhGVGIyOWpTRTV3VDFWcEwySXZTV3hrTDFaSk5tczFaazFvVmtSTE16RktVRmtLVUNzek0zaFlTbTQyTWpZMFNDODJNbkJMUmtWa1p6bFpjMDEwTld4UFFreHZWVVZoTlhKYVEzSmxaa053YVVRd2QyRlBRMEZoWjNkblowZHJUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXWkNaMDVXU0ZOTlJVZEVRVmRuUWxSbUNqQXJibEJXYVZGU2JIWnRiekpQYTI5V1lVeEhUR2hvYTFCNlFXUkNaMDVXU0ZKRlFrRm1PRVZGZWtGU1oxRTViMlJYWkhaUlNFSTFaRWRvZG1KcE5YWUtZMjFqZDB4QldVdEx kMWxDUWtGSFJIWjZRVUpCVVZGbFlVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKNGRsb3liSFZNTWpsb1pGaFNid3BOUXpSSFEybHpSMEZSVVVKbk56aDNRVkZuUlVsQmQyVmhTRkl3WTBoTk5reDVPVzVoV0ZKdlpGZEpkVmt5T1hSTU1uaDJXakpzZFV3eU9XaGtXRkp2Q2sxR1NVZERhWE5IUVZGUlFtYzNPSGRCVW1kRlVrRjRRMUV5WkdwbFJURTJVMVJDVG1GcmEzaFNWMnhoWWpKU1NWVnVaR3BsYlRselZGZDBXbUpGTVhJS1YyMDFhRmRHU25aYVJtUktaRlpyZVU5WVVrdFdSWEJJV1d0ak5XSnRSbGhPUjNoT1lURndNbGRXYUZkTlIwWkNUVWxIUzBKbmIzSkNaMFZGUVdSYU5RcEJaMUZEUWtoM1JXVm5RalJCU0ZsQk0xUXdkMkZ6WWtoRlZFcHFSMUkwWTIxWFl6TkJjVXBMV0hKcVpWQkxNeTlvTkhCNVowTTRjRGR2TkVGQlFVZG9DbVJ1U3poT1FVRkJRa0ZOUVZKNlFrWkJhVUZqUVdGQ1ptb3dSRmRPVDBvd1oycHFhMHAyV0hRdmJtSjBZV0ZMTkV4b0wwZGhXRlZ3ZUZrMVlrUkJTV2dLUVZCclprY3lTVU15VFdaU1JETTVibnBLYUhBMU1YaDZRVEJwZDNsV2RIUllRakpUZGxZeWRqY3lla0pOUVc5SFEwTnhSMU5OTkRsQ1FVMUVRVEpyUVFwTlIxbERUVkZFZEdzNWVWaHNPRU4xTmk5VlNVbHpUVnBxUjBkTlUzaHBTMGRGY3pkb1VqTXpPQ3RuUkhCSmVuZEdRbGRvY25WMlJYUmpPVXh6TkdkcUNqVXZkWEpPUm1kRFRWRkRNMmx0WWtwME5XcGpTRW8wWWxCMVIxWjRTRGw1VFVRNFpHSklXR1JoWTNGTmFuRk5NMWt4 UW5ZNVZtaDZOUzlMTUZCRUwyTUtjbVZrZEZkVVFuWTVSekE5Q2kwdExTMHRSVTVFSUVORlVsUkpSa2xEUVZSRkxTMHRMUzBLIn19fX0="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIIE6zADAgEAMIIE4gYJKoZIhvcNAQcCoIIE0zCCBM8CAQMxDTALBglghkgBZQMEAgEwgcMGCyqGSIb3DQEJEAEEoIGzBIGwMIGtAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgmIIuI5g282ircq49ZW8KUSPlv1KjIqiAn1CbSJhAQpACFQCrtPQCA0uhZVtBLWdH//sjSNmZnhgPMjAyNjEwMjYwNDIzMTNaMAMCAQECCQDNtlwsgkHUeqAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgggIUMIICEDCCAZagAwIBAgIUOhNULwyQYe68wUMvy4qOiyojiwwwCgYIKoZIzj0EAwMwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZDAeFw0yNTA0MDgwNjU5NDNaFw0zNTA0MDYwNjU5NDNaMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ra2Z8hKNig2T9kFjCAToGG30jky+WQv3BzL+mKvh1SKNR/UwuwsfNCg4sryoYAd8E6isovVA3M4aoNdm9QDi50Z8nTEyvqgfDPtTIwXItfiW/AFf1V7uwkbkAoj0xxco2owaDAOBgNVHQ8BAf8EBAMCB4AwHQYDVR0OBBYEFIn9eUOHz9BlRsMCRscsc1t9tOsDMB8GA1U dIwQYMBaAFJjsAe9/u1H/1JUeb4qImFMHic6/MBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMAoGCCqGSM49BAMDA2gAMGUCMDtpsV/6KaO0qyF/UMsX2aSUXKQFdoGTptQGc0ftq1csulHPGG6dsmyMNd3JB+G3EQIxAOajvBcjpJmKb4Nv+2Taoj8Uc5+b6ih6FXCCKraSqupe07zqswMcXJTe1cExvHvvlzGCAdswggHXAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYxMDI2MDQyMzEzWjAvBgkqhkiG9w0BCQQxIgQgytg4eF1tKUibcHzBWYWps/grMQ97YgNco6zHJ6aTeM4wgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGcwZQIxAJRVpM9kGCTaYhoOwEFuOqvX6NB55wO7XEP9wxecefn8wav0AiqJnWhratf/GTnnjgIwAQo2d6An9uiE00cHPpss9uc6SKBV/v8hu1jw20+MRwTk8AivSFUzThmZu724KJPA"}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"i1U20oAULs9s3+FdEqIbocZeMAu/eyio0M24SVdXl94="},"signatur e":"MEUCIQC4Ysdw7Sf9qqz5Ud2W1Xr9tmNOlwiWefwl8uDpgHw8TAIgJ7wq6cNM5Slu9Or0hiw6vo1T7qijLFOcJa1uaO5lK0A="}} ++++++ _scmsync.obsinfo ++++++ --- /var/tmp/diff_new_pack.bFT8Wo/_old 2026-10-29 20:36:11.907231849 +0100 +++ /var/tmp/diff_new_pack.bFT8Wo/_new 2026-10-29 20:36:11.921232435 +0100 @@ -1,6 +1,6 @@ -mtime: 1792610623 -commit: 83706916315f6c0697152933efd41da2dff99c43a64a4d31c1bc18af810f928b +mtime: 1793286421 +commit: a08517d29888914029ae4e894d4b4850773a661cda0595b96629656365622567 url: https://src.opensuse.org/python-interpreters/python315 -revision: 83706916315f6c0697152933efd41da2dff99c43a64a4d31c1bc18af810f928b +revision: a08517d29888914029ae4e894d4b4850773a661cda0595b96629656365622567 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-10-29 16:07:01.000000000 +0100 @@ -0,0 +1,5 @@ +*.obscpio +*.osc +_build.* +.pbuild +python315-*-build/ ++++++ fix-test-recursion-limit-15.6.patch ++++++ --- /var/tmp/diff_new_pack.bFT8Wo/_old 2026-10-29 20:36:12.569259579 +0100 +++ /var/tmp/diff_new_pack.bFT8Wo/_new 2026-10-29 20:36:12.582260124 +0100 @@ -2,10 +2,10 @@ Lib/test/test_compile.py | 5 +++++ 1 file changed, 5 insertions(+) -Index: Python-3.15.0rc2/Lib/test/test_compile.py +Index: Python-3.15.1/Lib/test/test_compile.py =================================================================== ---- Python-3.15.0rc2.orig/Lib/test/test_compile.py 2026-09-02 22:04:48.725628578 +0200 -+++ Python-3.15.0rc2/Lib/test/test_compile.py 2026-09-02 22:06:02.007618738 +0200 +--- Python-3.15.1.orig/Lib/test/test_compile.py 2026-10-28 10:51:00.647565298 +0100 ++++ Python-3.15.1/Lib/test/test_compile.py 2026-10-28 10:51:19.351733571 +0100 @@ -24,6 +24,9 @@ from test.support.bytecode_helper import instructions_with_positions from test.support.os_helper import FakePath @@ -24,12 +24,12 @@ @support.skip_emscripten_stack_overflow() def test_extended_arg(self): repeat = 100 -@@ -725,6 +729,7 @@ +@@ -724,6 +728,7 @@ + @support.cpython_only @unittest.skipIf(support.is_wasi, "exhausts limited stack on WASI") - @support.skip_if_huge_c_stack(100_000 if sys.platform == "android" else 500_000) + @unittest.skipIf(IS_SLE_15_6 and IS_32bit, "fails on 15.6 i586") + @support.run_with_limited_c_stack(500_000) @support.skip_emscripten_stack_overflow() def test_compiler_recursion_limit(self): - # Compiler frames are small
