<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2018-03-18 5:41 GMT+01:00 Nathaniel Smith <span dir="ltr"><<a href="mailto:njs@pobox.com" target="_blank">njs@pobox.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Sat, Mar 17, 2018 at 10:15 AM, Stephen J. Turnbull<br>
<<a href="mailto:turnbull.stephen.fw@u.tsukuba.ac.jp">turnbull.stephen.fw@u.<wbr>tsukuba.ac.jp</a>> wrote:<br>
> (5) perform operations on several objects denoted by Paths at once<br>
>     (copy and its multiple operand variants),<br>
<br>
</span>Sure it does: Path.rename and Path.replace. I know why rename and copy<br>
have historically been in separate modules, but the distinction is<br>
pretty arcane and matters a lot more to implementers than it does to<br>
users.<br>
<br>
Similarly, it's hard to explain why we have Path.mkdir but not<br>
Path.makedirs -- and these have historically both lived in the 'os'<br>
module, so we can't blame it on Path being a mirror of os.path. It's<br>
also not obvious why we should have Path.rmdir, but not Path.rmtree.<br>
<br>
My understanding is that the point of Path is to be a convenient,<br>
pleasant-to-use mechanism for accessing common filesystem operations.<br>
And it does a pretty excellent job of that. But it seems obvious to me<br>
that it's still missing a number of fairly basic operations that<br>
people need all the time. I don't think the PEP is there yet, and we<br>
can quibble over the details -- just copying over all the historical<br>
decisions in shutil isn't obviously the right move (maybe it should be<br>
Path.mkdir(include_parents=<wbr>True) and Path.unlink(recursive=True)<br>
instead of Path.makedirs and Path.rmtree?), but there's definitely<br>
room for improvement.<br>
<span class="HOEnZb"><font color="#888888"><br>
-n<br>
<br>
--<br>
Nathaniel J. Smith -- <a href="https://vorpus.org" rel="noreferrer" target="_blank">https://vorpus.org</a><br>
</font></span></blockquote></div><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">:-)</div><div class="gmail_extra">+ 1</div><div class="gmail_extra"><br></div><div class="gmail_extra">George</div></div>