This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author barry
Recipients barry, martin.panter
Date 2016-10-28.23:04:37
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <20161028190434.158258a9@subdivisions.wooz.org>
In-reply-to <1477694535.84.0.726910173055.issue28548@psf.upfronthosting.co.za>
Content
On Oct 28, 2016, at 10:42 PM, Martin Panter wrote:

>I think you should be able to reproduce this without Mailman or tox, by just
>running “python -m http.server”.

Yep, indeed.

>The problem is the “HTTP/0.9” protocol that Python is assuming does not
>include a header section, so there is no place to put a 400 status code or
>header fields. The HTTP 0.9 response is supposed to only be a HTML body; see
><https://www.w3.org/Protocols/HTTP/AsImplemented.html> and
><https://tools.ietf.org/html/rfc1945#section-6>.
>
>I think we should drop HTTP 0.9 response support from Python’s HTTP server,
>as well as the attempted but buggy request support. But there was a bit of
>resistance; see Issue 10721.
>
>Another possibility would be to change default_request_version so that error
>responses are sent as HTTP 1.0. But there may be more fixes needed for this
>to continue the buggy HTTP 0.9 support; see Issue 26578.

I think it may indeed make sense to set default_request_version to 1.0.  It's
probably too late to do that for 3.6, but I do think it makes sense for 3.7.
I'm nosying on the issues you mentioned.

I've proposed essentially that workaround for Mailman.

https://gitlab.com/mailman/mailman/issues/288

We can get away with requiring at least HTTP/1.1 for our REST clients.
History
Date User Action Args
2016-10-28 23:04:38barrysetrecipients: + barry, martin.panter
2016-10-28 23:04:38barrylinkissue28548 messages
2016-10-28 23:04:37barrycreate