/usr/share/doc/python-werkzeug-doc/html/contrib/lint.html is in python-werkzeug-doc 0.10.4+dfsg1-1ubuntu1.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Lint Validation Middleware — Werkzeug 0.10.4 documentation</title>
<link rel="stylesheet" href="../_static/werkzeug.css" type="text/css" />
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
<script type="text/javascript">
var DOCUMENTATION_OPTIONS = {
URL_ROOT: '../',
VERSION: '0.10.4',
COLLAPSE_INDEX: false,
FILE_SUFFIX: '.html',
HAS_SOURCE: true
};
</script>
<script type="text/javascript" src="../_static/jquery.js"></script>
<script type="text/javascript" src="../_static/underscore.js"></script>
<script type="text/javascript" src="../_static/doctools.js"></script>
<link rel="top" title="Werkzeug 0.10.4 documentation" href="../index.html" />
<link rel="up" title="Contributed Modules" href="index.html" />
<link rel="next" title="Important Terms" href="../terms.html" />
<link rel="prev" title="WSGI Application Profiler" href="profiler.html" />
</head>
<body role="document">
<div class="related" role="navigation" aria-label="related navigation">
<h3>Navigation</h3>
<ul>
<li class="right" style="margin-right: 10px">
<a href="../genindex.html" title="General Index"
accesskey="I">index</a></li>
<li class="right" >
<a href="../py-modindex.html" title="Python Module Index"
>modules</a> |</li>
<li class="right" >
<a href="../terms.html" title="Important Terms"
accesskey="N">next</a> |</li>
<li class="right" >
<a href="profiler.html" title="WSGI Application Profiler"
accesskey="P">previous</a> |</li>
<li class="nav-item nav-item-0"><a href="../index.html">Werkzeug 0.10.4 documentation</a> »</li>
<li class="nav-item nav-item-1"><a href="index.html" accesskey="U">Contributed Modules</a> »</li>
</ul>
</div>
<div class="document">
<div class="documentwrapper">
<div class="bodywrapper">
<div class="body" role="main">
<div class="section" id="module-werkzeug.contrib.lint">
<span id="lint-validation-middleware"></span><h1>Lint Validation Middleware<a class="headerlink" href="#module-werkzeug.contrib.lint" title="Permalink to this headline">¶</a></h1>
<div class="versionadded">
<p><span class="versionmodified">New in version 0.5.</span></p>
</div>
<p>This module provides a middleware that performs sanity checks of the WSGI
application. It checks that <span class="target" id="index-0"></span><a class="pep reference external" href="https://www.python.org/dev/peps/pep-0333"><strong>PEP 333</strong></a> is properly implemented and warns
on some common HTTP errors such as non-empty responses for 304 status
codes.</p>
<p>This module provides a middleware, the <a class="reference internal" href="#werkzeug.contrib.lint.LintMiddleware" title="werkzeug.contrib.lint.LintMiddleware"><code class="xref py py-class docutils literal"><span class="pre">LintMiddleware</span></code></a>. Wrap your
application with it and it will warn about common problems with WSGI and
HTTP while your application is running.</p>
<p>It’s strongly recommended to use it during development.</p>
<dl class="class">
<dt id="werkzeug.contrib.lint.LintMiddleware">
<em class="property">class </em><code class="descclassname">werkzeug.contrib.lint.</code><code class="descname">LintMiddleware</code><span class="sig-paren">(</span><em>app</em><span class="sig-paren">)</span><a class="headerlink" href="#werkzeug.contrib.lint.LintMiddleware" title="Permalink to this definition">¶</a></dt>
<dd><p>This middleware wraps an application and warns on common errors.
Among other thing it currently checks for the following problems:</p>
<ul class="simple">
<li>invalid status codes</li>
<li>non-bytestrings sent to the WSGI server</li>
<li>strings returned from the WSGI application</li>
<li>non-empty conditional responses</li>
<li>unquoted etags</li>
<li>relative URLs in the Location header</li>
<li>unsafe calls to wsgi.input</li>
<li>unclosed iterators</li>
</ul>
<p>Detected errors are emitted using the standard Python <code class="xref py py-mod docutils literal"><span class="pre">warnings</span></code>
system and usually end up on <code class="xref py py-data docutils literal"><span class="pre">stderr</span></code>.</p>
<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">werkzeug.contrib.lint</span> <span class="kn">import</span> <span class="n">LintMiddleware</span>
<span class="n">app</span> <span class="o">=</span> <span class="n">LintMiddleware</span><span class="p">(</span><span class="n">app</span><span class="p">)</span>
</pre></div>
</div>
<table class="docutils field-list" frame="void" rules="none">
<col class="field-name" />
<col class="field-body" />
<tbody valign="top">
<tr class="field-odd field"><th class="field-name">Parameters:</th><td class="field-body"><strong>app</strong> – the application to wrap</td>
</tr>
</tbody>
</table>
</dd></dl>
</div>
</div>
</div>
</div>
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
<div class="sphinxsidebarwrapper"><p class="logo"><a href="../index.html">
<img class="logo" src="../_static/werkzeug.png" alt="Logo"/>
</a></p><h3>Related Topics</h3>
<ul>
<li><a href="../index.html">Documentation overview</a><ul>
<li><a href="index.html">Contributed Modules</a><ul>
<li>Previous: <a href="profiler.html" title="previous chapter">WSGI Application Profiler</a></li>
<li>Next: <a href="../terms.html" title="next chapter">Important Terms</a></li>
</ul></li>
</ul></li>
</ul>
<div role="note" aria-label="source link">
<h3>This Page</h3>
<ul class="this-page-menu">
<li><a href="../_sources/contrib/lint.txt"
rel="nofollow">Show Source</a></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
<h3>Quick search</h3>
<form class="search" action="../search.html" method="get">
<input type="text" name="q" />
<input type="submit" value="Go" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
<p class="searchtip" style="font-size: 90%">
Enter search terms or a module, class or function name.
</p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
</div>
</div>
<div class="clearer"></div>
</div>
<div class="footer">
© Copyright 2011, The Werkzeug Team.
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a>.
</div>
</body>
</html>
|