Skip to main content

Tools for using a Web Server Gateway Interface stack

Project description

Paste is in maintenance mode and recently moved from bitbucket to github. Patches are accepted to keep it on life support, but for the most part, please consider using other options.

Paste provides several pieces of “middleware” (or filters) that can be nested to build web applications. Each piece of middleware uses the WSGI (PEP 333) interface, and should be compatible with other middleware based on those interfaces.

See also:

Includes these features…

Testing

  • A fixture for testing WSGI applications conveniently and in-process, in paste.fixture

  • A fixture for testing command-line applications, also in paste.fixture

  • Check components for WSGI-compliance in paste.lint

Dispatching

  • Chain and cascade WSGI applications (returning the first non-error response) in paste.cascade

  • Dispatch to several WSGI applications based on URL prefixes, in paste.urlmap

  • Allow applications to make subrequests and forward requests internally, in paste.recursive

Web Application

  • Run CGI programs as WSGI applications in paste.cgiapp

  • Traverse files and load WSGI applications from .py files (or static files), in paste.urlparser

  • Serve static directories of files, also in paste.urlparser; also in that module serving from Egg resources using pkg_resources.

Tools

  • Catch HTTP-related exceptions (e.g., HTTPNotFound) and turn them into proper responses in paste.httpexceptions

  • Several authentication techniques, including HTTP (Basic and Digest), signed cookies, and CAS single-signon, in the paste.auth package.

  • Create sessions in paste.session and paste.flup_session

  • Gzip responses in paste.gzip

  • A wide variety of routines for manipulating WSGI requests and producing responses, in paste.request, paste.response and paste.wsgilib

Debugging Filters

  • Catch (optionally email) errors with extended tracebacks (using Zope/ZPT conventions) in paste.exceptions

  • Catch errors presenting a cgitb-based output, in paste.cgitb_catcher.

  • Profile each request and append profiling information to the HTML, in paste.debug.profile

  • Capture print output and present it in the browser for debugging, in paste.debug.prints

  • Validate all HTML output from applications using the WDG Validator, appending any errors or warnings to the page, in paste.debug.wdg_validator

Other Tools

  • A file monitor to allow restarting the server when files have been updated (for automatic restarting when editing code) in paste.reloader

  • A class for generating and traversing URLs, and creating associated HTML code, in paste.url

The official development repo is at https://github.com/cdent/paste.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Paste-3.2.3.tar.gz (628.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

Paste-3.2.3-py2.py3-none-any.whl (592.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file Paste-3.2.3.tar.gz.

File metadata

  • Download URL: Paste-3.2.3.tar.gz
  • Upload date:
  • Size: 628.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.4

File hashes

Hashes for Paste-3.2.3.tar.gz
Algorithm Hash digest
SHA256 8bdc7f6be907eed7cd63868c79d88af2b87d02d840fb5acfc93d4bda572b1567
MD5 7dc6dbd20e358dd95bd42eef5c6cc84c
BLAKE2b-256 2f614001329b694b8c7c6720f1c1effc9575cc1a83d4e3f6db2e568a58343dcd

See more details on using hashes here.

File details

Details for the file Paste-3.2.3-py2.py3-none-any.whl.

File metadata

  • Download URL: Paste-3.2.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 592.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.4

File hashes

Hashes for Paste-3.2.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 17751a6e0d0e38054ff97e4b6efe9870c09dcb72fbe7630c1a31a6aeb266eebb
MD5 31ce0cfccb654b698d7870fd383d9f76
BLAKE2b-256 72f5c7e6b02c041c4d849ca969263fa3c93470b1d74fa167e843d44e7e8d276b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page