Files
python314/bsc1243155-sphinx-non-determinism.patch
Matej Cepl 0d138f00f9 - Update to 3.14.0~b4:
- Tools/Demos
    - gh-135968: Stubs for strip are now provided as part of an
      iOS install.
    - gh-133600: Backport file reorganization for               .
      Tools/wasm/wasi This should make backporting future code  .
      changes easier. It also simplifies instructions around how.
      to do WASI builds in the devguide                         .
  - Tests
    - gh-135966: The iOS testbed now handles the app_packages
      folder as a site directory.
    - gh-135494: Fix regrtest to support excluding tests from
      --pgo tests. Patch by Victor Stinner.
  - Security
    - gh-136053: marshal: fix a possible crash when deserializing
      slice objects.
    - gh-135661: Fix parsing start and end tags in
      html.parser.HTMLParser according to the HTML5 standard.
      - Whitespaces no longer accepted between </ and the tag
        name. E.g. </ script> does not end the script section.
      - Vertical tabulation (\v) and non-ASCII whitespaces no
        longer recognized as whitespaces. The only whitespaces
        are \t\n\r\f and space.
      - Null character (U+0000) no longer ends the tag name.
      - Attributes and slashes after the tag name in end tags are
        now ignored, instead of terminating after the first > in
        quoted attribute value. E.g. </script/foo=">"/>.
      - Multiple slashes and whitespaces between the last
        attribute and closing > are now ignored in both start and
        end tags. E.g. <a foo=bar/ //>.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python314?expand=0&rev=80
2025-07-09 05:57:00 +00:00

46 lines
1.9 KiB
Diff

From 906a590df191f66f4f0c4a70e3edb6fd82c156ef Mon Sep 17 00:00:00 2001
From: Daniel Garcia Moreno <daniel.garcia@suse.com>
Date: Tue, 1 Jul 2025 12:13:28 +0200
Subject: [PATCH] Doc: Generate ids for audit_events using docname
This patch generates ids for audit_events using the docname so the id is
not global but depend on the source file. This make the doc build
reproducible with multiple cores because it doesn't which file is parsed
first, the id for audit_events will always be consistent independently
of what file is parsed first.
https://github.com/python/cpython/issues/130979
---
Doc/tools/extensions/audit_events.py | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
Index: Python-3.14.0b3/Doc/tools/extensions/audit_events.py
===================================================================
--- Python-3.14.0b3.orig/Doc/tools/extensions/audit_events.py 2025-06-17 17:40:54.000000000 +0200
+++ Python-3.14.0b3/Doc/tools/extensions/audit_events.py 2025-07-02 15:06:57.802539821 +0200
@@ -68,8 +68,13 @@
logger.warning(msg)
return
- def id_for(self, name) -> str:
- source_count = len(self.sources.get(name, set()))
+ def _source_count(self, name, docname) -> int:
+ """Count the event name in the same source"""
+ sources = self.sources.get(name, set())
+ return len([s for s, t in sources if s == docname])
+
+ def id_for(self, name, docname) -> str:
+ source_count = self._source_count(name, docname)
name_clean = re.sub(r"\W", "_", name)
return f"audit_event_{name_clean}_{source_count}"
@@ -142,7 +147,7 @@
except (IndexError, TypeError):
target = None
if not target:
- target = self.env.audit_events.id_for(name)
+ target = self.env.audit_events.id_for(name, self.env.docname)
ids.append(target)
self.env.audit_events.add_event(name, args, (self.env.docname, target))