-
Notifications
You must be signed in to change notification settings - Fork 9
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
Prebuilt binaries to avoid requiring Rust tooling everywhere #9
Comments
I think this a great idea. Any PR is welcome! |
Using prebuild binaries would probably solve #8 too. |
@wraithan how are your plans regarding this? If you don't plan a PR soon, I would give it a try... |
@wraithan are you still there? Any comment on this? |
Sorry, I've been busy at work and these notifications went to my personal email (since they weren't on work repo) and I missed them. We lowered the priority of moving to |
I also gave
|
So I finally found the time to search for a solution, first I was playing around with napi-rs. It was possible to produce a prebuild binary which can be used with Then I found out, that cargo already produces the prebuild-binary I have made the following PR, please review and test it: #12 |
Just found this error in github-actions:
Seems like pre-compiling need to handle all the possible OS (win/mac/linux) and platform types (x86/x64/arm64/aarch64). |
After learning about the necessity of cross-platform binaries (
I slightly modified the lib to load the correct binary on each platform, I updated #12 accordingly. |
@magiclen would you mind reviewing or commenting on it? |
Leaving some links here for documentation:
|
@rafaelmaeuer Thank you for everything you have done. My idea is to separate the precompiled I guess we need a script to build the |
Given the change over to using rust, and the lack of rust tooling in most CI infrastructure by default, it might be nice to provide prebuilt binaries.
There are a few solutions to this, https://github.com/prebuild/prebuildify appears to be one of the most modern solutions to this problem, it includes the prebuilt binaries in the package so no extra downloads needed. https://github.com/prebuild/prebuild-install is an older solution but I've seen it used pretty successfully, artifacts are separate and you use github releases to host them. Since you've already moved to github actions, it should make the configuration pretty simple, if the artifacts end up hosted in the github releases. I've not looked into if there are any special considerations for doing this with Neon.
If this is interesting to you, I can spend some time trying to make this work and provide a PR within the next 2-3 weeks.
The text was updated successfully, but these errors were encountered: