From b9a095d174e43a7ba46c24ccc8a79594b474c7af Mon Sep 17 00:00:00 2001 From: Brett Cannon Date: Tue, 29 Apr 2008 21:45:05 +0000 Subject: [PATCH] A bunch of minor changes along with adding Canvas to the deletion list and saving sched. --- pep-3108.txt | 72 +++++++++++++++++++++++++++++----------------------- 1 file changed, 40 insertions(+), 32 deletions(-) diff --git a/pep-3108.txt b/pep-3108.txt index 01fb7b10e..466ad2863 100644 --- a/pep-3108.txt +++ b/pep-3108.txt @@ -20,11 +20,11 @@ have lost their need to be included with Python. There has also been an introduction of a naming convention for modules since Python's inception that not all modules follow. -Python 3.0 has presented a chance to remove modules that do not have +Python 3.0 has presents a chance to remove modules that do not have long term usefulness. This chance also allows for the renaming of modules so that they follow the Python style guide [#pep-0008]_. This -PEP lists modules that should not be included in Python 3.0 and what -modules need to be renamed. +PEP lists modules that should not be included in Python 3.0 or which +need to be renamed. Modules to Remove @@ -139,13 +139,14 @@ distribution for Python for users that rely upon the code. Platform-specific with minimal use ---------------------------------- -Python supports many platforms, some of which are not widely held. +Python supports many platforms, some of which are not widely used or +maintained. And on some of these platforms there are modules that have limited use to people on those platforms. Because of their limited usefulness it would be better to no longer burden the Python development team with their maintenance. -The module mentioned below are documented. All undocumented modules +The modules mentioned below are documented. All undocumented modules for the specified platforms will also be removed. IRIX @@ -264,7 +265,7 @@ reasonable because of this fact. Mac-specific modules //////////////////// -The Mac-specific modules are mostly unmaintained (e.g., the bgen +The Mac-specific modules are not well-maintained (e.g., the bgen tool used to auto-generate many of the modules has never been updated to support UCS-4). It is also not Python's place to maintain such a large amount of OS-specific modules. Thus all modules under @@ -459,9 +460,9 @@ Solaris Hardly used ------------ -Some modules that are platform-independent are hardly used. This -can be from how easy it is to implement the functionality from scratch -or because the audience for the code is very small. +Some platform-independent modules are rarely used. There are a number of +possible explanations for this, including, ease of reimplementation, very +small audience or lack of adherence to more modern standards. * audiodev [done: 3.0] @@ -541,6 +542,13 @@ for what the module is meant for. + Not built by default. + Documentation specifies that the "module should never be used directly in new code". + + Available externally from PyPI_. + +* Canvas + + + Marked as obsolete in a comment by Guido since 2000 + (see http://bugs.python.org/issue210677). + + Better to use ``Tkinter.Canvas``. * commands @@ -597,11 +605,6 @@ for what the module is meant for. + subprocess module replaces it [#pep-0324]_. -* sched - - + Replaced by threading.Timer. - - * sgmllib + Does not fully parse SGML. @@ -642,13 +645,13 @@ for what the module is meant for. * UserList/UserString [done: 3.0] + Not useful since types can be a superclass. + + Moved to the 'collections' module. Modules to Rename ================= -Along with the stdlib gaining some modules that are no longer -relevant, there is also the issue of naming. Many modules existed in +Many modules existed in the stdlib before PEP 8 came into existence [#pep-0008]_. This has led to some naming inconsistencies and namespace bloat that should be addressed. @@ -750,9 +753,8 @@ Grouping of modules ------------------- As the stdlib has grown, several areas within it have expanded to -include multiple modules (e.g., dbm support). Thus some new packages -make sense where the renaming makes a module's name easier to work -with. +include multiple modules (e.g., support for database files). It +thus makes sense to group related modules into packages. dbm package @@ -811,7 +813,6 @@ tkinter package ================== =============================== Current Name Replacement Name ================== =============================== -Canvas tkinter.canvas Dialog tkinter.dialog FileDialog tkinter.filedialog [4]_ FixTk tkinter._fix @@ -880,24 +881,24 @@ Transition Plan For modules to be removed ------------------------- -For the removal of modules that are continuing to exist in the Python -2.x series (i.e., not deprecated explicitly in the 2.x series), -``warnings.warn3k()`` will be used to issue a DeprecationWarning. +Use of modules which will not be deleted in the Python 2.x series +will generate a ``DeprecationWarning`` using the +``warnings.warn3k()`` function. Renaming of modules ------------------- -For modules that are renamed, stub modules will be created with the -original names and be kept in a directory within the stdlib (e.g. like -how lib-old was once used). The need to keep the stub modules within -a directory is to prevent naming conflicts with case-insensitive -filesystems in those cases where nothing but the case of the module -is changing. +Stub modules will be created which have the original names. They +will reside in a stdlib directory similar to the defunct ``lib-old`` +directory. This facility prevents naming conflicts on +case-insensitive filesystems where only the case of a module's name +changed. -These stub modules will import the module code based on the new -naming. The same type of warning being raised by modules being -removed will be raised in the stub modules. +The stub modules will import the module code based on the new names. +As with modules to be removed in 3.0 but not in 2.x, +``DeprecationWarning`` will be raised using the ``warnings.warn3k()`` +function. Support in the 2to3 refactoring tool for renames will also be used [#2to3]_. Import statements will be rewritten so that only the import @@ -963,6 +964,10 @@ Modules that were originally suggested for removal + Useful as a basis for overriding. + Used internally. + +* sched + + + Useful for simulations. * telnetlib @@ -1060,6 +1065,9 @@ References .. [#ast-removal] python-dev email: getting compiler package failures (http://mail.python.org/pipermail/python-3000/2007-May/007615.html) + + +.. _PyPI: http://pypi.python.org/ Copyright