[Python-Dev] os.walk() with followlinks=False

Antoine Pitrou solipsis at pitrou.net
Wed Jan 11 15:54:05 CET 2012


On Wed, 11 Jan 2012 12:25:46 +1000
Nick Coghlan <ncoghlan at gmail.com> wrote:
> When discussing http://bugs.python.org/issue13734, Charles-François
> noted that when os.walk() is called with "followlinks=False", symlinks
> to directories are still included in the "subdirs" list rather than
> the "files" list.
> 
> This seems rather odd to me, so I'm asking here to see if there's a
> specific rationale for it, or if it's just an artifact of the
> implementation.
> 
> If it's the latter... could we change it for 3.3, or is that too
> significant a breach of backwards compatibility?

I think we could change it.

> Even if we can't change os.walk(), does os.walkfd() need to replicate
> the annoying behaviour for consistency, or can it instead consider
> such symlinks to be files rather than directories?

IMO walkfd() should do the right thing.

Regards

Antoine.




More information about the Python-Dev mailing list