Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 34.3k
http: align with stream.Writable#36816
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
Uh oh!
There was an error while loading. Please reload this page.
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
ronag commented Jan 6, 2021
@nodejs/http |
Uh oh!
There was an error while loading. Please reload this page.
ronag commented Jan 6, 2021
I've removed the following tests:
They fail and I'm confused as to what they are supposed to test and how they could work. |
ronag commented Jan 6, 2021
dnlup commented Jan 7, 2021
From 93f47b1#diff-82c531677b9ab4e260025e0397fb0ac4d4316459fa5d16346324e39584cfce96R170 , it looks like they're trying to check that |
d1a8699 to 60d2417Compareb7bdc6a to c18b3b4CompareUh oh!
There was an error while loading. Please reload this page.
ba8188e to 09f6982Compareronag commented Jan 7, 2021
Would you like to have a go at trying to make those test pass? |
Uh oh!
There was an error while loading. Please reload this page.
ronag commented Feb 5, 2021
@nodejs/http any chance to get some review on this PR? |
benjamingr commented Feb 9, 2021
It looks like this needs TSC approvals to land and the TSC ping didn't help - pinging @nodejs/tsc |
Trott commented Feb 14, 2021
apapirovski commented Feb 25, 2021 • edited
Loading Uh oh!
There was an error while loading. Please reload this page.
edited
Uh oh!
There was an error while loading. Please reload this page.
My biggest concern here is that this is a pretty "soft" alignment. It's done through explicitly modifying the logic and flows to mirror At the very least, I think some new tests should be introduced that document expected behavior and assumptions that can be made about |
ronag commented Feb 25, 2021 • edited
Loading Uh oh!
There was an error while loading. Please reload this page.
edited
Uh oh!
There was an error while loading. Please reload this page.
I'm not sure I follow this line of thought? IMHO These changes should make it easier to maintain this and all stream related helpers and interop? |
apapirovski commented Feb 25, 2021 • edited
Loading Uh oh!
There was an error while loading. Please reload this page.
edited
Uh oh!
There was an error while loading. Please reload this page.
The closer you get while still having custom logic & duplicate code, the harder it is to not accidentally diverge in some minute way. At least without having equivalent test suites for both. FWIW don't take this as me saying this is a bad change. I think it's great we're moving in this direction, although I would prefer to better align test coverage with |
ronag commented Feb 25, 2021
FWIW my intention here is to eventually implement it fully in terms of Writable (or some form of WritableBase). |
jasnell commented Mar 5, 2021
Sorry for not looking at this sooner. The changes themselves look fine to me but I'd like @mcollina to weigh in before signing off. |
mcollina left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM with caution. We might end up to revert this if it will lead to massive ecosystem breakage.
nodejs-github-bot commented Mar 8, 2021
ronag commented Mar 8, 2021
Should we label this as a notable change? |
mcollina commented Mar 8, 2021
Yes indeed |
Futher aligns OutgoingMessage with stream.Writable. In particular re-uses the construct/destroy logic from streams. Due to a lot of subtle assumptions this PR unfortunately touches a lot of different parts.
nodejs-github-bot commented Mar 8, 2021
nodejs-github-bot commented Mar 8, 2021
nodejs-github-bot commented Mar 8, 2021
ronag commented Mar 10, 2021
Landed in e2f5bb7 |
Futher aligns OutgoingMessage with stream.Writable. In particular re-uses the construct/destroy logic from streams. Due to a lot of subtle assumptions this PR unfortunately touches a lot of different parts. PR-URL: #36816 Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Benjamin Gruenbaum <[email protected]>
Futher aligns OutgoingMessage with stream.Writable. In particular
re-uses the construct/destroy logic from streams.
Due to a lot of subtle assumptions this PR unfortunately touches
a lot of different parts.