<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Tue, 22 Mar 2016 at 23:46 Nick Coghlan <<a href="mailto:ncoghlan@gmail.com">ncoghlan@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 23 March 2016 at 15:44, Nick Eubank <<a href="mailto:nickeubank@gmail.com" target="_blank">nickeubank@gmail.com</a>> wrote:<br>
> True -- my feeling is that if we're ok with defaults in a pathlib method,<br>
> why not put them in a string method?<br>
<br>
pathlib is explicitly about filesytem management and manipulation,<br>
while strings don't inherently have anything to do with filesystems,<br>
and only a little bit to do with serialisation (via str.encode).<br>
<br>
Having some lower level convenience functions in io may make sense<br>
(specifically io.write_bytes(path, data) and io.write_text(path, data,<br>
encoding=None, errors=None), but the str builtin definitely isn't the<br>
right place for the capability.<br></blockquote><div><br></div><div>I agree this has nothing to do with `str` or `bytes` directly and should not be exposed on those types. And if you look at the issue that Victor linked to, getting a function that behaves consistently for atomic file operations across OSs is very tough. I think it would be best is follow the advice Victor gave in the issue he linked to and for someone to make a library with defaults they think are reasonable for atomic file operations, put it on PyPI, and get community feedback before trying to add it to the stdlib.</div></div></div>