classification
Title: Add MSI suport for uninstalling individual versions
Type: enhancement Stage: resolved
Components: Distutils Versions: Python 3.5
process
Status: closed Resolution: out of date
Dependencies: Superseder:
Assigned To: Nosy List: bethard, eric.araujo, loewis, steve.dower, tarek
Priority: normal Keywords:

Created on 2009-05-05 02:29 by bethard, last changed 2021-02-03 18:29 by steve.dower. This issue is now closed.

Messages (10)
msg87203 - (view) Author: Steven Bethard (bethard) * (Python committer) Date: 2009-05-05 02:29
With issue5311 now resolved, bdist_msi can generate a single MSI that
can install to any number of Python versions (for pure Python modules).
Right now, you can only install or uninstall these MSIs, but it would be
nice to also provide a "Change" installation.

For example, if you installed a new version of Python, this would allow
you to add your already installed pure Python modules to this Python
installation by just going to Add/Remove Programs and selecting the
feature for the new version.

I'll try to make some time to work on this.
msg113012 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2010-08-05 19:04
I am just responding so this will not show up on the 'unanswered issues' list.
msg113014 - (view) Author: Éric Araujo (eric.araujo) * (Python committer) Date: 2010-08-05 19:05
Terry, why? It is, after all, still unanswered.
msg113054 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2010-08-05 21:01
Because this basically is a self-reminder note by a developer to himself, which he assigned to himself, so no answer is needed. Removing such things from 'unanswered' will make it easier to focus on posts by newcomers who need a thoughtful answer. [Sorry Steven, Eric asked here, so I am answering here.]

But anyway, if there already is an Add/Remove entry and if this make it easier to, say, add or move something in 3.1 to 3.2, that would be good. Whether pure Pytyon modules should even have an Add/Remove entry is a different issue which has been inconclusively debated on pydev.
msg113056 - (view) Author: Éric Araujo (eric.araujo) * (Python committer) Date: 2010-08-05 22:15
Thanks for the reply Terry, I didn’t get that. Maybe you can edit your boilerplate message to prevent future misunderstandings like mine :)
msg113093 - (view) Author: Steven Bethard (bethard) * (Python committer) Date: 2010-08-06 10:16
Unassigning, because it's likely I won't have time to work on this for a while. I still think it would be a nice feature. ;-)
msg119373 - (view) Author: Éric Araujo (eric.araujo) * (Python committer) Date: 2010-10-22 09:10
“For example, if you installed a new version of Python, this would allow
you to add your already installed pure Python modules to this Python
installation by just going to Add/Remove Programs and selecting the
feature for the new version.”

Would you have to do this for every installed distribution?  Seems cumbersome.

distutils being feature-frozen, I’m reassigning to distutils2.  I’m willing to review a patch and test MSIs, and may even try to implement it myself to learn about MSI, but not before next year.
msg119377 - (view) Author: Steven Bethard (bethard) * (Python committer) Date: 2010-10-22 09:59
> Would you have to do this for every installed distribution?
> Seems cumbersome.

Well, the feature not being implemented yet, it's hard to tell what it would do. ;-) But I think the simplest approach would actually yield a dialog where you simply check off the versions of Python that you want the module installed to. (In MSI terminology, you'd be adding or removing "features".) So you *would* have to do this for every module you installed, but *not* for every (module, version) combination.

Now let's just hope that someone implements it in distutils2. ;-)
msg119399 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2010-10-22 19:02
It possible to script MSI, so that one could write a tool that manages all MSI files that have the multi-version feature, and add and remove them to Python installation in batches.

Alternatively, it would also be possible to integrate this into the Python installer, so that installation offers you to add a list of packages, and uninstallation removes all installations from the version (so that PythonXY could end up empty and get removed).
msg386413 - (view) Author: Steve Dower (steve.dower) * (Python committer) Date: 2021-02-03 18:29
Distutils is now deprecated (see PEP 632) and all tagged issues are being closed. From now until removal, only release blocking issues will be considered for distutils.

If this issue does not relate to distutils, please remove the component and reopen it. If you believe it still requires a fix, most likely the issue should be re-reported at https://github.com/pypa/setuptools
History
Date User Action Args
2021-02-03 18:29:07steve.dowersetstatus: open -> closed

nosy: + steve.dower
messages: + msg386413

resolution: out of date
stage: needs patch -> resolved
2014-03-13 20:51:12eric.araujosetassignee: tarek ->
components: + Distutils, - Distutils2
versions: + Python 3.5, - 3rd party
2010-10-22 19:02:06loewissetmessages: + msg119399
2010-10-22 09:59:12bethardsetmessages: + msg119377
2010-10-22 09:10:26eric.araujosetversions: + 3rd party, - Python 3.1, Python 2.7, Python 3.2
nosy: + loewis, - terry.reedy
messages: + msg119373

assignee: tarek
components: + Distutils2, - Distutils
2010-08-06 10:16:14bethardsetassignee: bethard -> (no value)
messages: + msg113093
2010-08-05 22:15:05eric.araujosetnosy: + tarek

messages: + msg113056
versions: + Python 3.2
2010-08-05 21:01:22terry.reedysetmessages: + msg113054
2010-08-05 19:05:55eric.araujosetnosy: + eric.araujo
messages: + msg113014
2010-08-05 19:04:52terry.reedysetnosy: + terry.reedy
messages: + msg113012
components: + Distutils
2009-05-05 02:29:59bethardcreate