Hi, I started to work on email module, but I have trouble to understand if a function should returns bytes or str (because I don't know email module).
Header.encode() -> bytes? Message.as_string() -> bytes? decode_header() -> list of (bytes, str|None) or (str, str|None)? base64MIME.encode() -> bytes? message_from_string() <- bytes? Message.get_payload() -> bytes or str? A charset name type is str, right? --------------- Things to change to get bytes: - replace StringIO with BytesIO - add 'b' prefix, eg. '' becomes b'' - replace "%s=%s" % (x, y) with b''.join((x, b'=', y)) => is it the best method to concatenate bytes? Problems (to port python 2.x code to 3000): - When obj.lower() is used, I expect obj to be str but it's bytes - obj.strip() doesn't work when obj is a byte, it requires an argument but I don't know the right value! Maybe b'\n\r\v\t '? - iterate on a bytes object gives number and not bytes object, eg. for c in b"small text": if re.match("(\n|\r)", c): ... Is it possible to 'bytes' regex? re.compile(b"x") raise an exception -- Victor Stinner aka haypo http://hachoir.org/ _______________________________________________ Python-3000 mailing list Python-3000@python.org http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com