New submission from andreymal <andriyano...@mail.ru>: See attached file.
As documentation about "truncate" says, "The current stream position isn’t changed." This is true for most cases. But this is not true for "wtf1.py" example. If you run it with Linux (Tested Debian 8 and Arch; Windows was not tested by me) and Python 3.3+ (or with Python 2.7 using backported "io" module), then these lines: print('tell:', fp.tell()) print('truncate:', fp.truncate()) print('tell again:', fp.tell()) prints this: tell: 4098 truncate: 4098 tell again: 4 As you can see, "tell" before truncate and "tell" after truncate are different. Looks like bug. This bug will not reproduce with Python 2.7 and builtin "open" function; it affects only "io.open". ---------- components: IO files: wtf1.py messages: 307698 nosy: andreymal priority: normal severity: normal status: open title: truncate() changes tell() result versions: Python 2.7, Python 3.4, Python 3.5, Python 3.6 Added file: https://bugs.python.org/file47321/wtf1.py _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue32228> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com