-
Notifications
You must be signed in to change notification settings - Fork 29.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Potential breaking change on v14.17.0 #38922
Comments
My gut is on #34231. I think we might want to do a revert, or a more fundamental fix of the problem. |
@nodejs/release @nodejs/tsc wdyt? |
We don't allow HEAD + keepAlive in undici due to the various edge cases involved. I'm fine with reverting #34231. |
Since this is breaking, I think we should revert on v14 unless someone has an immediate fix in mind. |
+1 to revert on v14 |
Only on v14? |
reverting it on v16 would be a breaking change, wouldn't it? |
It's not just breaking, it's not correct. I do not think there is a safe and spec-compliant way to implement this on top of our current API. |
Is that something we do per our policy? Or is it something we evaluate on a case-by-case basis? |
This reverts commit 7afa533. The change breaks clients like cURL. Fixes: nodejs#38922
PR to revert: #38949 |
This reverts commit 7afa533. The change breaks clients like cURL. Fixes: #38922 PR-URL: #38949 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Mary Marchini <[email protected]> Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: Robert Nagy <[email protected]> Reviewed-By: Jiawen Geng <[email protected]>
This reverts commit 7afa533. The change breaks clients like cURL. Fixes: #38922 PR-URL: #38949 Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Mary Marchini <[email protected]> Reviewed-By: Michael Dawson <[email protected]> Reviewed-By: Robert Nagy <[email protected]> Reviewed-By: Jiawen Geng <[email protected]>
What steps will reproduce the bug?
Run the snippet below (from How do I create a HTTP server):
And call the server with the following command:
Running the server on v14.16.1, the curl command will return 0 with the following output:
Running the server on v14.17.0, the curl command will exit with code 18 and the following error:
How often does it reproduce? Is there a required condition?
Always
What is the expected behavior?
Within a major, no header that could potentially destructively affects HTTP clients behavior should be introduced.
What do you see instead?
Transfer-Encoding: chunked
is introduced, causingcurl
to exit with an error code.Additional information
I noticed this error on this Restify test recently. I'm not entirely sure if this should be considered a breaking change, but it seems like one. I couldn't determine which commit introduced it yet though.
cc @nodejs/http (and @nodejs/tsc @nodejs/lts for visibility)
The text was updated successfully, but these errors were encountered: