Python Paste
![]() | This article is written like a personal reflection, personal essay, or argumentative essay that states a Wikipedia editor's personal feelings or presents an original argument about a topic. (February 2010) |
File:? | |
Developer(s) | Ian Bicking |
---|---|
Initial release | Error: All values must be integers (help) |
Stable release | 1.7.2
/ ? |
Repository | |
Written in | Python |
Operating system | Cross-platform |
Type | Web application framework |
License | MIT License |
Website | http://www.pythonpaste.org/ |
Python Paste, often simply called paste, is a set of utilities for web development in Python. Paste has been described as "a framework for web frameworks"[1].
WSGI middleware
To understand the function of paste it is first necessary to understand WSGI middleware.
The WSGI standard is an interface that allows applications to use Python code to handle HTTP requests. A WSGI application is passed a Python representation of an HTTP request by an application, and returns content which will normally eventually be rendered by a web browser. A common use for this is when a web server serves content created by Python code.
There are, however, other uses: WSGI middleware is Python code that receives a WSGI request and then performs logic based upon this request, before passing the request on to a WSGI application or more WSGI middleware. WSGI middleware appears to an application as a server, and to the server as an application. This is analogous to the function of pipes on Unix systems. Functionality provided by WSGI middleware may include authentication, logging, url redirection, creation of sessions, and compression.
Python paste
The Python Paste package contains Python modules that help in implementing WSGI middleware.
The package includes a WSGI wrapper for CGI applications. It also includes a simple webserver that can produce WSGI requests.
Uses of Paste
Paste is a component used in the Pylons web application framework. Paste has been a long-running open source project, dating from at least 2005. It has grown and has unbundled numerous other utilities from the Paste core. These utilities are part of the Paste project, but form their own packages and have their own version numbers. WebOb is a wrapper around the WSGI environment. Paste Deploy is a system for finding and configuring WSGI applications and servers. Paste Script, WebTest, ScriptType, INITools, Tempita, WaitForIt, WPHP, WSGIFilter, and WSGIProxy are other notable bundles.
See also
- TurboGears
- Pylons
- Smalltalk Seaside
- Java Servlet
- ISAPI
- FastCGI
- Apache Thrift (from Facebook and Evernote teams)
- Server-side JavaScript
- PHP
- Web application framework
References
External links
- Python Paste: official site
- Ian Bicking page
- Ben Bangert's Google Tech Talk, Sep 13, 2006
- Ian Bicking's Topics of Interest, 4:30-9:30, PyCon 2009