Jump to content

Python Paste: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Simplify
Adding local short description: "Python web development utilities", overriding Wikidata description "set of utilities for web development in Python"
 
(43 intermediate revisions by 35 users not shown)
Line 1: Line 1:
{{Short description|Python web development utilities}}
{{essay-like|date=February 2010}}

{{Infobox Software
{{Multiple issues|
{{refimprove|date=December 2017}}
{{notability|Products|date=May 2021}}
}}

{{Infobox software
| name = Paste
| name = Paste
| logo = ?
| logo =
| released = {{start date|2005|?}}
| developer = Ian Bicking
| released = {{start date|2005}}
| latest release version = 1.7.2
| latest release date = ?
| latest release version = 2.0.3
| latest release date = {{start date and age|2016|03|08}}
| genre = [[Web application framework]]
| license = [[MIT License]]
| programming language = [[Python (programming language)|Python]]
| programming language = [[Python (programming language)|Python]]
| operating system = [[Cross-platform]]
| operating system = [[Cross-platform]]
| developer = Ian Bicking
| genre = [[Web framework]]
| website = http://www.pythonpaste.org/
| license = [[MIT License]]
}}
}}
'''Python Paste''', often simply called '''paste''', is a set of [[utility software|utilities]] for [[web development]] in [[Python (programming language)|Python]]. Paste has been described as "a framework for [[web framework]]s"<ref>http://reddit.com/r/programming/info/ehyf/comments/ceifh</ref>.
'''Python Paste''', often simply called '''paste''', is a set of [[utility software|utilities]] for [[web development]] in [[Python (programming language)|Python]]. Paste has been described as "a framework for [[web framework]]s".<ref>{{Cite web|url=http://blog.ianbicking.org/its-not-another-damn-framework.html|title = It's Not Another Damn Framework}}</ref>


The Python Paste package contains Python modules that help in implementing [[Web Server Gateway Interface|WSGI]] middleware.
==WSGI middleware==


The package includes a WSGI wrapper for [[Common Gateway Interface|CGI]] applications. It also includes a simple webserver that can produce WSGI requests.
To understand the function of paste it is first necessary to understand WSGI middleware.


==WSGI middleware==
The [[Web Server Gateway Interface|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.
The [[Web Server Gateway Interface|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 [[Pipeline (Unix)|pipes on Unix systems]]. Functionality provided by WSGI middleware may include authentication, logging, [[url redirection]], creation of [[sessions]], and compression.
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 [[Pipeline (Unix)|pipes on Unix systems]]. Functionality provided by WSGI middleware may include authentication, logging, [[URL redirection]], creation of [[session (computer science)|session]]s, and compression.

==Python paste==
The Python Paste package contains Python modules that help in implementing WSGI middleware.

The package includes a WSGI wrapper for [[Common Gateway Interface|CGI]] applications. It also includes a simple webserver that can produce WSGI requests.


Paste helps in developing such WSGI middleware systems. For example, it is used in the [[Pylons (web framework)|Pylons]] web application framework.
==Uses of Paste==


==Subcomponents of Paste ==
Paste is a component used in the [[Pylons (web framework)|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.
Paste has been a long-running open source project, dating from at least 2005. As it has grown, it has unbundled several 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. They include:
* Paste Deploy is a system for finding and configuring WSGI applications and servers.
* Paste Script, ScriptType, INITools, Tempita, WaitForIt, WPHP, WSGIFilter, and WSGIProxy are other notable bundles.
* WebTest
* WebOb is a wrapper around the WSGI environment.
WebTest and WebOb have migrated and are now part of the [[Pylons project]].


==See also==
==See also==
* [[TurboGears]]
* [[TurboGears]]
* [[Pylons]]
* [[Pylons project]]
* [[Seaside (software)|Smalltalk Seaside]]
* [[Seaside (software)|Smalltalk Seaside]]
* [[Java Servlet]]
* [[Java servlet]]
* [[Internet Server Application Programming Interface]] (ISAPI)
* [[ISAPI]]
* [[FastCGI]]
* [[FastCGI]]
* [[Thrift (protocol)|Apache Thrift]] (from Facebook and Evernote teams)
* [[Apache Thrift]] (from Facebook and Evernote teams)
* [[Server-side JavaScript]]
* [[Server-side JavaScript]]
* [[PHP]]
* [[PHP]]
* [[Web application framework]]
* [[Web framework]]


==References==
==References==
{{Reflist}}
<references/>


==External links==
==External links==
*{{Official website}}
* [http://pythonpaste.org Python Paste]: official site
* [http://www.ianbicking.org Ian Bicking] page
* [http://video.google.com/videoplay?docid=-872784530622495809 Ben Bangert's Google Tech Talk], Sep 13, 2006
* [http://pycon.blogspot.com/2009/03/pycon-2009-videos.html Ian Bicking's Topics of Interest, 4:30-9:30], PyCon 2009


{{Python Web Application Frameworks}}
{{Python web frameworks}}
{{Web server software}}


[[Category:Python web application frameworks]]
[[Category:Python (programming language) web frameworks]]

Latest revision as of 14:43, 30 August 2023

Paste
Developer(s)Ian Bicking
Initial release2005 (2005)
Stable release
2.0.3 / March 8, 2016; 8 years ago (2016-03-08)
Repository
Written inPython
Operating systemCross-platform
TypeWeb framework
LicenseMIT License

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]

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.

WSGI middleware

[edit]

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.

Paste helps in developing such WSGI middleware systems. For example, it is used in the Pylons web application framework.

Subcomponents of Paste

[edit]

Paste has been a long-running open source project, dating from at least 2005. As it has grown, it has unbundled several 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. They include:

  • Paste Deploy is a system for finding and configuring WSGI applications and servers.
  • Paste Script, ScriptType, INITools, Tempita, WaitForIt, WPHP, WSGIFilter, and WSGIProxy are other notable bundles.
  • WebTest
  • WebOb is a wrapper around the WSGI environment.

WebTest and WebOb have migrated and are now part of the Pylons project.

See also

[edit]

References

[edit]
  1. ^ "It's Not Another Damn Framework".
[edit]
  • No URL found. Please specify a URL here or add one to Wikidata. Edit this at Wikidata