https://github.com/python/cpython/commit/cc39b19f0fca8db0f881ecaf02f88d72d9f93776
commit: cc39b19f0fca8db0f881ecaf02f88d72d9f93776
branch: main
author: sobolevn <[email protected]>
committer: sobolevn <[email protected]>
date: 2025-04-30T16:41:50+03:00
summary:
gh-133167: Fix compilation process with `--enable-optimizations` and
`--without-docstrings` (#133187)
files:
A Misc/NEWS.d/next/Build/2025-04-30-10-23-18.gh-issue-133167.E0jrYJ.rst
M Lib/test/support/__init__.py
M Lib/test/test_functools.py
M Lib/test/test_operator.py
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py
index 82f881094982f6..24984ad81fff99 100644
--- a/Lib/test/support/__init__.py
+++ b/Lib/test/support/__init__.py
@@ -1332,8 +1332,8 @@ def _check_docstrings():
sys.platform != 'win32' and
not sysconfig.get_config_var('WITH_DOC_STRINGS'))
-HAVE_DOCSTRINGS = (_check_docstrings.__doc__ is not None and
- not MISSING_C_DOCSTRINGS)
+HAVE_PY_DOCSTRINGS = _check_docstrings.__doc__ is not None
+HAVE_DOCSTRINGS = (HAVE_PY_DOCSTRINGS and not MISSING_C_DOCSTRINGS)
requires_docstrings = unittest.skipUnless(HAVE_DOCSTRINGS,
"test requires docstrings")
diff --git a/Lib/test/test_functools.py b/Lib/test/test_functools.py
index 4794a7465f0b66..e3b449f2d24a2b 100644
--- a/Lib/test/test_functools.py
+++ b/Lib/test/test_functools.py
@@ -2952,7 +2952,7 @@ def static_func(arg: int) -> str:
self.assertEqual(meth.__qualname__, prefix + meth.__name__)
self.assertEqual(meth.__doc__,
('My function docstring'
- if support.HAVE_DOCSTRINGS
+ if support.HAVE_PY_DOCSTRINGS
else None))
self.assertEqual(meth.__annotations__['arg'], int)
@@ -3107,7 +3107,7 @@ def decorated_classmethod(cls, arg: int) -> str:
with self.subTest(meth=meth):
self.assertEqual(meth.__doc__,
('My function docstring'
- if support.HAVE_DOCSTRINGS
+ if support.HAVE_PY_DOCSTRINGS
else None))
self.assertEqual(meth.__annotations__['arg'], int)
@@ -3584,7 +3584,7 @@ def test_access_from_class(self):
def test_doc(self):
self.assertEqual(CachedCostItem.cost.__doc__,
("The cost of the item."
- if support.HAVE_DOCSTRINGS
+ if support.HAVE_PY_DOCSTRINGS
else None))
def test_module(self):
diff --git a/Lib/test/test_operator.py b/Lib/test/test_operator.py
index 1757824580e416..1f89986c777ced 100644
--- a/Lib/test/test_operator.py
+++ b/Lib/test/test_operator.py
@@ -636,6 +636,7 @@ def test_dunder_is_original(self):
if dunder:
self.assertIs(dunder, orig)
+ @support.requires_docstrings
def test_attrgetter_signature(self):
operator = self.module
sig = inspect.signature(operator.attrgetter)
@@ -643,6 +644,7 @@ def test_attrgetter_signature(self):
sig = inspect.signature(operator.attrgetter('x', 'z', 'y'))
self.assertEqual(str(sig), '(obj, /)')
+ @support.requires_docstrings
def test_itemgetter_signature(self):
operator = self.module
sig = inspect.signature(operator.itemgetter)
@@ -650,6 +652,7 @@ def test_itemgetter_signature(self):
sig = inspect.signature(operator.itemgetter(2, 3, 5))
self.assertEqual(str(sig), '(obj, /)')
+ @support.requires_docstrings
def test_methodcaller_signature(self):
operator = self.module
sig = inspect.signature(operator.methodcaller)
diff --git
a/Misc/NEWS.d/next/Build/2025-04-30-10-23-18.gh-issue-133167.E0jrYJ.rst
b/Misc/NEWS.d/next/Build/2025-04-30-10-23-18.gh-issue-133167.E0jrYJ.rst
new file mode 100644
index 00000000000000..ee6d5a3b87995c
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2025-04-30-10-23-18.gh-issue-133167.E0jrYJ.rst
@@ -0,0 +1,2 @@
+Fix compilation process with ``--enable-optimizations`` and
+``--without-docstrings``.
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-checkins.python.org/
Member address: [email protected]