[Python-Dev] Python launcher command line usage (Was: 3.2.1 encoding surprise)

Terry Reedy tjreedy at udel.edu
Wed Jul 20 20:38:47 CEST 2011


On 7/20/2011 3:22 AM, Paul Moore wrote:
> On 20 July 2011 03:21, Terry Reedy<tjreedy at udel.edu>  wrote:
>> Suppose for Windows there were one '.../python' directory wherever the user
>> first asks it to be put and that all pythons, not just cpython, are
>> installed in directories below that and that the small startup file is
>> copied into or linked from the python directory. Then the one python
>> directory could be put on the path and left there and never removed by any
>> python de-installer (unless perhaps it check that there are no subdirs and
>> *asks* the user.
>
> Hmm. Suppose that directory was "C:\Program Files\Python Launcher" (or
> "C:\Windows\system32" if you don't want to add an extra directory to
> PATH). And suppose that instead of having a startup file per Python
> installation you have a single file called py.exe. Then you have the
> launcher!
>
> Plus, the launcher has its own uninstaller, making it a "normal" part
> of the Windows environment, rather than being a directory created by
> something which doesn't get uninstalled.
>
> Plus, the launcher has a means of dealing with the "generic" python,
> python2 and python3 commands, which your proposal doesn't.
>
> Plus, the launcher deals with existing versions of Python, which your
> proposal doesn't (except by manual intervention).
>
> But yes, the idea is sound, which is why it's so similar to what Vinay
> did with the launcher IMO.

Many installers first make an organization directory and then an app 
directory within that. This annoys me sometimes when they only have one 
app to ever install, but is useful when there might really be multiple 
directories, as in our case. (Ditto for start menu entries.) This is 
what python should have done a decade ago. Now is not too late.

The launcher has to be in a directory somewhere on the path. That 
directory could just as well be 'our' directory. The two proposals 
overlap but are not mutually exclusive. For future pythons, 'python33' 
is easier to remember and type than 'py -v 3.3' or whatever the proposed 
encantation is.

A python directory also gives a sensible (though optional) place to put 
other interpreters and even python-based apps. The launcher does not.

-- 
Terry Jan Reedy



More information about the Python-Dev mailing list