Antoine Pitrou <pit...@free.fr> added the comment: > Is there an easy way for me to find the code for -u?
"-u" just passes 0 for the "buffering" argument to open() when creating stdout and stderr. Otherwise "buffering" equals -1. You can find equivalent code for open() in Lib/_pyio.py (the actual code in is in C). The practical difference is that "-u" removes the binary buffering layer between the unicode layer and the raw file object: $ ./python -c "import sys; print(sys.stdout, sys.stdout.buffer)" <_io.TextIOWrapper name='<stdout>' encoding='UTF-8'> <_io.BufferedWriter name='<stdout>'> $ ./python -u -c "import sys; print(sys.stdout, sys.stdout.buffer)" <_io.TextIOWrapper name='<stdout>' encoding='UTF-8'> <_io.FileIO name='<stdout>' mode='wb'> This should make absolutely no difference as to newline handling, since that is handled exclusively in TextIOWrapper (binary layers are transparent by construction). ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue10841> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com