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 is returned 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 mainly provides Python modules to act as middleware. In addition to middleware, it provides a simple Python webserver that can produce WSGI request and a wrapper used to pass WSGI requests to CGI applications. Paste may be understood as a set of libraries making use of the WSGI standard to provide functionality other than the direct creation of content. This is useful when one is deploying applications written in a Python web framework.
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