More updates based on talking with Guido. Big ones are renaming the proposed tk
package to tkinter, and the proposed url package to urllib.
This commit is contained in:
parent
7eb4f5ec81
commit
593532786b
329
pep-3108.txt
329
pep-3108.txt
|
@ -55,8 +55,6 @@ The procedure to thoroughly remove a module is:
|
|||
#. Remove the module.
|
||||
#. Remove the tests.
|
||||
#. Edit ``Modules/Setup.dist`` and ``setup.py`` if needed.
|
||||
#. Change all imports of the removed module in the standard
|
||||
library to the new name (if applicable).
|
||||
#. Remove the docs (if applicable).
|
||||
#. Run the regression test suite (using ``-uall``); watch out for
|
||||
tests that are skipped because an import failed for the removed
|
||||
|
@ -66,18 +64,6 @@ If a deprecation warning is added to 2.6, it would be better to make
|
|||
all the changes to 2.6, merge the changes into the 3k branch, then
|
||||
perform the procedure above. This will avoid some merge conflicts.
|
||||
|
||||
In certain cases, a removed module might be used by enough people
|
||||
that it is worth making the code available on PyPI_. In those cases
|
||||
the code will be ported to 3.0, moved outside of Python 3.0's trunk,
|
||||
and then put up on PyPI. In such cases the code is not expected to be
|
||||
maintained beyond the discretion of any core developer.
|
||||
|
||||
If a module that is removed is used by a module that is staying,
|
||||
then the module to remove will have its documentation removed and be
|
||||
renamed to signify it has no public API.
|
||||
|
||||
.. _PyPI: http://pypi.python.org/
|
||||
|
||||
|
||||
Previously deprecated
|
||||
---------------------
|
||||
|
@ -130,7 +116,11 @@ their maintenance.
|
|||
The module mentioned below are documented. All undocumented modules
|
||||
for the specified platforms will also be removed.
|
||||
|
||||
* IRIX (which is no longer produced [#irix-retirement]_)
|
||||
IRIX
|
||||
/////
|
||||
The IRIX operating system is no longer produced [#irix-retirement]_.
|
||||
Removing all modules from the plat-irix directory has been deemed
|
||||
reasonable because of this fact.
|
||||
|
||||
+ AL/al [done: 3.0]
|
||||
|
||||
|
@ -180,10 +170,122 @@ for the specified platforms will also be removed.
|
|||
- Wrapper for JPEG (de)compressor.
|
||||
- Code not uniquely edited in nine years.
|
||||
- Third-party libraries provide better support
|
||||
(Python Imaging Library [#pil]_).
|
||||
(Python Imaging Library [#pil]_).
|
||||
|
||||
|
||||
Mac-specific modules
|
||||
////////////////////
|
||||
|
||||
The Mac-specific modules are mostly unmaintained (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
|
||||
plat-mac are to be removed.
|
||||
|
||||
A stub module for proxy access will be provided for use by urllib.
|
||||
|
||||
* aepack
|
||||
|
||||
- OSA support is better through third-party modules.
|
||||
|
||||
* Appscript [#appscript]_.
|
||||
|
||||
- Hard-coded endianness which breaks on Intel Macs.
|
||||
- Might need to rename if Carbon package dependent.
|
||||
|
||||
* aetools
|
||||
|
||||
- See aepack.
|
||||
|
||||
* aetypes
|
||||
|
||||
- See aepack.
|
||||
|
||||
* applesingle
|
||||
|
||||
- Undocumented.
|
||||
- AppleSingle is a binary file format for A/UX.
|
||||
- A/UX no longer distributed.
|
||||
|
||||
* autoGIL
|
||||
|
||||
- Very bad model for using Python with the CFRunLoop.
|
||||
|
||||
* Carbon
|
||||
|
||||
- Carbon development has stopped.
|
||||
- Does not support 64-bit systems completely.
|
||||
- Dependent on bgen which has never been updated to support UCS-4
|
||||
Unicode builds of Python.
|
||||
|
||||
* ColorPicker
|
||||
|
||||
- Better to use Cocoa for GUIs.
|
||||
|
||||
* EasyDialogs
|
||||
|
||||
- Better to use Cocoa for GUIs.
|
||||
|
||||
* findertools
|
||||
|
||||
- No longer useful.
|
||||
|
||||
* FrameWork
|
||||
|
||||
- Poorly documented.
|
||||
- Not updated to support Carbon Events.
|
||||
|
||||
* gensuitemodule
|
||||
|
||||
- See aepack.
|
||||
|
||||
* ic
|
||||
|
||||
* icopen
|
||||
|
||||
- Not needed on OS X.
|
||||
- Meant to replace 'open' which is usually a bad thing to do.
|
||||
|
||||
* macerrors
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* MacOS
|
||||
|
||||
- Would also mean the removal of binhex.
|
||||
|
||||
* macostools
|
||||
|
||||
* macresource
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* MiniAEFrame
|
||||
|
||||
- See aepack.
|
||||
|
||||
* Nav
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* PixMapWrapper
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* videoreader
|
||||
|
||||
- No longer used.
|
||||
|
||||
* W
|
||||
|
||||
- No longer distributed with Python.
|
||||
|
||||
|
||||
* Solaris
|
||||
.. _PyObjC: http://pyobjc.sourceforge.net/
|
||||
|
||||
|
||||
Solaris
|
||||
///////
|
||||
|
||||
+ SUNAUDIODEV/sunaudiodev [done: 3.0]
|
||||
|
||||
|
@ -319,11 +421,6 @@ for what the module is meant for.
|
|||
- rgbimg was removed in Python 2.6.
|
||||
- imgfile slated for removal in this PEP. [done: 3.0]
|
||||
|
||||
* linecache
|
||||
|
||||
+ Negligible use.
|
||||
+ Easily replicated.
|
||||
|
||||
* linuxaudiodev [done: 3.0]
|
||||
|
||||
+ Replaced by ossaudiodev.
|
||||
|
@ -370,7 +467,8 @@ for what the module is meant for.
|
|||
* urllib
|
||||
|
||||
+ Superceded by urllib2.
|
||||
+ Functionality unique to urllib will be kept in the `url package`_.
|
||||
+ Functionality unique to urllib will be kept in the
|
||||
`urllib package`_.
|
||||
|
||||
* UserDict [done: 3.0]
|
||||
|
||||
|
@ -382,114 +480,6 @@ for what the module is meant for.
|
|||
+ Not useful since types can be a superclass.
|
||||
|
||||
|
||||
Mac-specific modules
|
||||
////////////////////
|
||||
|
||||
The Mac-specific modules are mostly unmaintained (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.
|
||||
|
||||
* aepack
|
||||
|
||||
- OSA support is better through third-party modules.
|
||||
|
||||
* Appscript [#appscript]_.
|
||||
|
||||
- Hard-coded endianness which breaks on Intel Macs.
|
||||
- Might need to rename if Carbon package dependent.
|
||||
|
||||
* aetools
|
||||
|
||||
- See aepack.
|
||||
|
||||
* aetypes
|
||||
|
||||
- See aepack.
|
||||
|
||||
* applesingle
|
||||
|
||||
- Undocumented.
|
||||
- AppleSingle is a binary file format for A/UX.
|
||||
- A/UX no longer distributed.
|
||||
|
||||
* autoGIL
|
||||
|
||||
- Very bad model for using Python with the CFRunLoop.
|
||||
|
||||
* Carbon
|
||||
|
||||
- Carbon development has stopped.
|
||||
- Does not support 64-bit systems completely.
|
||||
- Dependent on bgen which has never been updated to support UCS-4
|
||||
Unicode builds of Python.
|
||||
|
||||
* ColorPicker
|
||||
|
||||
- Better to use Cocoa for GUIs.
|
||||
|
||||
* EasyDialogs
|
||||
|
||||
- Better to use Cocoa for GUIs.
|
||||
|
||||
* findertools
|
||||
|
||||
- No longer useful.
|
||||
|
||||
* FrameWork
|
||||
|
||||
- Poorly documented.
|
||||
- Not updated to support Carbon Events.
|
||||
|
||||
* gensuitemodule
|
||||
|
||||
- See aepack.
|
||||
|
||||
* ic
|
||||
|
||||
* icopen
|
||||
|
||||
- Not needed on OS X.
|
||||
- Meant to replace 'open' which is usually a bad thing to do.
|
||||
|
||||
* macerrors
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* MacOS
|
||||
|
||||
- Would also mean the removal of binhex.
|
||||
|
||||
* macostools
|
||||
|
||||
* macresource
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* MiniAEFrame
|
||||
|
||||
- See aepack.
|
||||
|
||||
* Nav
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* PixMapWrapper
|
||||
|
||||
- Undocumented.
|
||||
|
||||
* videoreader
|
||||
|
||||
- No longer used.
|
||||
|
||||
* W
|
||||
|
||||
- No longer distributed with Python.
|
||||
|
||||
|
||||
.. _PyObjC: http://pyobjc.sourceforge.net/
|
||||
|
||||
|
||||
Modules to Rename
|
||||
=================
|
||||
|
||||
|
@ -499,9 +489,6 @@ the stdlib before PEP 8 came into existence [#pep-0008]_. This has
|
|||
led to some naming inconsistencies and namespace bloat that should be
|
||||
addressed.
|
||||
|
||||
Any module that has been suggested for removal and does not meet the
|
||||
required naming scheme is *not* listed below.
|
||||
|
||||
|
||||
PEP 8 violations
|
||||
----------------
|
||||
|
@ -654,53 +641,58 @@ cookielib http.cookiejar
|
|||
safely as they have no naming conflicts.
|
||||
|
||||
|
||||
tk package
|
||||
//////////
|
||||
tkinter package
|
||||
///////////////
|
||||
|
||||
================== ===============================
|
||||
Current Name Replacement Name
|
||||
================== ===============================
|
||||
Canvas tk.canvas
|
||||
Dialog tk.dialog
|
||||
FileDialog tk.filedialog [4]_
|
||||
FixTk tk._fix
|
||||
ScrolledText tk.scrolledtext
|
||||
SimpleDialog tk.simpledialog [5]_
|
||||
Tix tk.tix
|
||||
Tkconstants tk.constants
|
||||
Tkdnd tk.dnd
|
||||
Tkinter tk.inter
|
||||
tkColorChooser tk.colorchooser
|
||||
tkCommonDialog tk.commondialog
|
||||
tkFileDialog tk.filedialog [4]_
|
||||
tkFont tk.font
|
||||
tkMessageBox tk.messagebox
|
||||
tkSimpleDialog tk.simpledialog [5]_
|
||||
turtle tk.turtle
|
||||
Canvas tkinter.canvas
|
||||
Dialog tkinter.dialog
|
||||
FileDialog tkinter.filedialog [4]_
|
||||
FixTk tkinter._fix
|
||||
ScrolledText tkinter.scrolledtext
|
||||
SimpleDialog tkinter.simpledialog [5]_
|
||||
Tix tkinter.tix
|
||||
Tkconstants tkinter.constants
|
||||
Tkdnd tkinter.dnd
|
||||
Tkinter tkinter.__init__
|
||||
tkColorChooser tkinter.colorchooser
|
||||
tkCommonDialog tkinter.commondialog
|
||||
tkFileDialog tkinter.filedialog [4]_
|
||||
tkFont tkinter.font
|
||||
tkMessageBox tkinter.messagebox
|
||||
tkSimpleDialog tkinter.simpledialog [5]_
|
||||
turtle tkinter.turtle
|
||||
================== ===============================
|
||||
|
||||
.. [4] ``tk.filedialog`` can safely combine ``FileDialog`` and
|
||||
.. [4] ``tkinter.filedialog`` can safely combine ``FileDialog`` and
|
||||
``tkFileDialog`` as there are no naming conflicts.
|
||||
|
||||
.. [5] ``tk.simpledialog`` can safely combine ``SimpleDialog`` and
|
||||
``tkSimpleDialog`` have no naming conflicts.
|
||||
.. [5] ``tkinter.simpledialog`` can safely combine ``SimpleDialog``
|
||||
and ``tkSimpleDialog`` have no naming conflicts.
|
||||
|
||||
|
||||
url package
|
||||
///////////
|
||||
urllib package
|
||||
//////////////
|
||||
|
||||
Originally this new package was to be named ``url``, but because of
|
||||
the common use of the name as a variable, it has been deemed better
|
||||
to keep the name ``urllib`` and instead shift existing modules around
|
||||
into a new package.
|
||||
|
||||
================== ===============================
|
||||
Current Name Replacement Name
|
||||
================== ===============================
|
||||
urllib2 url.request
|
||||
urlparse url.parse
|
||||
urllib url.parse, url.request [6]_
|
||||
urllib2 urllib.request
|
||||
urlparse urllib.parse
|
||||
urllib urllib.parse, urllib.request [6]_
|
||||
================== ===============================
|
||||
|
||||
.. [6] The quoting-related functions from ``urllib`` will be added
|
||||
to ``url.parse``. ``urllib.URLOpener`` and ``FancyUrlOpener``
|
||||
will be added to ``url.request`` as long as the documentation
|
||||
for both modules is updated.
|
||||
to ``urllib.parse``. ``urllib.URLOpener`` and
|
||||
``urllib.FancyUrlOpener`` will be added to ``urllib.request``
|
||||
as long as the documentation for both modules is updated.
|
||||
|
||||
|
||||
xmlrpc package
|
||||
|
@ -787,6 +779,10 @@ Modules that were originally suggested for removal
|
|||
* fileinput
|
||||
|
||||
+ Useful when having to work with stdin.
|
||||
|
||||
* linecache
|
||||
|
||||
+ Used internally in several places.
|
||||
|
||||
* nis
|
||||
|
||||
|
@ -796,6 +792,11 @@ Modules that were originally suggested for removal
|
|||
* getopt
|
||||
|
||||
+ Simpler than optparse.
|
||||
|
||||
* repr
|
||||
|
||||
+ Useful as a basis for overriding.
|
||||
+ Used internally.
|
||||
|
||||
* telnetlib
|
||||
|
||||
|
|
Loading…
Reference in New Issue