gh-109975: Update 'What's New in Python 3.13' for beta#118694
gh-109975: Update 'What's New in Python 3.13' for beta#118694Yhg1s merged 2 commits intopython:mainfrom
Conversation
| Improve validation logic in the C implementation of :meth:`datetime.fromisoformat` | ||
| to better handle invalid years. Patch by Vlad Efanov. | ||
| Improve validation logic in the C implementation of | ||
| :meth:`datetime.datetime.fromisoformat` to better handle invalid years. |
There was a problem hiding this comment.
Do you know why these weren't caught on the PR adding them? Is there some configuration change we can make so that NEWS entries get linted properly by Sphinx?
There was a problem hiding this comment.
We do lint them with Sphinx Lint, but that doesn't catch everything, especially not bad references.
We only check for warnings from a Sphinx build in files under Doc/:
cpython/Doc/tools/check-warnings.py
Lines 212 to 216 in c4f9823
We ignore those that are in .nitignore because they've not been "cleaned" yet, because we don't want to hassle people over warnings which they didn't introduce.
Similarly, we ignore the news files, because during the Sphinx build, they get compiled into a giant 45k line build/NEWS which has 700+ warnings (and growing, because we don't check them).
And so we don't want to warn for every single PR that adds a small NEWS blurb about those 700 warnings that they didn't introduce.
New entries are added to the top of the compiled NEWS file. One option would be to add a check to ensure the top X lines remain clean. Most NEWS entries are under 10 lines long, and the biggest right now is 18 lines, so checking something like the top 200 or so would prevent new warnings being introduced.
I started work on this in February, see hugovk#61. I'll pick this up again.
Plus fix some Sphinx warnings in the NEWS changelog (there are hundreds more because we don't check them in CI).
📚 Documentation preview 📚: https://cpython-previews--118694.org.readthedocs.build/