I don&#39;t like this proposal at all. Besides having to go through the bytes craziness the design is pretty backwards for middleware and asynchronous applications.<br><br>Even the proxy_and_timing_support example in the PEP is broken for async or streaming apps - it won&#39;t return the proper time (since it doesn&#39;t consume the body iterable) and it will fail most of the times since you can&#39;t just add a tuple to a iterable.<br>
<br>The missing requirement that middleware must yield at least an empty string if they need more more information from the application iterable also breaks async gateways that expect oob information from the app (for example cogen can&#39;t be ported to this spec).<br>
<br> The removed requirement &quot;middleware components <strong>must not</strong>
block iteration waiting for multiple values from an application
iterable.  If the middleware needs to accumulate more data from the
application before it can produce any output, it <strong>must</strong> yield an
empty string.&quot; also breaks async gateways/apps.<br><br>I feel this spec puts too much burden on applications - having to process all those byte strings and even having to add Content-Length even for naive buffered-body apps.<br>
<br>--ionel<br><br>
<br><br><div class="gmail_quote">On Thu, Sep 16, 2010 at 02:03, Chris McDonough <span dir="ltr">&lt;<a href="mailto:chrism@plope.com">chrism@plope.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
A PEP was submitted and accepted today for a WSGI successor protocol<br>
named Web3:<br>
<br>
<a href="http://python.org/dev/peps/pep-0444/" target="_blank">http://python.org/dev/peps/pep-0444/</a><br>
<br>
I&#39;d encourage other folks to suggest improvements to that spec or to<br>
submit a competing spec, so we can get WSGI-on-Python3 settled soon.<br>
<br>
- C<br>
<br>
<br>
_______________________________________________<br>
Web-SIG mailing list<br>
<a href="mailto:Web-SIG@python.org">Web-SIG@python.org</a><br>
Web SIG: <a href="http://www.python.org/sigs/web-sig" target="_blank">http://www.python.org/sigs/web-sig</a><br>
Unsubscribe: <a href="http://mail.python.org/mailman/options/web-sig/ionel.mc%40gmail.com" target="_blank">http://mail.python.org/mailman/options/web-sig/ionel.mc%40gmail.com</a><br>
</blockquote></div><br>