Closed Tpt closed 1 year ago
Thanks for reporting! Which Node.js version are you using? This module does not include WebStreams, so I won't expect those method to work... however we should likely throw a better exception.
Thanks for reporting! Which Node.js version are you using?
NodeJS v18.7.0 so I would expect WebStreams to be available.
This module does not include WebStreams, so I won't expect those method to work... however we should likely throw a better exception.
What about having an implementation for cases like NodeJS 16+ and modern web browsers were WebStreams are available?
@mcollina I think the ask is for these methods to work since the environment this package runs in (either Node to support several versions or browsers) often does have web streams?
I understand now, thanks!
Would you like to send a PR? I'll be a bit low on time for the coming months.
Hi @mcollina @benjamingr, since this is an old issue, just wanted to know if this is still relevant or if has it been solved in any way, if not I can work on this.
Had a couple of questions:
Readable.toWeb
and Readable.fromWeb
return if the webStreamAdapters
is an empty object?newStreamReadableFromReadableStream
and newReadableStreamFromStreamReadable
functions, as I don't see them defined anywhere in the codebase? Those are node core functions: https://nodejs.org/api/stream.html#streamreadablefromwebreadablestream-options
Those functions have not been extracted correctly and should have been removed from this module. Use them from require('stream')
.
I think the ask is for these methods to work since the environment this package runs in (either Node to support several versions or browsers) often does have web streams?
@mcollina addressing the issue of the empty webStreamsAdapters
object if the webstreamAdapters is undefined, we can solve it by using a condition and returning something else other than the empty object (as @benjamingr mentioned). That might solve this issue and the failures cause to the users using this method.
Well, I think we should not have these methods to begin with and remove them in the build process.
Would you suggest removing both methods from the readable.js
, so as not to cause further confusion on the origins of these methods? or as you mentioned, modify the build (build.mjs
) file and somehow remove it over there.
Change build.mjs so that they are removed from the build when this module is extracted from Node.js.
Docs need to be updated too
First, thank you for your amazing work on
readable-stream
!Readable.fromWeb
anReadable.toWeb
are calling thenewStreamReadableFromReadableStream
andnewReadableStreamFromStreamReadable
functions on thewebStreamsAdapters
.However
webStreamsAdapters
is only defined as an empty object leading to a failure.The same problem seems to affect
Writable
andDuplex
.