Python install manager 26.0

I’ve just released the next install manager update, the first (hopefully only) of 2026. Automatic updates should start within the next 24 hours.

Global script entry points

With this release, Python install manager will now generate global shortcut executables for installed packages that register through their entry_points.txt file. For users who add the global shortcuts directory to their PATH (as prompted on first run, and reminded on every install), this will make any globally installed packages available as well, without having to add an interpreter-specific directory to PATH. Primarily, this will handle issues with pip.exe not being present immediately after install.

It’s important to note that the install manager can only add shortcuts when it is doing installs, and so packages mostly won’t have shortcuts immediately on install. Users need to run py install --refresh (or another install) to get them. My hope is that one day installers (such as pip) will learn to run this command themselves, but until then, users will just have to get used to it - short of adding a task to constantly scan their hard drive, there’s no way for us to know about new package installs. (My actual hope is that people will use virtual environments instead of global installs, but feedback so far has shown that many won’t.)

Default Python install for Windows

One of the promises in the original proposal was that the Python install manager would integrate nicely with the built-in python.exe redirector that comes with Windows. With this release, after a short period to demonstrate stability, we’ll be getting that redirector updated to refer to the install manager (it’s currently still on the last 3.13 release). This should result in over 10K new installs per day, which means we will likely hear more feedback, but I think we’re ready for it.

Minor changes in this release

  • authenticated proxy servers now auto-logon when the OS knows the credentials
  • shebang lines in scripts may now choose the version for automatic installs (e.g. if you py exec my-script.py and it contains #! python3.13 but you don’t have 3.13 installed)
  • shebang lines won’t cause pyw/pythonw windowed launchers to display consoles (e.g. if you didn’t specify #! pythonw as the shebang)

Feedback

All feedback and issues can come to the python/pymanager repository.

9 Likes

For anyone looking for how to disable entrypoints for installed packages:

It’ll also be documented at 4. Using Python on Windows — Python 3.15.0a6 documentation when the PR lands.

I used the new install manager for the first time recently. I miss having a pip executable. I know we generally prefer python -m pip on windows but pip is so embedded in docs, etc.

Is there an option to get a pip executable? (I’ve thought about making a simple bat file called pip that forwards to python -m pip but figured I’d ask here)

Did you use the current (26.0) release that’s announced in this post? And did you read the bit of the post where I mentioned that it now creates the pip command (if you’ve enabled global commands)?

If you did, then you may have hit a bug, so I’d suggest running py install --refresh and grabbing the log file from your %TEMP% and filing it at python/pymanager.

1 Like

Windows’s built-in redirector has been updated, and will now direct users to the install manager.

5 Likes