It seems to me py launcher could have done the same thing as uv such as downloading and setting up python and managing virtual environments.
pip used to support virtualenvs.
pip 0.2 (2008) https://pypi.org/project/pip/0.2/ :
> pip is complementary with virtualenv, and it is encouraged that you use virtualenv to isolate your installation.
https://pypi.org/project/pip/0.2/#using-pip-with-virtualenv :
pip install -E venvpath/ pkg1 pkg2
When was the -E <virtualenv> flag removed from pip and why? pip install --help | grep "\-E"
Huh. Come to think of it, when I was on Windows (through 2021) I got used to using `python` rather than `py` while using venvs, even though it was apparently no longer necessary after I upgraded from Python 3.4. This announcement totally missed me. But also it was easier to internalize "always use venvs, and always run `python`, and that way you won't have to change the instructions for Linux/Mac". And that worked out beautifully.
But the launcher does have value. Mainly because of how Windows handles the PATH and how it wants C:\Program Files to be organized; but there are enough fringe benefits that a core dev wants to bring it to Linux/Mac too (https://github.com/brettcannon/python-launcher).