Author steve.dower
Recipients eryksun, miss-islington, paul.moore, steve.dower, tim.golden, zach.ware
Date 2019-10-29.21:33:26
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1572384806.58.0.764210223804.issue38453@roundup.psfhosted.org>
In-reply-to
Content
The discussion on the PR has raised one scenario where our algorithm conflicts with what we can reasonably emulate from the IO manager (which is itself not entirely self-consistent):

If you call ntpath.realpath(r"C:\spam\eggs") where "spam" is a symlink/junction to "D:\foo\baz" and "D:\foo\baz\eggs" is a relative symlink to "..\bar" and "D:\foo\bar" does not exist, we will incorrectly return "C:\bar".

Note that if "D:\foo\bar" *does* exist, we will return the correct result. And if "C:\spam" is *not* a symlink/junction, we will return the correct result.

Essentially, we fail in the case where ntpath.exists(X) fails and realpath(dirname(X)) != dirname(X) and readlink(X).startswith("..\\") is True.

Considering it's taken months of patient explanation from Eryk Sun for me to understand this, and nobody has ever complained about it, I'm prepared to call it a known limitation.
History
Date User Action Args
2019-10-29 21:33:26steve.dowersetrecipients: + steve.dower, paul.moore, tim.golden, zach.ware, eryksun, miss-islington
2019-10-29 21:33:26steve.dowersetmessageid: <1572384806.58.0.764210223804.issue38453@roundup.psfhosted.org>
2019-10-29 21:33:26steve.dowerlinkissue38453 messages
2019-10-29 21:33:26steve.dowercreate