2009/9/23 René Dudfield <span dir="ltr">&lt;<a href="mailto:renesd@gmail.com">renesd@gmail.com</a>&gt;</span><br><div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Yeah, wsgi is definitely useful for a wide range of uses cases.<br>
<br>
Except it&#39;s currently not working for a number of use cases... but we<br>
can&#39;t accommodate them.  eg, unicode,</blockquote><div><br>As mentioned, all the major libraries work in unicode.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
 tainting, </blockquote><div><br>Tainting isn&#39;t how Python has approached security problems.  We&#39;ve used proper quoting and now in templating there is largely consensus around treating everything as suspect except what is explicitly marked as okay (which is essentially what DB abstractions do as well).<br>
 </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">http proxies,</blockquote><div><br>Well, kind of off topic, but paste.httpserver has two keys: paste.httpserver.proxy.scheme and paste.httpserver.proxy.host.  If we could standardize those that would be nice, and we could have http proxies.  Not the most efficient proxies (this is a good domain for async), but they&#39;d work.<br>
<br>If you mean backend proxying, then yes, there is a general lack of consensus over how to do it (bigger than just in Python).  Since we have a reasonably functional and knowledgable group of people here it might be a good place to discuss and document these issues.<br>
 </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> http clients,</blockquote><div><br>WSGIProxy has an HTTP client interface for WSGI.<br>
 </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"> user supplied buffers,</blockquote><div><br>Not clear on the issue here.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
 async,</blockquote><div><br>Yes; if people take this up separately so that it can be implemented on its own timeline, that would be very good.  Given all the divergent async work lately the time is ripe.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
 latest http RFCs,</blockquote><div><br>Is there a problem here?  (Well, there is an outstanding issue for 1.1 or 2, to specify how chunked requests and responses should work.)<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
 different<br>
uses of http compared to 2003, all features of http.  This is clear by<br>
the variety of web frameworks that don&#39;t use wsgi, and the variety of<br>
things layered on top of wsgi.<br></blockquote><div><br>All the major frameworks use WSGI.  I don&#39;t see how layers indicate any problem.<br><br>I don&#39;t know if you are actually intending to critique WSGI or not, but I think we&#39;ve been doing a pretty good job.<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
There&#39;s no way I can take any python web application, copy the files<br>
onto any python web server and have it work.  php can do this, but we<br>
still can not do this with python.<br>
<div><br></div></blockquote><div><br>Configuration and application setup are indeed outside the scope of WSGI.  I&#39;ve tried to create something general with Paste Deploy that would largely address this, but it hasn&#39;t seen a lot of interest outside a couple frameworks (Pylons, TG via Pylons, Repoze).  It would be awesome if we could look at this problem -- I don&#39;t care if Paste Deploy is the implementation, but I think the scope of work it tackles is important.  People are definitely thinking about these general ideas with respect to Django, as the issue of the settings module seems to be on several people&#39;s minds -- unfortunately the issue of configuration is abstract enough and confusing enough that people frequently won&#39;t *see* that they are thinking about the same thing.  So just framing the question well is an important and difficult task.<br>
</div></div><br><br clear="all"><br>-- <br>Ian Bicking  |  <a href="http://blog.ianbicking.org">http://blog.ianbicking.org</a>  |  <a href="http://topplabs.org/civichacker">http://topplabs.org/civichacker</a><br>