-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
Sails install issue Windows 8.1 node 12 #2884
Comments
I downloaded the most recent node version 0.12.2 and have the issue. v8 is part of the node msi installer, so I don't know how I would update v8 or why it would need to be updated. I am on windows 8.1 and have visual studio 2013 installed also. |
It looks like sails-hook-sockets is referencing older socket.io modules and there might have been an issue with them on windows compile... |
system32 is just the location of the command (cmd) exe for windows. When you open a command window from the exe in the start menu, the location of the exe is where the path starts. my path for cmd.exe is"
so the real location of node is D:\nodejs. It's a little bit different than linux/unix systems, so if you haven't ever used a windows pc things would seem a bit odd. my npm version is 2.7.4 and output of v8 is 3.28.73 (output of node -e "console.log(process.versions.v8)") |
I could just use linux/unix system for this, but I need my app to be platform agnostic which means that it needs to compile on all platforms. Thanks for the help though... |
I think lots of people would disagree with this. The Azure and the Microsoft folks also helped a bunch with sails-deploy to get sails apps running on Azure. This isn't a node or npm issue it's the ws module of engine.io trying to install native dependencies. It should work fine without the native compile according to the maintainers but thats a pretty nasty debug log. You said you have Visual Studio 2013 installed the other dependency for node-gyp is Python 2.x. So make sure that's up to date as well. If so I would try uninstalling sails, running |
Have you run npm install --msvs_version = xxxx ? I have a node / sails app running on Server 2008 and certain modules (I'm looking at you bcrypt) don't like it if I don't specify the visual studio version. Replace the xxxx with whatever year of visual studio you have installed. |
@tjwebb to answer your question, no. I haven't done anything with sails for months, but have been using node 12 for a while. I just updated to 12.2 since you mentioned that it looked like a v8 issue. Your comment
is unjustified. Node was designed to be platform independent. It's developers that break this by using platform specific modules or create platform specific modules. @particlebanana yes, I've tried npm cache clear several times @brandtheisey yes, I have tried that also, still same issue. Looking into it further, it seems several other projects are having this issue with ws. It seems the fix was implemented in new versions that filter up to socket.io. I will try to install the modules themselves and report my findings. |
ok, ws compiles, at version 0.7.1 (at version 0.5.0 too): https://gist.github.com/Karnith/e909fd8a83cc5c3f3907 engine.io compiles, notice different ws version 0.5.0: https://gist.github.com/Karnith/028eca02c9eb09198057 with engine.io there seems to be an issue... The master branch here specifies 1.5.1 with ws 0.7.1, but the npm module references 0.5.0 at version 1.5.1 of engine.io. Not show stopping, but an issue. socket.io version 1.3.5 has issues compiling: https://gist.github.com/Karnith/a698e042d857b4a6c8ee socket.io-client (1.3.5) has an issue compiling (ws@0.4.31): https://gist.github.com/Karnith/40eda6463fd8f4c7eafc engine.io-client (1.5.1) has an issue compiling (ws@0.4.31): https://gist.github.com/Karnith/d0d73addc3ce51304ea5 so it seems socket.io, socket.io-client, engine.io-client need to be updated and sails-hook-sockets reference them. ws versions need to be updated t be the same. Currently there are three different ones being referenced: |
I was able to fix the compiling by forking the repos and referencing the correct versions of everything in the package.json. So, the npm packages need to be updated with the correct version references to fix this. socket.io, engin.io-client, socket.io-client compiles: |
@tjwebb are you sure we should close this? I may have fixed the issue temporarily for my case, but others will still have the same issue until sails-hook-sockets references a fixed socket.io, engine.io, socket.io-client and engine.io-client. engine.io #322 |
@tjwebb has anyone tested sails on windows lately? I know you haven't cause you use linux/unix.
unless full testing with various platforms is done, like in any other development methodology, what you stated above is incorrect. That is unless the sails team decide to publicly announce that windows is no longer supported. I'll delete the long posts, so this is easier to follow for you. |
This seems to have turned this into a generic Windows vs the rest of the world issue.
Their is a ton of development of Node.js on Windows. Also Windows Azure has invested a lot in to trying to be a premier Node.js platform for enterprise apps. I think its wrong to discount this issue simply because its Windows. (should be noted that I don't use Azure). I have/had sails running on dev servers running Windows 7, 10 and Server 2008 with out issues. I'm on different versions, but I'm still under Node 12 on each of these platforms. I have not had a chance to test with 12. @Karnith makes a good point that by closing this, were essentially saying that Windows is not supported. If sails does not want to burden of supporting windows that is their decision to make, but it should probably put that out the on the getting started page? |
+1 @tjwebb Wrangling open source projects is tough (especially as they get popular). I can say I appreciate all that you and the sails guys do! |
I have come into the same problem here as @Karnith, but I'm not sure exactly what steps he took to fix it. Would someone be willing to spell it out? Philosophically, this issue doesn't need a hard 'fix' so much as established instruction. If @Karnith has made a viable work around, listing a series of steps to take would likely be Good Enough for closing the issue. [edit] to be clear: |
The work around I had was to fork the sails, sails socket.io client projects, socket.io, engine.io and their clients. I corrected all the references and then used my forks instead of sails repo |
I understand forking the repos, but what clients? Then, corrected all of what references? I generally don't have a problem with following instructions, but I don't know what you're talking about. |
There is socket.io, socket.io-client, engine.io and engine.io-client used by sails in dependants. The whole socket.io dependencies need to be fixed to reference the correct versions. Then sails and sails socket module need to reference the updated forks. See my repositories for examples. -------- Original message -------- I understand forking the repos, but what clients? Then, corrected all of what references? I generally don't have a problem with following instructions, but I don't know what you're talking about. Reply to this email directly or view it on GitHubhttps://github.com//issues/2884#issuecomment-103328121. |
Really nice job @Karnith, I'll give your repos a try, I'm stuck with this error and I see no chance of being solved soon in original repo. It's a shame people do not realize the amount of Sails installations using windows out there. Thanks. |
An Issue/PR needs to be brought up here https://github.com/balderdashy/sails-hook-sockets @Karnith can you do a PR for that library since you already have it forked? Once that library is updated then we can begin the work on merging it into the Sails repo. Aging repos are a concern for everybody, not just us bad, bad, bad Windows users. |
Following the install instructions on the sailsjs.org website to install on windows (8):
Then I found this issue. Is there a timeline to get this fixed and updated to npm? Otherwise the sailsjs.org website should state that "currently Sails does not work on windows" or have a detailed list of the hoops to jump through. |
@gitjhn I'm not so sure this can be fixed internally. Sails is not the only node module that has these sorts of problems. I have found that anything that compiles is very similar. It's also rather sticky in that it's not truly a module problem. If you can get it to compile, it will work on windows, and compiling, it could be argued, isn't necessarily the modules responsibility. My "fix" was to drop windows from the dev env completely and use a linux vm with a samba share. Since I was using it for dev convenience (ide, etc) this has been 100%. |
I have the same issue. did u have any update? |
@randallmeeker I would do a PR, but when Automattic updates all the socket.io and engine.io dependencies, things would probably break again. I have received word that they are planning a fix, they just need to fix another issue introduced by a pr first. |
There still hasn't been any push to npm, but the new fix to compile on windows is to reference the github packages (Automatic/socket.io, Automatic/socket.io-client, etc) in sails-hooks-sockets and sails package.json. They fixed it on github, just haven't pushed to npm. |
It looks like updates to socket.io and socket.io-client as of 1.3.6 have been pushed to npm. Any chance the appropriate changes can be made to these dependencies in both the sails and sails-hook-sockets to close out this issue? |
This should be automatic since both are referencing npm. I just tested and everything compiles correctly now in windows. |
Closing issue. |
Hi,
I'm having an issue with sails install. I have done npm cache clear several times.
https://gist.github.com/Karnith/9f2a0b7fedac9875d194
The text was updated successfully, but these errors were encountered: