James Y Knight wrote: > On Jan 25, 2008, at 10:04 AM, Brian Smith wrote: > > 1. PEP 333 doesn't indicate that the size parameter for the read() > > method is optional. Is it optional or required? If it is > > optional, is the default value -1? > > The spec says it's required (by virtue of not saying it's optional)
I would agree, except PEP 333 also says it is a file-like object. The definition of file-like object at http://docs.python.org/lib/bltin-file-objects.html implies that the size parameter is optional. Note that the behaviors that are optional for file-like objects are in a different section than the one that defines the read() method with the optional parameter. > The CGI specification, and thus WSGI by implication, > doesn't allow for chunked input. The CONTENT_LENGTH > environment key is a required value if there is > content. The only correct thing for a gateway to > do is to reject a request with chunked input. The gateway can also decode the chunked entity and calculate the Content-Length before passing it on to the application. > The spec is fairly clear as to what you can rely on here. > Additional behavior may of course be implemented in some > gateway, but it's going to be non-portable. I disagree about the clarity of the spec. But, I agree that applications should not rely on the handling of a negative or missing size parameter. - Brian _______________________________________________ Web-SIG mailing list Web-SIG@python.org Web SIG: http://www.python.org/sigs/web-sig Unsubscribe: http://mail.python.org/mailman/options/web-sig/archive%40mail-archive.com