On 10 July 2013 21:30, Nick Coghlan <ncoghlan@gmail.com> wrote:

On 11 Jul 2013 04:56, "Brett Cannon" <brett@python.org> wrote:
> Didn't know Windows was never updated to use a versioned binary. That's rather unfortunate.

Hence the PyLauncher project.

Paul's right, though - the PEP is currently very *nix-centric. For Windows, we likely need to consider something based on "py -m pip", which then raises the question of whether or not that's what we should be supporting on *nix as well (with pip and pip3 as convenient shorthand).

There's also the fact that the Python launcher is *already* available as a separate Windows installer for earlier releases. Perhaps we should just be bundling the bootstrap script with that for earlier Windows releases.

Thanks Nick. I was part way through a much more laboured email basically saying the same thing :-)

For reference, PEP 394 is the versioned binary PEP. It is explicitly Unix only and defers Windows to PEP 397 (pylauncher) as being "too complex" to cover alongside the Unix proposal :-)

I think "python -m pip" should be the canonical form (used in documentation, examples, etc). The unittest module has taken this route, as has timeit. Traditionally, python-dev have been lukewarm about the -m interface, but its key advantage is that it bypasses all the issues around versioned executables, cross-platform issues, the general dreadfulness of script wrappers on Windows, etc, in one fell swoop.