Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Antoine Pitrou
Le 21/07/2014 18:26, Victor Stinner a écrit : I'm happy because the final API is very close to os.path functions and pathlib.Path methods. Python stays consistent, which is a great power of this language! By the way, http://bugs.python.org/issue19767 could benefit too. Regards Antoine. ___

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Akira Li
Ben Hoyt writes: >> Note: listdir() accepts an integer path (an open file descriptor that >> refers to a directory) that is passed to fdopendir() on POSIX [4] i.e., >> *you can't use scandir() to replace listdir() in this case* (as I've >> already mentioned in [1]). See the corresponding tests fr

Re: [Python-Dev] [PEP466] SSLSockets, and sockets, _socketobjects oh my!

2014-07-22 Thread Antoine Pitrou
Le 22/07/2014 17:44, Nick Coghlan a écrit : > > As for 2.x, I don't see why you couldn't just continue using a strong reference. As Antoine says, if the cycle already exists in Python 2 (and it sounds like it does), we can just skip backporting the weak reference change. No, IIRC there shou

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Victor Stinner
2014-07-22 4:27 GMT+02:00 Ben Hoyt : >> The PEP is accepted. > > Superb. Could you please update the PEP with the Resolution and > BDFL-Delegate fields? Done. Victor ___ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listi

Re: [Python-Dev] [PEP466] SSLSockets, and sockets, _socketobjects oh my!

2014-07-22 Thread Nick Coghlan
On 23 Jul 2014 07:28, "Antoine Pitrou" wrote: > > Le 22/07/2014 17:03, Alex Gaynor a écrit : > >> >> The question is: >> >> a) Should we backport weak referencing _socket.sockets (changing the structure >> of the module seems overly invasive, albeit completely backwards >> compatible)? >>

Re: [Python-Dev] [PEP466] SSLSockets, and sockets, _socketobjects oh my!

2014-07-22 Thread Antoine Pitrou
Le 22/07/2014 17:03, Alex Gaynor a écrit : The question is: a) Should we backport weak referencing _socket.sockets (changing the structure of the module seems overly invasive, albeit completely backwards compatible)? b) Does anyone know why weak references are used in the first place? T

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Ben Hoyt
Makes sense, thanks. -Ben On Tue, Jul 22, 2014 at 4:57 PM, Nick Coghlan wrote: > > On 23 Jul 2014 02:18, "Victor Stinner" wrote: >> >> 2014-07-22 17:52 GMT+02:00 Ben Hoyt : >> > However, given that we have to support this for listdir() anyway, I >> > think it's worth reconsidering whether scandi

[Python-Dev] [PEP466] SSLSockets, and sockets, _socketobjects oh my!

2014-07-22 Thread Alex Gaynor
Hi all, I've been happily working on the SSL module backports for Python2 (pursuant to PEP466), and I've hit something of a snag: In python3, the SSLSocket keeps a weak reference to the underlying socket, rather than a strong reference, as Python2 uses. Unfortunately, due to the way sockets work

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Nick Coghlan
On 23 Jul 2014 02:18, "Victor Stinner" wrote: > > 2014-07-22 17:52 GMT+02:00 Ben Hoyt : > > However, given that we have to support this for listdir() anyway, I > > think it's worth reconsidering whether scandir()'s directory argument > > can be an integer FD. Given that listdir() already supports

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Victor Stinner
2014-07-22 17:52 GMT+02:00 Ben Hoyt : > However, given that we have to support this for listdir() anyway, I > think it's worth reconsidering whether scandir()'s directory argument > can be an integer FD. Given that listdir() already supports it, it > will almost certainly be asked for later anyway

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Ben Hoyt
> Note: listdir() accepts an integer path (an open file descriptor that > refers to a directory) that is passed to fdopendir() on POSIX [4] i.e., > *you can't use scandir() to replace listdir() in this case* (as I've > already mentioned in [1]). See the corresponding tests from [2]. > > [1] https:/

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Akira Li
Ben Hoyt writes: > I think if I were doing this from scratch I'd reimplement listdir() in > Python as "return [e.name for e in scandir(path)]". ... > So my basic plan is to have an internal helper function in > posixmodule.c that either yields DirEntry objects or strings. And then > listdir() wou

Re: [Python-Dev] PEP 471 "scandir" accepted

2014-07-22 Thread Victor Stinner
Modify os.listdir() to use os.scandir() is not part of the PEP, you should not do that. If you worry about performances, try to implement my free list idea. You may modify the C code of listdir() to share as much code as possible. I mean you can implement your idea in C. Victor __