On 11.04.2016 23:05, Random832 wrote:
On Mon, Apr 11, 2016, at 16:48, Sven R. Kunze wrote:
On 11.04.2016 22:33, Alexander Walters wrote:
If there is headway being made, I do not see it.
Funny that you brought it up. I was about posting something myself. I
cannot agree completely. But starting with a comment from Paul, I
realized that pathlib is something different than a string. After doing
the research and our issues with pathlib, I found:
- pathlib just needs to be improved (see my 5 points)
- os[.path] should not tinkered with
I'm not so sure. Is there any particular reason os.path.join should
require its arguments to be homogenous, rather than allowing
os.path.join('a', b'b', Path('c')) to return 'a/b/c'?
Besides the fact, that I don't like mixing types (this was something
that worried me about the discussion from the beginning), you can
achieve the same using pathlib alone.
There's no need of it let alone the maintenance and slowdown of these
implicit conversions.
I know that all of those discussions of a new protocol (path->str,
__fspath__ etc. etc.) might be rendered worthless by these two
statements. But that's my conclusion.
"os" and "os.path" are just lower level. "pathlib" is a high-level,
convenience library. When using it, I don't want to use "os" or
"os.path" anymore. If I still do, "pathlib" needs improving. *Not "os"
nor "os.path"*.
The problem isn't you using os. It's you using other modules that use
os. or io, shutil, or builtins.open. Or pathlib, if what *you're* using
is some other path library. Are you content living in a walled garden
where there is only your code and pathlib, and you never might want to
pass a Path to some function someone else (who didn't use pathlib)
wrote?
os is being used as an example because fixing os probably gets you most
other things (that just pass it through to builtins.open which passes it
through to os.open) for free.
Hypothetical assumptions meeting implicit type conversions. You might
prefer those, I don't because of good reason. I was one of those
starting the discussion around pathlib improvements. I understand now,
that this is one of its minor issues. And btw. using some "other
pathlib" is no argument for or against improving "THE pathlib".
The .path attribute will do it from what I can see.
Best,
Sven
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com