diff --git a/pep-0206.txt b/pep-0206.txt index e0256bdb3..fc22f2c82 100644 --- a/pep-0206.txt +++ b/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.