Arfrever Frehtes Taifersar Arahesis added the comment:
py_compile.compile() was always replacing contents of target file, but was not
causing that a given link name would refer to a different inode.
builtins.open() has correct behavior:
# stat /dev/null
File: ‘/dev/null’
Size: 0 Blocks: 0 IO Block: 4096 character special
file
Device: 5h/5d Inode: 3242180 Links: 1 Device type: 1,3
Access: (0666/crw-rw-rw-) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2013-02-18 20:11:07.883986147 +0100
Modify: 2013-02-18 20:11:07.883986147 +0100
Change: 2013-02-18 20:11:07.883986147 +0100
Birth: -
# python3.4 -c 'null = open("/dev/null", "wb"); null.write(b"abc");
null.close()'
# stat /dev/null
File: ‘/dev/null’
Size: 0 Blocks: 0 IO Block: 4096 character special
file
Device: 5h/5d Inode: 3242180 Links: 1 Device type: 1,3
Access: (0666/crw-rw-rw-) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2013-02-18 20:11:07.883986147 +0100
Modify: 2013-02-18 20:11:07.883986147 +0100
Change: 2013-02-18 20:11:07.883986147 +0100
Birth: -
----------
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue17222>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com