New submission from kai zhu <kaizhu...@gmail.com>: i'm working on an independent py2to3 utility which directly imports py2x modules, by reverse compiling ast trees (code.google.com/p/asciiporn/source/browse/stable.py)
while forward porting the python2x redis client, this issue came up. i kno its bad to use strings in sockets, but it seems webapps use it exploiting the fact utf8 is becoming a defacto web 'binary' standard $ python3.1 echo.py connected <socket.socket object, fd=4, family=2, type=1, proto=0> ('127.0.0.1', 41115) $ python3.1 client.py b'hello\r\n' recv() b'hello\r\n' makefile(mode = "rb") 'hello\n' makefile(mode = "r") ## echo.py - echo server program import socket serv = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: serv.bind(('localhost', 12345)) serv.listen(1) while True: conn, addr = serv.accept() print( 'connected', conn, addr ) while True: data = conn.recv(4096) if not data: conn.close() break conn.send(data) finally: serv.close() ## client.py - client program data = b'hello\r\n' import socket clie = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: clie.connect(('localhost', 12345)) clie.send(data) data = clie.recv(4096) print(repr(data), 'recv()') clie.send(data) file = clie.makefile('rb') data = file.readline() print(repr(data), 'makefile(mode = "rb")') clie.send(data) file = clie.makefile('r') data = file.readline() print(repr(data), 'makefile(mode = "r")') ## '\r' is silently dropped finally: clie.close() ---------- components: 2to3 (2.x to 3.0 conversion tool), IO, Library (Lib), Unicode messages: 118095 nosy: kaizhu priority: normal severity: normal status: open title: socket.makefile(mode = 'r').readline() silently removes carriage return type: behavior versions: Python 3.1, Python 3.2 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue10041> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com