[Web-SIG] PEP 444 (aka Web3)

P.J. Eby pje at telecommunity.com
Thu Sep 16 20:04:38 CEST 2010


At 10:35 AM 9/16/2010 -0700, Guido van Rossum wrote:
>No comments on the rest except to note that at this point it looks
>unlikely that we can make everyone happy (or even get an agreement to
>adopt what would be the long-term technically optimal solution --
>AFAICT there is no agreement on what that solution would be, if one
>weren't to take porting Python 2 code into account). IOW
>something/sokebody has gotta give.

Indeed.  This entire discussion has pushed me strongly in favor of 
doing a super-minimalist update to PEP 333 with the following points:

* Clarifying the encoding of environ values (locale+surrogateescape 
vs. latin1, TBD)

* Making the streams and all output values byte strings ('str' on 
2.x, 'bytes' on 3.x), leaving everything else "native" strings ('str' 
on both 2.x and 3.x)

* Any other minor errata/clarifications that the folks with the 
requisite experience (e.g. Robert, Ian, Graham -- not an exclusive 
list, but at least they all have both heavy WSGI implementations 
under their belts and 3.x experience) think are absolutely necessary 
to resolve open questions for Python 3.2 WSGI implementations.

Something like that has a halfway decent chance of being able to 
settle and get implemented in the short timeline, and it also doesn't 
put Graham (mod_wsgi) in the position of coming back from vacation to 
a huge new spec to unravel.  ;-)

(To be clear, what I'm suggesting is almost exactly what mod_wsgi 
does; it's just stricter on outputs than what mod_wsgi accepts, and 
there may be some minor issues regarding the environ encoding: 
mod_wsgi is probably using the latin1 approach rather than 
locale+surrogateescape, and I think we need to talk that one out a bit.)

Anyway, web3 is nice, but it doesn't look like it'll really fit the 
bill for porting applications.  i.e., it's like a bike shed full of 
red herrings for what Python-Dev needs right now.  ;-)



More information about the Web-SIG mailing list