Antoine Pitrou <[EMAIL PROTECTED]> added the comment: It's not /exactly/ nonsense, it seems to assume an utf8 encoding pass is necessary:
>>> b'\xe1\x80\x80'.decode('utf8') == '\u1000' True IMO, while accepting unicode strings instead of bytes for the a2b_xx functions is understandable (because in practice only ASCII characters are allowed), it is not acceptable for b2a_xx functions to accept unicode strings instead of bytes. In other words, it might/should be ok for `binascii.a2b_base64('YWFh\n')` to return the same as `binascii.a2b_base64('YWFh\n')` (that is, b'aaa'), but `binascii.b2a_base64('aaa')` should raise a TypeError rather than applying an utf8 encoding pass before doing the actual b2a encoding. I think this must be fixed before 3.0 final, and is therefore a release blocker. ---------- nosy: +pitrou priority: -> release blocker _______________________________________ Python tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue4387> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com