Re: [whatwg/streams] Fix typo in Close/Enqueue checks for readable byte streams (#1051)

> In that case, can we change them to asserts?

Uhm, I thought the whole point of #1029 was to change the asserts into early-exits? Now you want to change them back to asserts? I'm not sure I'm following... 😕

> It looks like this might have a normative effect on SetUpTransformStreamDefaultControllerFromTransformer, where 2.2 would no longer trigger. I'm not sure though if the branch is ever reached though...

Hmm, good point, I seem to have missed that usage of `TransformStreamDefaultControllerEnqueue`. That would mean we have a "default" `TransformStream` where the readable side has been cancelled, but the writable side is still trying to send a chunk.

However, even in that case, I think we won't reach `TransformStreamDefaultControllerPerformTransform`: we would have already turned the readable's cancellation into a writable error in `TransformStreamErrorWritableAndUnblockWrite`, so `TransformStreamDefaultSinkWriteAlgorithm` should not get past the *"If state is erroring, throw writable.[[storedError]]."* step.

...I *think*. I'm not confident enough about it to actually change `TransformStreamDefaultControllerEnqueue`. 😅 

> This was presumably broken in the Web IDL rewrite; good catch! https://streams.spec.whatwg.org/commit-snapshots/cfcd303a38158e4ec3837d1028158c88d505c35d/#transform-stream-default-controller-enqueue has the more-correct abstract operation IDs. A fix, perhaps in this PR, would be lovely.

Will do. 🙂

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/streams/pull/1051#issuecomment-654450005

Received on Monday, 6 July 2020 20:31:29 UTC