PyUnicode_FromFormat() is loose in checking for errors in the format string. If it encounter an invalid format specifier, it silently outputs the rest of the format string. And it allows digits between %s: "%123%" is interpreted the same as "%%", i.e. as literal %.
It was not a big problem, because it is expected that the user of the C API do not make mistakes in the format string, and incorrect format string can easily lead to crash. But id did not help either.
Activity
pythongh-95781: More strict format string checking in PyUnicode_FromF…
pythongh-95781: More strict format string checking in PyUnicode_FromF…
gh-95781: More strict format string checking in PyUnicode_FromFormatV…
pythongh-95781: More strict format string checking in PyUnicode_FromF…