Open brettcannon opened 3 years ago
Today I created a .venv and ran py -m pip -V
to confirm it was using the venv before I realized I wasn't using python-launcher, but was instead using the original Windows python launcher that's bundled with Python. I came here to see if this project had any plans to support Windows, and was pleasantly surprised to find the milestone.
Perhaps another way to tackle this problem could be to migrate venvs to use bin/
instead of Scripts/
. Reduce the divergence across platforms and save the hassle of the divergent behavior for many other libraries and applications. It would be some churn, but the disruption could likely be mitigated with some symlinks or hard links. IIRC, the divergent behavior was entirely artificial and unnecessary. Probably the hardest impediment to making the switch would be where to coordinate the change, given there are two popular implementations of "virtual environments" (virtualenv and venv), one of which is in the stdlib.
Amendment: I remember now, the Scripts
convention doesn't come originally from virtualenv - it comes from Python's implementation itself, which uses Scripts
instead of bin
in its install layout. Quite the thread to pull on.
* pulls thread
https://github.com/python/cpython/issues/97586 proposes to make bin
available as a junction. https://github.com/python/cpython/issues/58510 proposes to rename it. Apparently it's not impossible to move install locations (although to be sure, it's certainly more fraught today than in 2001. It looks like the origin of the Scripts directory was this commit to distutils.
I.e. the Windows version of supporting default virtual environments.