Remove package introduction as an Open Issue and make it a Rejected Idea.
This commit is contained in:
parent
e9e54355f7
commit
a4dcf4667f
204
pep-3108.txt
204
pep-3108.txt
|
@ -473,195 +473,6 @@ on the new name.
|
|||
Open Issues
|
||||
===========
|
||||
|
||||
Consolidate dependent modules together into a single module or package?
|
||||
-----------------------------------------------------------------------
|
||||
|
||||
The stdlib has several modules that have a level of dependency between
|
||||
them (e.g., urllib and urllib2). Usually one is a low-level module
|
||||
that provides basic abilities with a corresponding higher-level API is
|
||||
given in another module for simple use-cases. In Python 3.0 we could
|
||||
group these dependent modules together into a single module or package
|
||||
to better reflect their relationship.
|
||||
|
||||
Keep in mind when looking at the groupings that deprecation or removal
|
||||
is also a possibility if there is enough overlap or a module is
|
||||
obsolete.
|
||||
|
||||
* Cookie/cookielib
|
||||
* urllib/urllib2 (urlparse? httplib?)
|
||||
* cgi/cgitb
|
||||
* Tix/Tkinter
|
||||
* getpass/pwd/spwd/grp
|
||||
* mailbox/mhlib
|
||||
* anydbm/whichdbm
|
||||
* bsddb/dbhash
|
||||
* pickle/pickletools
|
||||
* HTMLParser/htmllib
|
||||
* ftplib/netrc
|
||||
* parser/symbol
|
||||
|
||||
|
||||
Consolidate certain modules with similar themes together in a package?
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Packages are often used to group together modules that have a similar
|
||||
theme but do not have any direct relationship or dependency upon each
|
||||
other. For Python 3.0 obvious groupings could be done since renaming
|
||||
of various modules is already occurring. Below is a list of possible
|
||||
packages (pre-existing or new) that could be created. In order to be
|
||||
considered the package must contain three or more modules in order to
|
||||
not overdue the introduction of new packages and to keep the stdlib
|
||||
shallow. No specific package name is proposed, just what modules
|
||||
could go into the package.
|
||||
|
||||
* 'collections' package
|
||||
|
||||
+ heapq
|
||||
+ Queue
|
||||
+ UserDist (?)
|
||||
+ UserList (?)
|
||||
|
||||
* Python implementations of built-in data types
|
||||
|
||||
+ UserDict
|
||||
+ UserList
|
||||
+ UserString
|
||||
|
||||
* Platform-specific
|
||||
|
||||
+ windows
|
||||
|
||||
- _winreg
|
||||
- msilib
|
||||
- msvcrt
|
||||
- winsound
|
||||
|
||||
+ unix
|
||||
|
||||
- crypt
|
||||
- dbm
|
||||
- fcntl
|
||||
- fpectl
|
||||
- gdbm
|
||||
- grp
|
||||
- nis
|
||||
- pipes
|
||||
- pwd
|
||||
- readline (?)
|
||||
- resource
|
||||
- spwd
|
||||
- syslog
|
||||
- termios (?)
|
||||
- tty (?)
|
||||
|
||||
- mac (all Mac-specific modules)
|
||||
|
||||
* Profiling
|
||||
|
||||
+ cProfile
|
||||
+ profile
|
||||
+ hotshot
|
||||
+ pstats
|
||||
|
||||
* 'email' package
|
||||
|
||||
+ imaplib
|
||||
+ mailbox
|
||||
+ mailcap
|
||||
+ mhlib
|
||||
+ poplib
|
||||
|
||||
* Databases
|
||||
|
||||
+ anydbm
|
||||
+ dbhash
|
||||
+ dbm
|
||||
+ bsddb
|
||||
+ dumbdbm
|
||||
+ gdbm
|
||||
+ sqlite3
|
||||
+ whichdb
|
||||
|
||||
* Audio
|
||||
|
||||
+ aifc
|
||||
+ audioop
|
||||
+ chunk
|
||||
+ ossaudiodev
|
||||
+ sndhdr
|
||||
+ sunau
|
||||
+ wave
|
||||
+ winsound
|
||||
|
||||
* XML-RPC
|
||||
|
||||
+ DocXMLRPCServer
|
||||
+ SimpleXMLRPCServer
|
||||
+ xmlrpclib
|
||||
|
||||
* Internet (leaving out all questionable modules leads to a Web
|
||||
grouping)
|
||||
|
||||
+ BaseHTTPServer
|
||||
+ cgi
|
||||
+ CGIHTTPServer
|
||||
+ cgitb
|
||||
+ Cookie
|
||||
+ cookielib
|
||||
+ ftplib (?)
|
||||
+ htmlentitydefs
|
||||
+ htmllib
|
||||
+ HTMLParser
|
||||
+ httplib
|
||||
+ netrc (?)
|
||||
+ nntplib (?)
|
||||
+ sgmllib (?)
|
||||
+ SimpleHTTPServer
|
||||
+ stringprep
|
||||
+ urllib
|
||||
+ urllib2
|
||||
+ urlparse
|
||||
+ webbrowser
|
||||
+ wsgiref
|
||||
|
||||
* Servers (each sub-grouping can be their own package)
|
||||
|
||||
+ HTTP
|
||||
|
||||
- BaseHTTPServer
|
||||
- CGIHTTPServer
|
||||
- DocXMLRPCServer
|
||||
- SimpleHTTPServer
|
||||
- SimpleXMLRPCServer
|
||||
- wsgiref
|
||||
|
||||
+ Socket
|
||||
|
||||
- asynchat
|
||||
- asyncore
|
||||
- SocketServer
|
||||
|
||||
* Bytecode
|
||||
|
||||
+ codeop
|
||||
+ compiler
|
||||
+ dis
|
||||
+ py_compile
|
||||
+ compileall
|
||||
|
||||
* Compression
|
||||
|
||||
+ bz2
|
||||
+ gzip
|
||||
+ zlib
|
||||
|
||||
* Date & time
|
||||
|
||||
+ calendar
|
||||
+ datetime
|
||||
+ time
|
||||
|
||||
|
||||
Renaming of modules maintained outside of the stdlib
|
||||
----------------------------------------------------
|
||||
|
||||
|
@ -714,6 +525,21 @@ semantics, etc.). Everything within this PEP can easily be handled if
|
|||
a new top-level package is introduced.
|
||||
|
||||
|
||||
Introducing new packages to contain theme-related modules
|
||||
---------------------------------------------------------
|
||||
|
||||
During the writing of this PEP it was noticed that certain themes
|
||||
appeared in the stdlib. In the past people have suggested introducing
|
||||
new packages to help collect modules that share a similar theme (e.g.,
|
||||
audio). An Open Issue was created to suggest some new packages to
|
||||
introduce.
|
||||
|
||||
In the end, though, not enough support could be pulled together to
|
||||
warrant moving forward with the idea. In the future either a separate
|
||||
PEP trying to do a large reorganization of the stdlib or doing it
|
||||
piece-meal, one package at a time, will be required.
|
||||
|
||||
|
||||
References
|
||||
==========
|
||||
|
||||
|
|
Loading…
Reference in New Issue