This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2008年12月15日 22:28 by andybuckley, last changed 2022年04月11日 14:56 by admin. This issue is now closed.
| Messages (10) | |||
|---|---|---|---|
| msg77885 - (view) | Author: Andy Buckley (andybuckley) | Date: 2008年12月15日 22:28 | |
It would make package maintenance easier, as well as integration with other build systems e.g. autotools (necessary for projects where not everything is Python), if the distutils supported an uninstallation command, e.g. python setup.py uninstall This would presumably require monitoring of which files were installed where, and it's of course possible to do undesirable things, but exactly the same counter-arguments exist for autotools, and there the uninstall target is an important and useful feature for developers, once you know how to behave in a way to make it safe. |
|||
| msg78488 - (view) | Author: Tarek Ziadé (tarek) * (Python committer) | Date: 2008年12月29日 21:50 | |
This would require a detailed description on how such a feature would work. |
|||
| msg80601 - (view) | Author: philobyte (philobyte) | Date: 2009年01月27日 00:24 | |
python setup.py uninstall should do all the same processing as 'install' but whenever it gets to the point of copying a file to a system destination, it should instead unlink the destination. besides the obvious use, here is another one: when upgrading a package, and the new version no longer includes certain files, just installing the new version will leave leftovers of the previous version installed. using uninstall beforehand will clean out the cruft. |
|||
| msg80633 - (view) | Author: Tarek Ziadé (tarek) * (Python committer) | Date: 2009年01月27日 07:53 | |
philobyte, this means you have to keep the source somewhere to be able to run setup.py uninstall. This is not handy imho. What about a uninstall registery in Python that keeps track of the files installed for each package ? this would let us have an uninstall command that could run on its own. "uninstall packagename" |
|||
| msg80647 - (view) | Author: Andy Buckley (andybuckley) | Date: 2009年01月27日 11:25 | |
If an uninstall registry is feasible, the it could be neat. The suggested behaviour of unlinking known files based on the source directory is not all that inconvenient: it's by no means perfect, but it has its uses and is familiar to many, since it is how GNU autotools behaves. |
|||
| msg80801 - (view) | Author: Tarek Ziadé (tarek) * (Python committer) | Date: 2009年01月30日 00:39 | |
I will continue to discuss this in distutils-SIG: Marc-André Lemburg proposed me to introduce the uninstall command from mxSetup.py (from mxBase, http://www.egenix.com/products/python/mxBase/) So I need to ask for opinions first |
|||
| msg99870 - (view) | Author: Toshio Kuratomi (a.badger) * | Date: 2010年02月22日 23:23 | |
We're working on this as part of the distutils2 effort. Current distutils (version 1) will not support uninstall. |
|||
| msg99873 - (view) | Author: Toshio Kuratomi (a.badger) * | Date: 2010年02月22日 23:28 | |
Targetting 3.3 |
|||
| msg115781 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2010年09月07日 15:44 | |
Status update: Josip implemented PEP 376 to provide the installation database and Alexis is working on distutils2.install_tools to provide an uninstall function. User-level tools like pip can reuse this code to provide an uninstall functionality. |
|||
| msg139773 - (view) | Author: Éric Araujo (eric.araujo) * (Python committer) | Date: 2011年07月04日 14:35 | |
distutils2/packaging now provides a remove function and a pysetup remove command. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:56:42 | admin | set | github: 48923 |
| 2011年07月04日 14:35:14 | eric.araujo | set | status: open -> closed versions: + Python 3.3, - 3rd party messages: + msg139773 dependencies: - packaging: add tests for old versions cleanup on update resolution: fixed stage: resolved |
| 2010年10月22日 14:55:51 | eric.araujo | set | dependencies: + packaging: add tests for old versions cleanup on update |
| 2010年09月29日 23:54:10 | eric.araujo | set | versions: + 3rd party, - Python 2.6, Python 2.5, Python 3.1, Python 2.7, Python 3.2 |
| 2010年09月07日 15:44:42 | eric.araujo | set | nosy:
+ eric.araujo, alexis messages: + msg115781 |
| 2010年06月03日 14:47:24 | eric.araujo | set | keywords:
+ gsoc nosy: giampaolo.rodola, tarek, a.badger, andybuckley, philobyte components: + Distutils2, - Distutils versions: + Python 2.6, Python 2.5, Python 3.1, Python 2.7, Python 3.2, - Python 3.3 |
| 2010年02月22日 23:28:43 | a.badger | set | messages:
+ msg99873 versions: + Python 3.3, - Python 2.6 |
| 2010年02月22日 23:23:55 | a.badger | set | nosy:
+ a.badger messages: + msg99870 versions: + Python 2.6, - Python 2.5 |
| 2009年01月30日 20:39:09 | giampaolo.rodola | set | nosy: + giampaolo.rodola |
| 2009年01月30日 00:39:52 | tarek | set | assignee: tarek messages: + msg80801 |
| 2009年01月27日 11:25:11 | andybuckley | set | messages: + msg80647 |
| 2009年01月27日 07:53:23 | tarek | set | messages: + msg80633 |
| 2009年01月27日 00:24:39 | philobyte | set | nosy:
+ philobyte messages: + msg80601 |
| 2008年12月29日 21:50:55 | tarek | set | nosy:
+ tarek messages: + msg78488 |
| 2008年12月15日 22:28:53 | andybuckley | create | |