-
Notifications
You must be signed in to change notification settings - Fork 10.1k
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
Error on installing socket.io - iojs 3.0.0 #2213
Comments
No errors thrown when using io.js v2.5.0 (npm v2.13.2). |
I can confirm that the error persits when using pangyp on Linux systems (only for [email protected]). This is due to the breaking changes introduced by [email protected]. See: https://github.com/nodejs/node/wiki/Breaking-Changes#300-from-2x |
Thanks @cavweb20. |
Step 1 to getting this run on iojs 3.x is done: websockets/ws released 0.8.0 which addresses the underlying problem (websockets/ws#549). Now engine.io has to update its deps (rel issue socketio/engine.io#342). After that, socket.io has to update it's deps as well (engine.io forces an old version of ws so installing the new version in parallel does not help) |
I think its also worth mentioning that socket.io is using a fork of engine.io and not the master for some reason. So the ws update needs to pulled into that forked branch. |
Update: The issue with engine.io blocking this has been addressed. From @eugene1g's last comment, I believe socket.io now needs to update it's deps to pull in the engine.io fix. socket.io currently references engine.io#f3fd4bb so upgrading to engine.io#385863d should do the job Edit: Sorry, I've just realised that merged pull request is in a forked repo. But, I can confirm, changing the dependency (in "node_modules/socket.io/package.json") from |
This is also occuring on node 4.0.0.
Since node 4.0.0 is about to be released any day now, let's figure out a real fix for this. |
This issue still exists. I did what was suggested by Ramldeas to get it to work |
@RamIdeas Thanks, yes the socket.io upgrade also worked for me |
With the fix being so simple and the cause being posted 5 days ago is Socket.io just not being maintained by anyone? |
I have constructed a temporary replacement package for socket.io here This is npm installable without manual adjustments to any lower-level package.json. To use it, point your package.json dependency for socket.io to jldec/socket.io
NOTE: pointing to Why? pub-server depends on socket.io but I didn't want pub-server users to have to fiddle with lower-level package.json entries when they install it. This workaround allows them to install a working system under node v4. I decided that this was preferable to restricting all users to an earlier node version. Aside: The temporary package initially just fixed the engine.io dependency as suggested by @RamIdeas earlier in this thread. But this still produced a build error when doing a clean hth |
Thanks @jldec that worked for me! |
For projects like sails.js which rely on socket.io as a dependency of the framework, we can't exactly resort to temporary hackery as easily as some applications can. We're very interested in seeing a fix published to npm soon. |
Use fixed socket module version immediately Related issue: socketio/socket.io#2213
any news on when the fix will be published? |
@tjwebb sailsjs also supports primus as real-time engine so you can switch to that instead and use engine.io as transformer. This gives you exactly the same setup but with updated and maintained dependencies. |
To clarify, what I mentioned above was not intended as a workaround, but more a confirmation of what was required to fix this (i.e. bump Good news: this has been fixed. You can see the package.json now points to engine-io#7e77dd5 socket.io's version, itself, hasn't changed so |
Any downstream package which depends on npm to install socket.io will still fail to install on node v4. |
@rauchg @nkzawa Please update socket.io and socket.io-client package.json to reflect changes in eengine.io due to socketio/engine.io#341 and socketio/engine.io#342 (socketio/engine.io@7e77dd5) as well as socketio/engione.io-client#412 (socketio/[email protected]) to enable iojs 3+ and nodejs 4+ compatibility. |
Adding to the list: nodejs/node#2798. |
+:100: would love to see this working in Node.js 4.0.0 |
👍 |
Any updates on this? |
this appears to fixed now with v1.3.7 |
Great. Thank you for the note. |
Confirmed that it is now working. Closing this issue.
|
got this same error when running node 4.2.0 |
I have this error running v4.2.1 |
Also happening to me on 4.2.1 |
I am able to npm install a project which depends on socket.io ^1.3.7 under node v4.2.1 At first i got the Xcode error below because i had previously upgraded OSX, and the Xcode compiler annoyingly insists that you first agree to Apples latest Ts&Cs when you do this. After starting Xcode from the dock and re-agreeing to the Apple license (and also removing the node_modules containing the failed earlier install), the npm install succeeded without error.
|
I know this issue is closed but it's worth noting that for those using |
When I try to install
socket.io
using node v0.12.7 (npm v2.11.3) all works finehowever when I use io.js v3.0.0 (npm v2.13.3), the following is displayed:
The text was updated successfully, but these errors were encountered: