Open addaleax opened 6 years ago
@addaleax I am interested in getting this module to work in node v10. I am curious if you have any idea what the breaking were changes were in node core?
@diasdavid Has there any been any work already on making this work with v10?
@jgautier I wasn’t even aware that this is broken on Node 10 (and I’m not sure it was when I originally posted this).
Looking it up, we removed it from our internal test matrix in https://github.com/nodejs/citgm/pull/564:
SPDY relies on spdy-transport and that broke due to a BC in 10.0.0. However, neither of these modules are maintained anymore as they got pretty much obsolete due to http2.
I would agree with that assessment, it’s a good idea to migrate away from it altogether.
So what are the recommendations? Any ideas on how to fix it - nodejs 10+ to get working with spdy?
@vytautas-pranskunas- Check the comments at the bottom of https://github.com/spdy-http2/node-spdy/issues/343
The problem, as I understand it, is that fixing v10 (current) breaks v8 (stable).
Perhaps someone (https://github.com/spdy-http2/node-spdy/issues/339) could publish a new version with the updates and make good use of the engines
field in package.json
https://docs.npmjs.com/files/package.json#engines
As to the topic at hand... I have no idea how anyone can do any degree of network protocol work in node without relying on internal APIs... it's a jungle of very difficult to navigate code and not much is exposed to the outside world (though it's getting better all the time).
I myself have code that will only run on early versions of v8, none of v9, and only early versions of v10 because I'm operating in-between the tls
and net
layers, which were not build to be used independently. I imagine spdy
suffers from similar issues.
Hi everyone!
As you probably know (because you are maintaining this code)
spdy
currently makes heavy use of assumptions about Node's internals, and in particular I'm thinking about the wholehandle-thing
stuff.Obviously, breaking ecosystem modules like
spdy
is not a goal for Node, but this still puts Node core maintainers in a situation where it's unreasonable to take special care about not breakingspdy
when the rest of the ecosystem, who plays by the rules and relies on public APIs instead, would benefit from changes.So:
spdy
; Those would go into asemver-major
release on Node's side anyway, and would probably be easy to fix, but who's to say that that's always going to be the case?net.Socket
instances, but it's not really clear to me why that requires hooking into Node's internals?