Important
This PEP has been withdrawn.
×
This PEP describes the Python Advanced Library, a collection ofhigh-quality and frequently-used third party extension modules.
The Python source distribution has long maintained the philosophyof “batteries included” – having a rich and versatile standardlibrary which is immediately available, without making the userdownload separate packages. This gives the Python language a headstart in many projects.
However, the standard library modules aren’t always the bestchoices for a job. Some library modules were quick hacks(e.g.calendar,commands), some were designed poorly and are nownear-impossible to fix (cgi), and some have been rendered obsoleteby other, more complete modules (binascii offers the same featuresas thebinhex,uu,base64 modules). This PEP describes a list ofthird-party modules that make Python more competitive for variousapplication domains, forming the Python Advanced Library.
The deliverable is a set of scripts that will retrieve, build, andinstall the packages for a particular application domain. ThePython Package Index now contains enough information to letsoftware automatically find packages and download them, so thetime is ripe to implement this.
Currently this document doesn’t suggestremoving modules fromthe standard library that are superseded by a third-party module.That’s difficult to do because it entails many backward-compatibilityproblems, so it’s not worth bothering with now.
Please suggest additional domains of interest.
XML parsing: ElementTree + SAX.
URL retrieval: libcurl? other possibilities?
HTML parsing: mxTidy? HTMLParser?
Async network I/O: Twisted
RDF parser: ???
HTTP serving: ???
HTTP cookie processing: ???
Web framework: A WSGI gateway, perhaps? Paste?
Graphics: PIL, Chaco.
Numeric: Numeric, SciPy
Graphics: PIL, Chaco.
GUI toolkit: ???
Graphics: Reportlab for PDF generation.
Graphics: PyGame
Some of these third-party modules are covered by the GNU GeneralPublic License and the GNU Lesser General Public License.Providing a script to download and install such packages, or evenassembling all these packages into a single tarball or CD-ROM,shouldn’t cause any difficulties with the GPL, under the “mereaggregation” clause of the license.
What other application domains are important?
Should this just be a set of Ubuntu or Debian packages? Compilingthings such as PyGame can be very complicated and may be toodifficult to automate.
The PEP is based on an earlier draft PEP by Moshe Zadka, titled“2.0 Batteries Included.”
Source:https://github.com/python/peps/blob/main/peps/pep-0206.rst
Last modified:2024-04-14 13:35:25 GMT