classification
Title: Windows installer does not detect existing installs
Type: behavior Stage: resolved
Components: Installation, Windows Versions: Python 3.6, Python 3.5
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: steve.dower Nosy List: larry, paul.moore, python-dev, steve.dower, tim.golden, zach.ware
Priority: critical Keywords:

Created on 2015-07-07 16:18 by steve.dower, last changed 2015-09-06 13:49 by steve.dower. This issue is now closed.

Messages (12)
msg246426 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-07-07 16:18
If you have Python 3.5.0b2 installed and run the Python 3.5.0b3 installer, it will upgrade correctly, but gives no indication that it will remove the old one.

We should default to an upgrade using the same settings as the previous installation when one exists. Users can then hit Customize to change settings if they want, or uninstall the old version to do a clean install.
msg246427 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-07-07 16:20
Making this a release blocker - the installer changes required here are probably big enough that I really don't want the last beta going out without them (or alternatively, the rc to be the first time they get tried).
msg246447 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-07-08 03:53
Looks like there's also a problem with Modify being performed by a different user than the one who installed last. Need to come up with a way to properly detect installed features, which should fix both cases.
msg246478 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2015-07-09 03:19
New changeset 8e18d615988e by Steve Dower in branch '3.5':
Issue #24585: Enables build-to-build upgrades that preserve settings.
https://hg.python.org/cpython/rev/8e18d615988e

New changeset 2a8a39640aa2 by Steve Dower in branch 'default':
Issue #24585: Enables build-to-build upgrades that preserve settings.
https://hg.python.org/cpython/rev/2a8a39640aa2
msg246479 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-07-09 03:31
Doesn't touch anything significant outside the installer, so I just committed it. Feel free to read over the change and comment here if you want, but we unfortunately won't get complete testing of this until rc1.

I added some helpers for faking out version numbers, so if you want to try building the installer you can do:

tools\msi\build.bat -x86
move PCBuild\win32\en-us test350
msbuild tools\msi\bundle\snapshot.wixproj /p:OverrideVersion=3.5.1 /t:Rebuild
move PCBuild\win32\en-us test351

which will give you two installers with different versions (though the actual interpreter is unaffected). Or just hold out for the actual releases - I'll be testing it in the meantime.
msg247395 - (view) Author: Larry Hastings (larry) * (Python committer) Date: 2015-07-25 21:09
Since we apparently can't test this without making the release, but it's important enough to not defer, I am in the unenviable position of shipping the last beta with this bug marked as a release blocker.

Fingers crossed!
msg247427 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-07-26 13:36
Sorry to do that to you Larry, though I have done extra testing on these changes (hence the fake version support) so I'm confident they work, just not yet 100% confident the user experience is going to be correct.
msg248302 - (view) Author: Larry Hastings (larry) * (Python committer) Date: 2015-08-08 21:54
Did this work as hoped in beta 4?  Can we mark it as fixed now?
msg248305 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-08-08 22:02
We won't really know until we've gotten feedback from people with b4 who install rc1 - the upgrade step is the part that needs testing, and that takes two releases.

If you want to pull the priority down though, go ahead.
msg248319 - (view) Author: Larry Hastings (larry) * (Python committer) Date: 2015-08-09 10:12
Quoting from PEP 101:

   release blocker - Stops the release dead in its tracks.  You may not
                     make any release with any open release blocker bugs.

So, yeah, I want to.
msg249983 - (view) Author: Larry Hastings (larry) * (Python committer) Date: 2015-09-06 08:08
What happened with this?
msg249993 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2015-09-06 13:49
Good to go!
History
Date User Action Args
2015-09-06 13:49:17steve.dowersetstatus: open -> closed
resolution: fixed
messages: + msg249993

stage: commit review -> resolved
2015-09-06 08:08:22larrysetmessages: + msg249983
2015-08-09 10:12:23larrysetpriority: release blocker -> critical

messages: + msg248319
2015-08-08 22:02:34steve.dowersetmessages: + msg248305
2015-08-08 21:54:40larrysetmessages: + msg248302
2015-07-26 13:36:00steve.dowersetmessages: + msg247427
2015-07-25 21:09:11larrysetnosy: + larry
messages: + msg247395
2015-07-09 03:31:18steve.dowersetmessages: + msg246479
stage: commit review
2015-07-09 03:19:49python-devsetnosy: + python-dev
messages: + msg246478
2015-07-08 03:53:38steve.dowersetmessages: + msg246447
2015-07-07 16:20:01steve.dowersetpriority: normal -> release blocker

messages: + msg246427
2015-07-07 16:18:36steve.dowercreate