Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upInitial skeleton for N-API support. #440
Merged
+1,406
−771
Conversation
a35ed9e
to
e74ec5b
This comment has been minimized.
This comment has been minimized.
|
@kjvalencik I think this is ready for review now! If it would help I can leave in-place GitHub comments explaining what's going on in the PR. |
This comment has been minimized.
This comment has been minimized.
|
BTW my next step after we finish and merge this PR is to write a quest issue providing background, a task list, and documentation on how to contribute to the N-API port. My goal is to make the work as parallelizeable and as friendly to potential new contributors as possible. |
Closed
…n be disabled.
- Move `extern "C"` definitions into neon-sys - Enable dynamic symbol loading in macOS via neon-build so it happens even for `cargo build` in test/dynamic crate - Remove dynamic symbol loading flag from `neon build` command since it's now in neon-build - Use trybuild instead of compiletest for static tests to avoid stability issues - No longer require Rust nightly since trybuild works for Rust stable - Temporarily disable the package test until we publish a new version of neon-sys
…he Windows linkage info about neon-sys by saving them in text files from a build script within neon-build and then including them into constants.
- neon-runtime and neon-sys can enable both backends simultaneously - Create two mutually exclusive flags at top-level neon lib: napi-runtime and legacy-runtime - Enforce mutual exclusion with a compile_error! error - Disable all compiler warnings - Use nodejs-sys for N-API C bindings - Very simple wiring-up of napi_module_register
…napi_register_module_v1` symbol, as discussed here:
http://www.youtube.com/watch?v=rEHyMIwP020&t=15m29s
…!` macro.
…initions. See: rust-lang/rust#53270 (comment)
…ch is too unstable re: exact error messages).
0d81b01
to
9b45458
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
dherman commentedSep 12, 2019
•
edited
First step towards N-API support. This PR is exploring an implementation strategy with scaffolding to build N-API support behind a feature flag (
"napi-runtime"), allowing development to happen on master as we continue maintaining the existing codebase.What I've implemented so far is almost nothing: it's barely enough to support creating an empty module that basically does nothing when it's loaded. But from here, we can split up the work into incremental, separate chunks.