I would argue that just because it was easy for one to implement doesn't mean it's easy for others. I would have had no idea how to implement this without extra Googling and confusion. Having the abstraction makes it easier for others.
- Charlie Scott Machalow On Tue, Nov 8, 2022 at 1:12 AM Eryk Sun <eryk...@gmail.com> wrote: > On 11/8/22, Charles Machalow <csm10...@gmail.com> wrote: > > > > Funny enough in PowerShell, for prints an "l" for both symlinks and > > junctions.. so it kind of thinks of it as a link of some sort too I > guess. > > As does Python already in many cases. For example, os.lstat() doesn't > traverse a mount point (junction). On Windows, symlinks and mount > points are in a general category of name-surrogate reparse points. > os.lstat() doesn't traverse them. > > If Python supported copying a mount point via > os.symlink(os.readlink(src), dst), I'd be reluctantly in favor of just > letting ntpath.islink() return true for a mount point, as a practical > measure for seamless cross-platform implementations of functions like > rmtree() and copytree(). In terms of POSIX that's nonsense, but not > really on Windows. > > > Is it that much of a waste to just return False on posix? I mean it's a > > couple lines and just maintains api.. and in theory can be more clear to > > some. > > I'm just thinking this through in terms of conceptual cost and > usefulness in the standard library relative to how easy it is to > implement one's own isjunction() or is_name_surrogate() test. Of > course, a lot of the os.path tests have simple implementations, such > as exists(), isdir() and isfile(). They're in the standard library > because they're commonly needed. The question is whether isjunction() > is needed enough generally to justify adding it. >
_______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/MOY5NNFQK5PMD5GQBADZE3COVT7ONA62/ Code of Conduct: http://python.org/psf/codeofconduct/