Skip to content

"Python: Locator" = "native" resolves Windows symlinks, causing problems. #186

Open
@Boon-in-Oz

Description

@Boon-in-Oz

My Python executable and most of the packages I work on are physically located on drive S:, but are mapped to a location on my C:\ drive using a Windows junction. Thus I open a workspace using a path that starts with C:\ and everything I see starts with C:, even though all the files I work on are physically on my S:\ drive.

With "Python: Locator" = "js", this is fine. I have this line of in VS Code's Python output:

[info] Python interpreter path: c:<my workspace location>/../python3.10.11/python.exe

With "Python: Locator" = "native" however, VS Code's Python extension resolves not only the .. in the path but also the junction to its physical location on the S:\ drive. I now have this in the Python output:

[info] Python interpreter path: S:<resolved location>\python3.10.11\python.exe

VS Code shows (in the tooltip in the bottom right) the Python exe being in the S:\ drive location. If I choose a new Python interpreter, the interpreter location is shown as being in the C:\ drive but when I choose it, it's resolved to the S:\ drive again.

Specifically in my case this results in dlls being loaded from the wrong location, that then try to manipulate files using a path that is outside the "blessed" location for my workplace, and things fail in unexpected ways.

Thanks for your time. I hope that's enough to go on.

Metadata

Metadata

Assignees

Labels

bugIssue identified by VS Code Team member as probable buginfo-neededIssue requires more information from poster

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions