[Web-SIG] PEP 444 (aka Web3)
chrism at plope.com
Tue Sep 21 18:40:10 CEST 2010
I have some pending changes to the PEP 444 spec (the working copy is at
http://github.com/mcdonc/web3/blob/master/pep-0444.rst but please don't
consider that canonical in any sense, it will change before an official
republication of the proposal). The modifications fold in most of what
we've talked about on the list, or at least acknowledge the issues; a
change log is contained near the top.
However, I'm currently trying work work through what to do about
offering up quoted PATH_INFO and SCRIPT_NAME values (unquoted in the
sense that, at least on platforms that support it, these would be the
original values before being run through urllib.unquote).
The current published proposal on Python.org indicates that these would
go into "web3.path_info" and "web3.script_name" but nobody seems to much
like that because it would make things like "path_info_pop" hard (the
code would need to keep two data structures in sync, and would need to
be pretty magical in the face of %2F markers).
The pending, unpublished proposal turns SCRIPT_NAME and PATH_INFO into
*quoted* values, and adds a ``web3.path_requoted`` flag for debugging
purposes, which will be True if the SCRIPT_NAME and/or PATH_INFO needed
to be recomposed and requoted (eg. on CGI platforms). But private
conversations lead me to believe that not many folks will like this
either, because it comandeers CGI names that are well-understood to be
The only sensible way to break the deadlock seems to be to not use any
"CGI names" in the specification at all, so as not to break people's
expectations. I know that when I change it to not use any CGI names, it
will be received poorly, but I can't think of a better idea.
On Wed, 2010-09-15 at 19:03 -0400, Chris McDonough wrote:
> A PEP was submitted and accepted today for a WSGI successor protocol
> named Web3:
> I'd encourage other folks to suggest improvements to that spec or to
> submit a competing spec, so we can get WSGI-on-Python3 settled soon.
> - C
> Web-SIG mailing list
> Web-SIG at python.org
> Web SIG: http://www.python.org/sigs/web-sig
> Unsubscribe: http://mail.python.org/mailman/options/web-sig/chrism%40plope.com
More information about the Web-SIG