os.walk() with followlinks=False

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? 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? Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia

On Thu, Jan 12, 2012 at 12:54 AM, Antoine Pitrou <solipsis@pitrou.net> wrote:
For the benefit of those not following the tracker issue, Charles-François pointed out that putting the symlinks-to-directories into the files list instead of the subdirectory list isn't really any better (it just moves the problem to different use cases, such as those that actually want to read the file contents). With that being the case, I've changed my mind and figure we may as well leave the current behaviour alone. I'll think about adding a filter to walkdir that makes it easy to control the way they're handled [1]. [1] https://bitbucket.org/ncoghlan/walkdir/issue/9/better-handling-of-dir-symlin... Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia

On Thu, Jan 12, 2012 at 12:54 AM, Antoine Pitrou <solipsis@pitrou.net> wrote:
For the benefit of those not following the tracker issue, Charles-François pointed out that putting the symlinks-to-directories into the files list instead of the subdirectory list isn't really any better (it just moves the problem to different use cases, such as those that actually want to read the file contents). With that being the case, I've changed my mind and figure we may as well leave the current behaviour alone. I'll think about adding a filter to walkdir that makes it easy to control the way they're handled [1]. [1] https://bitbucket.org/ncoghlan/walkdir/issue/9/better-handling-of-dir-symlin... Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia
participants (2)
-
Antoine Pitrou
-
Nick Coghlan