[ ] question about the decisions made in the repository
Do you want to request a feature or report a bug?
It's a bug I noticed during tests rewrite for pytest runner #67
What is the current behavior?
Unread ending of the request with headers gets read by the next request parser, which recognises it as garbage (because it's not a valid Request-Line).
Extracted from the xfail message (removed in f55e41dd):
Server does not correctly read trailers/ending of the previous HTTP request, thus the second request fails as the server tries to parse b'Content-Type: application/json\r\n' as a Request-Line. This results in HTTP status code 400, instead of 413.
If the current behavior is a bug, please provide the steps to reproduce and if possible a screenshots and logs of the problem. If you can, show us your code.
See conn_test.py::test_Chunked_Encoding.
What is the expected behavior?
Payload of the request with trailers is completely read out from the socket, so that it won't affect the next request.
What is the motivation / use case for changing the behavior?
Emm.. My perfectionism, I guess.
Cheroot version: v6.0.0 (and probably all prev versions)
CherryPy version: N/A
OS: Gentoo Linux
Browser: N/A
Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, e.g. stackoverflow, gitter, etc.)
I'm submitting a ...
[X] bug report
[X] feature request
[ ] question about the decisions made in the repository
Do you want to request a feature or report a bug? It's a bug I noticed during tests rewrite for pytest runner #67
What is the current behavior? Unread ending of the request with headers gets read by the next request parser, which recognises it as garbage (because it's not a valid Request-Line).
Extracted from the xfail message (removed in f55e41dd):
If the current behavior is a bug, please provide the steps to reproduce and if possible a screenshots and logs of the problem. If you can, show us your code. See
conn_test.py::test_Chunked_Encoding
.What is the expected behavior? Payload of the request with trailers is completely read out from the socket, so that it won't affect the next request.
What is the motivation / use case for changing the behavior? Emm.. My perfectionism, I guess.
Please tell us about your environment:
Python version: 3.6.2 (but shouldn't version-agnostic)
Cheroot version: v6.0.0 (and probably all prev versions)
CherryPy version: N/A
OS: Gentoo Linux
Browser: N/A
Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, e.g. stackoverflow, gitter, etc.)