The contents of PEP206 as provided by Moshe. Spell checked,
formatting, XXX=>TBD, and a few other editor's notes added by Barry.
This commit is contained in:
parent
92e0c62870
commit
11aa8b0ae5
78
pep-0206.txt
78
pep-0206.txt
|
@ -3,7 +3,83 @@ Title: 2.0 Batteries Included
|
|||
Version: $Revision$
|
||||
Owner: moshez@math.huji.ac.il (Moshe Zadka)
|
||||
Python-Version: 2.0
|
||||
Status: Incomplete
|
||||
Status: Draft
|
||||
|
||||
|
||||
|
||||
Introduction
|
||||
|
||||
This PEP describes the `batteries included' proposal for Python
|
||||
2.0, the fat distribution containing commonly used third party
|
||||
extension modules. This PEP tracks the status and ownership of
|
||||
this proposal, slated for introduction in Python 2.0. It contains
|
||||
a description of the proposal and outlines how to support it.
|
||||
|
||||
|
||||
|
||||
Batteries Included Philosophy
|
||||
|
||||
The Python source distribution always maintained the philosophy of
|
||||
"batteries included" -- having a rich and versatile standard
|
||||
library which is immediately available, without making the user
|
||||
download separate packages. This gives the Python language a head
|
||||
start in many projects. However, the Python standard library
|
||||
often relies on important Open Source libraries which might be
|
||||
unavailable on many computers, so that the user has to separately
|
||||
download and compile those. Some examples are the zlib
|
||||
compression library, and the gmp number manipulation library.
|
||||
|
||||
TBD -- can anyone give reference to some article describing
|
||||
TBD -- "batteries included?"
|
||||
|
||||
|
||||
|
||||
The Proposed Solution
|
||||
|
||||
The proposed solution is to download a few important third-party
|
||||
libraries, and distribute them with the source distribution of
|
||||
Python. In addition, the build procedure will be changed to build
|
||||
those libraries by default, and build the Python modules which
|
||||
rely on them linked against those libraries. Individual users
|
||||
will still be able to link the Python modules against already
|
||||
installed libraries, or disable them completely.
|
||||
|
||||
Additionally, some Open Source third-party modules will also be
|
||||
distributed together with the source distribution.
|
||||
|
||||
TBD -- does this mean some will be distributed but not enabled by
|
||||
default? [ed]
|
||||
|
||||
Here is the list of libraries which are proposed to be dealt with
|
||||
in this manner, and where they can be downloaded:
|
||||
|
||||
zlib -- http://www.info-zip.org/pub/infozip/zlib/zlib.tar.gz
|
||||
expat -- ftp://ftp.jclark.com/pub/xml/expat.zip.
|
||||
Tcl -- http://dev.scriptics.com:80/download/tcl/tcl8_3/tcl8.3.1.tar.gz
|
||||
Tk -- http://dev.scriptics.com:80/download/tcl/tcl8_3/tk8.3.1.tar.gz
|
||||
PIL -- http://www.pythonware.com/downloads/Imaging-1.1.tar.gz
|
||||
libjpeg -- ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
|
||||
ncurses -- ftp://dickey.his.com/ncurses/ncurses.tar.gz
|
||||
|
||||
|
||||
|
||||
Software covered by the GNU Public License
|
||||
|
||||
TBD -- please explain why GPL'd software is not included in Python
|
||||
(and perhaps the difference between GPL and LGPL).
|
||||
|
||||
|
||||
|
||||
Open Issues
|
||||
|
||||
Where does all this source live?
|
||||
|
||||
What should the build procedure look like?
|
||||
|
||||
What to do if compilation of a supporting library fails?
|
||||
|
||||
ESR also mentioned libpng, but I don't know of a Python module
|
||||
that uses it.
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue