PEP: 267 Title: Extended HTTP functionality and WebDAV Version: $Revision$ Last-Modified: $Date$ Author: gstein@lyra.org (Greg Stein) Status: Draft Type: Standards Trap Created: 20-Aug-2001 Python-Version: 2.2 Post-History: Abstract This PEP discusses new modules and extended functionality for Python's HTTP support. Notably, the addition of authenticated requests, proxy support, authenticated proxy usage, and WebDAV [1] capabilities. Rationale Python has been quite popular as a result of its "batteries included" positioning. One of the most heavily used protocols, HTTP, has been included with Python for years (httplib). However, this support has not kept up with the full needs and requirements of many HTTP-based applications and systems. In addition, new protocols based on HTTP, such as WebDAV and XML-RPC, are becoming useful and are seeing increasing usage. Supplying this functionality meets Python's "batteries included" role and also keeps Python at the leading edge of new technologies. While authentication and proxy support are two very notable features missing from Python's core HTTP processing, they are minimally handled as part of Python's URL handling (urllib and urllib2). However, applications that need fine-grained or sophisticated HTTP handling cannot make use of the features while they reside in urllib. Refactoring these features into a location where they can be directly associated with an HTTP connection will improve their utility for both urllib and for sophisticated applications. The motivation for this PEP was from several people requesting these features directly, and from a number of feature requests on SourceForge. Since the exact form of the modules to be provided and the classes/architecture used could be subject to debate, this PEP was created to provide a focal point for those discussions. Specification more info here... Reference Implementation reference imp will probably go into /nondist/sandbox/... References [1] http://www.webdav.org/ Copyright This document has been placed in the public domain. Local Variables: mode: indented-text indent-tabs-mode: nil End: