gh-141004: Improve make check-c-api-docs#143564
Conversation
This makes the check much faster. It also found 4 additional undocumented APIs, as it does not match substrings (e.g. documenting `PyErr_WarnEx` doesn't mean that `PyErr_Warn` is documented)
ZeroIntensity
left a comment
There was a problem hiding this comment.
Thanks, this looks pretty good as-is.
One extra thing I would like to do is run the script on docs PRs, since a name being documented while also being in ignored_c_api.txt will cause it to fail. So, if someone merges new documentation without updating ignored_c_api.txt, we'll see blocking failures on all C code PRs until we fix it. I haven't looked too closely at the GHA for change detection, but if you see an easy way to do that, would you mind doing it in this PR?
|
I'm not much of a GHA expert, so I'd leave changes to that to a separate PR. |
ZeroIntensity
left a comment
There was a problem hiding this comment.
Ok, let's just merge this as-is.
See #143573. |
|
Thanks @encukou for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13, 3.14. |
|
Sorry, @encukou, I could not cleanly backport this to |
|
Sorry, @encukou, I could not cleanly backport this to |
) - Gather all documented names into a set in a single pass. This makes the check much faster. - Do not match substrings (e.g. documenting `PyErr_WarnEx` doesn't mean that `PyErr_Warn` is documented) - Consider `PY`-prefixed names (a lot of old macros use this) (cherry picked from commit 234a15d)
|
GH-143593 is a backport of this pull request to the 3.14 branch. |
- Gather all documented names into a set in a single pass. This makes the check much faster. - Do not match substrings (e.g. documenting `PyErr_WarnEx` doesn't mean that `PyErr_Warn` is documented) - Consider `PY`-prefixed names (a lot of old macros use this) (cherry picked from commit 234a15d)
|
GH-143594 is a backport of this pull request to the 3.13 branch. |
) - Gather all documented names into a set in a single pass. This makes the check much faster. - Do not match substrings (e.g. documenting `PyErr_WarnEx` doesn't mean that `PyErr_Warn` is documented) - Consider `PY`-prefixed names (a lot of old macros use this) (cherry picked from commit 234a15d)
) - Gather all documented names into a set in a single pass. This makes the check much faster. - Do not match substrings (e.g. documenting `PyErr_WarnEx` doesn't mean that `PyErr_Warn` is documented) - Consider `PY`-prefixed names (a lot of old macros use this) (cherry picked from commit 234a15d)
|
- Gather all documented names into a set in a single pass. This makes the check much faster. - Do not match substrings (e.g. documenting `PyErr_WarnEx` doesn't mean that `PyErr_Warn` is documented) - Consider `PY`-prefixed names (a lot of old macros use this)
Gather all documented names into a set in a single pass. This makes the check much faster.
Do not match substrings (e.g. documenting
PyErr_WarnExdoesn't mean thatPyErr_Warnis documented)Consider
PY-prefixed names (a lot of old macros use this)