[Python-checkins] r72617 - peps/trunk/pep-0376.txt

tarek.ziade python-checkins at python.org
Thu May 14 11:32:29 CEST 2009


Author: tarek.ziade
Date: Thu May 14 11:32:29 2009
New Revision: 72617

Log:
typos and a roadmap section

Modified:
   peps/trunk/pep-0376.txt

Modified: peps/trunk/pep-0376.txt
==============================================================================
--- peps/trunk/pep-0376.txt	(original)
+++ peps/trunk/pep-0376.txt	Thu May 14 11:32:29 2009
@@ -30,8 +30,7 @@
 Rationale
 =========
 
-There are three problems right now in the way projects are installed in 
-Python:
+There are two problems right now in the way projects are installed in Python:
 
 - There are too many ways to install a project in Python.
 - There is no API to get the metadata of installed packages.
@@ -46,7 +45,7 @@
 The `install_egg_info` subcommand is called during this process, in order to 
 create an `.egg-info` file in the `site-packages` directory.
 
-For example, if the `zlib` project is installed (which contains one package), 
+For example, if the `zlib` project (which contains one package), is installed 
 two elements will be installed in `site-packages`::
 
  - zlib
@@ -131,7 +130,7 @@
 
 - the `RECORD` file will hold the list of installed files. These
   correspond to the files listed by the `record` option of the `install` 
-  command, and will always be generated. This will allow uninstall, as
+  command, and will always be generated. This will allow uninstallation, as
   explained later in this PEP.
 
 The `install` command will record by default installed files in the
@@ -142,12 +141,11 @@
   system. This makes this information cross-compatible and allows simple
   installation to be relocatable.
 
-- if the installed file is located elswhere in the system, a 
+- if the installed file is located elsewhere in the system, a 
   '/'-separated absolute path is used.
 
 This will require changing the way the `install` command writes the record
-file, so the old `record` behavior will be deprecated. 
-XXX see how to handle old record (new option, or wait for 2 version?)
+file, so the old `record` behavior will be deprecated.
 
 Back to our `zlib` example, we will have::
 
@@ -205,11 +203,12 @@
 
 Distutils will provide a very basic `uninstall` command that will remove
 all files listed in the `RECORD` file of a project, as long as they are not 
-mentioned in another `RECORD` file.
+mentioned in another `RECORD` file and as long as the package is installed
+using the standard described earlier.
 
-This command will be added in the `util` module and will take the name
-of the project to uninstall. A call to uninstall will return a list
-of uninstalled files. If the project is not found, a Distutils::
+This command will be added in ``distutils.util`` and will take the name
+of the project to uninstall as its argument. A call to uninstall will return a 
+list of uninstalled files::
 
     >>> from distutils.util import uninstall
     >>> uninstall('zlib')
@@ -219,9 +218,9 @@
 If the project is not found, a ``DistutilsUninstallError`` will be raised.
 
 To make it a reference API for third-party projects that wish to provide
-an `uninstall feature`. The `uninstall` API can also be invoked with a 
+an `uninstall feature`. The ``uninstall`` function can also be invoked with a 
 second callable argument, that will be invoked for each file to be removed.
-If it returns `True`, the file will be removed.
+If this callable returns `True`, the file will be removed.
 
 Examples::
 
@@ -235,6 +234,13 @@
     ...     return False
     >>> uninstall('zlib', _dry_run)
 
+Backward compatibility and roadmap
+==================================
+
+These changes will not introduce any compatibility problems with the previous
+version of Distutils, and will also work with existing third-party tools.
+
+The plan is to integrate them for Python 2.7 and Python 3.2
 
 Aknowledgments
 ==============


More information about the Python-checkins mailing list