particle-iot / spark-server

UNMAINTAINED - An API compatible open source server for interacting with devices speaking the spark-protocol
https://www.particle.io/
GNU Affero General Public License v3.0
441 stars 136 forks source link

Recommended Node.js version #61

Open ckbehemoth opened 8 years ago

ckbehemoth commented 8 years ago

Hello all,

I'm just getting my local spark server installed for testing and I was wondering what the current recommended node.js version is (0.10.X, 0.12.X, or the 4.X). I didn't see it mentioned in the README, etc, so apologies if I failed to RTFM.

TIA,

Bill

KarbonDallas commented 8 years ago

@ckbehemoth,

Hey! I believe 0.12.7 would be the recommended version of Node for spark-server. I do however want to set the expectation that it may be buggy when used with Photons. We have been pushing hard to ship features requested of our cloud by the majority of our users. Unfortunately, in the mean time the spark-server implementation has lagged behind.

This may be frustrating for you if your primary intent is to develop something with a local cloud (rather than just hacking and experimenting). I am more than happy to help you with any issues you run into, but I wanted to make sure this was something you were aware of going into the endeavor!

chuank commented 8 years ago

It used to be that 0.10.40 was the requirement, and it has to do with the ursa dependency not compiling for 0.12.7. See #57 for the background story.

I just checked https://github.com/quartzjer/ursa, and it seems they have fixed the compatibility for 0.12.7 2 weeks ago, so yeah, I'd give 0.12.7 a shot, and fall back to 0.10.40 if it fails to install

@emilyrose, on a sidenote: any updates on #53, #55, #56? Cheers

msolters commented 8 years ago

^ yes, a massive +1 for all of those!!

KarbonDallas commented 8 years ago

Sadly, I don't have any updates on these issues just yet. I know that an updated particle-server is an eventuality, but I don't currently have any estimates as far as timeline goes.

With that said, I do appreciate the time that went into reporting these issues! I'm sorry that I can't be more specific or particularly helpful.

ckbehemoth commented 8 years ago

@emilyrose @chuank

Thanks! I know the spark-server is still getting up to speed w.r.t. the Photon, so no worries. I'd like to help, so I'll be sure to send feedback/updates as I stumble my way through getting it working.

More TK,

Bill

KarbonDallas commented 8 years ago

@ckbehemoth,

That is super awesome and I am more than happy to help facilitate your continued discovery! Please feel free to open issues if you run into anything that you think needs attention.

— Emily

chuank commented 8 years ago

@ckbehemoth, I've had to deploy another instance of my local cloud, and after rebuilding everything from scratch I can unfortunately confirm that spark-server works only on node 10.x and not 12.x – I still get the same Cryptostream errors as described in #48.

While the ursa module compiled without issue, there's just something with openssl decryption that's incompatible between 10.x and 12.x.

My local cloud is on a RPi2, running Debian Jessie, 4.1.12-v7+. Perhaps others who deployed their local cloud on other platforms can share their experience here? I have not tried running spark-server on a mbp or desktop pc.

ckbehemoth commented 8 years ago

@chuank Thanks! Your setup sounds like mine. I'll be curious (in my copious free time :P ) to take a look at the differences between the versions w.r.t. the crypto. Gonna have to wait until after Halloween, though...

PseudoSky commented 8 years ago

Hey, I think this might help (maybe not for windows people though). Haven't extensively tested it, but you should be able to run

cd spark-server      # Or not if you're there already
npm install          # from higher node versions ( I used v0.12.5 )
nano node_modules/spark-protocol/lib/CryptoStream.js

Then modify it with the changes in this spark/spark-protocol#14