◐ Shell
clean mode source ↗

Improve `encodings.normalize_encoding` behaviour or docs

Bug report

Bug description:

This is to wait for #55531 / #136643

  • This function accepts bytes since 98297ee. This is however undocumented, and untested. I propose deprecating (& later removing) it, otherwise it should be documented and tested properly.

  • This function is documented as

    encoding should be ASCII only.

    However, this is only enforced for bytes (see point 1) with a ValueError, and for strings the characters are simply removed. We should be consistent and not depend on input type. I propose enforcing this for strings too with a ValueError.

cc @malemburg (Note, absolutely no rush for this one, we should get the performance issue/C implementation sorted out first :-)

CPython versions tested on:

CPython main branch

Operating systems tested on:

No response

Linked PRs