[Web-SIG] PEP 444 Goals
chris.dent at gmail.com
chris.dent at gmail.com
Fri Jan 7 10:08:42 CET 2011
On Thu, 6 Jan 2011, Alice Bevan–McGregor wrote:
> :: Clear separation of "narrative" from "rules to be followed". This allows
> developers of both servers and applications to easily run through a
> confomance "check list".
+1
> :: Isolation of examples and rationale to improve readability of the core
> rulesets.
+1
> :: Clarification of often mis-interpreted rules from PEP 333 (and those
> carried over in 3333).
+1
> :: Elimination of unintentional non-conformance, esp. re: cgi.FieldStorage.
+1
> :: Massive simplification of call flow. Replacing start_response with a
> returned 3-tuple immensely simplifies the task of middleware that needs to
> capture HTTP status or manipulate (or even examine) response headers. [1]
+1
I was initially resistant to this one in a we fear change kind of
way, but I've since recognized that a) I was thinking about it
mostly in terms of existing code I have that would need to be
changed b) it _is_ more pythonic.
> :: Reduction of re-implementation / NIH syndrome by incorporating the most
> common (1%) of features most often relegated to middleware or functional
> helpers. Unicode decoding of a small handful of values (CGI values that pull
> from the request URI) is the biggest example. [2, 3]
0 (as in unsure, need to be convinced, etc)
The zero here is in large part because this particular goal could
cover a large number of things from standardized query string
processing (maybe a good idea) to filters (which I've already
expressed reservations about).
So this goal seems like it ought to be several separate goals.
> :: Cross-compatibility considerations. The definition and use of native
> strings vs. byte strings is the biggest example of this in the rewrite.
+1
> :: Making optional (and thus rarely-implemented) features non-optional. E.g.
> server support for HTTP/1.1 with clarifications for interfacing applications
> to 1.1 servers. Thus pipelining, chunked encoding, et. al. as per the HTTP
> 1.1 RFC.
0
The other option (than non-optional) for optional things is to
remove them.
I think working from a list of goals is an excellent way to make
some headway.
--
Chris Dent http://burningchrome.com/
[...]
More information about the Web-SIG
mailing list