Package: src:twine
Version: 6.2.0-5
User: [email protected]
Usertags: python3.15
Tags: patch, ftbfs, forky, sid
Hi!
While rebuilding the python related packages against the Python 3.15rc1
version we found that twine fails to build from source [1].
This is caused by a change in the wording in the exceptions produces
docutils 0.23, this is already solved upstream with the commit bfa7f7f
[2] changelog: backfill entries from PRs (#1330).
I applied the upstream fix in the sandbox [3] to be able to build the
packages that depend on twine, please consider applying the patch to
support the upcoming 3.15 version.
Happy hacking,
[1]: https://debusine.debian.net/debian/r-python-python3.15/artifact/4578793/
[2]:
https://github.com/pypa/twine/commit/bfa7f7f037c6ba39e93813c6ad2537d13cf4b1e6
[3]: https://debusine.debian.net/debian/r-python-python3.15/
--
"Can you imagine what I would do if I could do all I can?" -- Sun Tzu
Saludos /\/\ /\ >< `/
From: William Woodruff <[email protected]>
Date: Fri, 17 Jul 2026 00:19:21 +0200
Subject: changelog: backfill entries from PRs (#1330)
---
tests/test_check.py | 20 +++++++++-----------
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/tests/test_check.py b/tests/test_check.py
index 7a1d982..5f027fb 100644
--- a/tests/test_check.py
+++ b/tests/test_check.py
@@ -119,7 +119,7 @@ def test_fails_rst_syntax_error(tmp_path, capsys, caplog):
logging.ERROR,
"`long_description` has syntax errors in markup "
"and would not be rendered on PyPI.\n"
- "line 2: Warning: Document or section may not begin with a
transition.",
+ "line 2: Warning: Transition at the end of the document.",
),
]
@@ -141,16 +141,14 @@ def test_fails_rst_no_content(tmp_path, capsys, caplog):
assert check.check([sdist])
assert capsys.readouterr().out == f"Checking {sdist}: FAILED\n"
-
- assert caplog.record_tuples == [
- (
- "twine.commands.check",
- logging.ERROR,
- "`long_description` has syntax errors in markup "
- "and would not be rendered on PyPI.\n"
- "No content rendered from RST source.",
- ),
- ]
+ assert len(caplog.record_tuples) == 1
+
+ # Note: we intentionally don't check the full error message below,
+ # since readme_renderer/docutils doesn't guarantee it.
+ error = caplog.record_tuples[0]
+ assert error[0] == "twine.commands.check"
+ assert error[1] == logging.ERROR
+ assert "syntax errors" in error[2]
def test_passes_rst_description(tmp_path, capsys, caplog):