-
Notifications
You must be signed in to change notification settings - Fork 135
Add link to ursa-purejs to readme #140
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
base: master
Are you sure you want to change the base?
Conversation
Nice, never knew about this! Hey @roblabla any chance you'd like to take over the ursa repo/module and just merge it w/ yours, so that the compiled dependencies can be optional? |
Hey guys, It's cool to hear people are using ursa-purejs. I'm surprised anyone found out about it, I even had trouble finding my own repo through google XD. I'm not really using URSA nowadays, and wouldn't really have the time to maintain it. I suppose merging ursa-purejs could be a good idea. Looking at the code of my port, it looks like I modified ursa.js directly. That said, it shouldn't be too hard to rewrite it as a shim of ursaNative.cc. I'll try to take some time to do that over the week-end and submit a pull request :). |
Good stuff! Beyond having native libs be swapped out if a dependency is not available at install-time (maybe with something like this) one other useful thing to be able to do is to not use native libs -- even if they are available -- when you're targeting browsers. You probably already know this but there are some non-spec package.json fields supported by major client-side bundlers (browserify, webpack, etc.) that you could make use of described here. Using those, a node lib can switch out parts of itself depending on if the target is a browser or not. (I've seen it mainly used to replace storing things in the file system with instead storing things in the browser via localStorage or whatever, but that extends just as easily to anything else). I'm using ursa/ursa-purejs in a pretty big project that will likely outlive my involvement in it, so I'll be watching both repos. 👍 |
I personally use ursa-purejs for both browser and avoid the compile step on windows already :). https://github.com/PrismarineJS/node-minecraft-protocol/blob/master/src/ursa.js is how I handle the switch though. |
I'm looking for a new maintainer: https://github.com/quartzjer/ursa#maintainer-needed |
Is there a procedure for collaborative maintenance on this module ? |
I've been having a hard time with an app that uses ursa in a Docker container because of the OpenSSL dependency (specifically nan was giving me issues) so I switched it out for ursa-purejs, so I don't need to rewrite everything to work with node-rsa.
Anyway, ursa-purejs was somehow surprisingly difficult to find, so I figure a link in the "other repos of interest" section would be in order, for anybody finding themselves in a similar predicament.