[Python-ideas] Make py.exe default to Python 3

Chris Barker chris.barker at noaa.gov
Fri Mar 18 16:35:06 EDT 2016


On Wed, Mar 16, 2016 at 10:32 AM, Paul Moore <p.f.moore at gmail.com> wrote:

> On 16 March 2016 at 17:17, Chris Barker <chris.barker at noaa.gov> wrote:
> > As in:
> >
> > If someone installs a version of python with defaults, they should then
> get
> > that version when they type "python" (or maybe "py") at the command line.
> >
> > If they want something other than the last one they installed, then
> they'll
> > have to mess with PATH or other configuration...
>
> In theory, this makes sense to me. What it needs is someone to
> champion it.


Isn't that what this conversation is doing? :-)


> 1. What if I want to install a version *not* for day to day use but
> just for testing (i.e., there needs to be an easily accessible "leave
> PATH alone" option).
>

yes, there should be a "leave PATH alone" checkbox, that is unchecked by
default. If you want to get really fancy, you could require a question be
asked of the user if there is already a python there. I have no idea if
it's had to do this in a regular installer.


> 2. How does this interact with uninstalls and upgrades? If I install
> 3.7, then 3.8 then uninstall 3.7, then install 3.6, then upgrade 3.8
> to 3.8.1, what's left on PATH? (The answer I *want* is 3.8.1. That may
> well be a nightmare to implement).


wait, I'm confused -- if the last thing you do is upgrade to 3.8.1, then
that will be in the PATH by default, but what if you:

install 3.7, then install 3.8, then uninstall 3.8 -- would 3.7 be left on
the PATH?

That could be pretty darn tricky -- though, again, if you undestand PATH
manipulations, you can fix it, and if you don't you can go back and
re-install 3.7, just to get the PATH set.

It's easy enough to dismiss point (2) as "well, you know what you're
> doing", but I have experience of people doing a series of installs
> like this, getting confused with PATH and doing a google search to
> find out how to "fix" it. So it is a genuine situation a non-expert
> user could find themselves in.
>

yup but if their google search turns up:

"either hand-manipulate the PATH to fix this, or simply re-install the one
you want" then we're in fine shape. It's not rare for "re-install the
software" to be the easiest solution to messed up configuration.

> After all, what do people expect when they have MSWord version X, and
> then install MSWord version X+1
>
> But nobody *ever* runs multiple versions of MS Word. Whereas there are
> genuine reasons for people (and not just experts, although admittedly
> not complete beginners) to run multiple versions of Python. The MS
> Word argument implies that the Python installer should automatically
> and silently uninstall any older versions of Python present on the
> user's machine.


no -- but it wouldn't be so bad if it did *appear* to have done that. The
naive user will not be surprised -- it's common behavior -- and just
reinstall the old one, even if all it does is re-set the PATH. The more
sophisticated user will know to go in and mess with PATH.

In short, if we overly simplistically break the world down inot people that
"get" PATH, and those that don't:

The default jsut click through witout reading it intstall should do the
most expected thing for don't-get-PATH folks -- i.e. they get access to the
mosst recent version installed.

It should be possible for do-get-PATH folks to customize the system
(ideally without having to get the registry, too!)

-CHB


-- 

Christopher Barker, Ph.D.
Oceanographer

Emergency Response Division
NOAA/NOS/OR&R            (206) 526-6959   voice
7600 Sand Point Way NE   (206) 526-6329   fax
Seattle, WA  98115       (206) 526-6317   main reception

Chris.Barker at noaa.gov
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20160318/00a8d375/attachment-0001.html>


More information about the Python-ideas mailing list