From: Lysandros Nikolaou Date: Thu, 19 Mar 2026 11:01:24 +0000 (+0100) Subject: gh-145254: Fix formatting of thread safety annotations (#146111) X-Git-Tag: v3.15.0a8~251 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=580043dfae90331de15cf1504d09e2c7216182a6;p=thirdparty%2FPython%2Fcpython.git gh-145254: Fix formatting of thread safety annotations (#146111) - Add leading space so that the spacing between the previous annotation and the thread safety annotation looks correct. - Remove trailing period from the link to the thread safety level. --- diff --git a/Doc/tools/extensions/c_annotations.py b/Doc/tools/extensions/c_annotations.py index 58f597c2eb2d..724dea625c4e 100644 --- a/Doc/tools/extensions/c_annotations.py +++ b/Doc/tools/extensions/c_annotations.py @@ -308,27 +308,27 @@ def _unstable_api_annotation() -> nodes.admonition: def _threadsafety_annotation(level: str) -> nodes.emphasis: match level: case "incompatible": - display = sphinx_gettext("Not safe to call from multiple threads.") + display = sphinx_gettext("Not safe to call from multiple threads") reftarget = "threadsafety-level-incompatible" case "compatible": display = sphinx_gettext( "Safe to call from multiple threads" - " with external synchronization only." + " with external synchronization only" ) reftarget = "threadsafety-level-compatible" case "distinct": display = sphinx_gettext( "Safe to call without external synchronization" - " on distinct objects." + " on distinct objects" ) reftarget = "threadsafety-level-distinct" case "shared": display = sphinx_gettext( - "Safe for concurrent use on the same object." + "Safe for concurrent use on the same object" ) reftarget = "threadsafety-level-shared" case "atomic": - display = sphinx_gettext("Atomic.") + display = sphinx_gettext("Atomic") reftarget = "threadsafety-level-atomic" case _: raise AssertionError(f"Unknown thread safety level {level!r}") @@ -340,9 +340,11 @@ def _threadsafety_annotation(level: str) -> nodes.emphasis: reftype="ref", refexplicit="True", ) - prefix = sphinx_gettext("Thread safety:") + " " + prefix = " " + sphinx_gettext("Thread safety:") + " " classes = ["threadsafety", f"threadsafety-{level}"] - return nodes.emphasis("", prefix, ref_node, classes=classes) + return nodes.emphasis( + "", prefix, ref_node, nodes.Text("."), classes=classes + ) def _return_value_annotation(result_refs: int | None) -> nodes.emphasis: