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:
Barry Warsaw 2000-07-14 14:21:51 +00:00
parent 92e0c62870
commit 11aa8b0ae5
1 changed files with 77 additions and 1 deletions

View File

@ -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.