-
Notifications
You must be signed in to change notification settings - Fork 99
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
JS API: initial implementation (N-API version) #206
Conversation
Do we have an issue to fix this? |
@mmarchini I don't think so, in general llnode seems pretty broken on v10. Here is what the process object looks like in v10.5.0 See `v8 inspect` output
I updated this PR to fix the compilation error on Windows now that #203 landed. I've split that commit into #208 |
It is referenced in both llnode.cc and llscan.cc, to make sure targets can compile by only including llscan.h, this is the minimum change required. PR-URL: nodejs#208 Refs: nodejs#206 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Matheus Marchini <matheus@sthima.com>
a71136f
to
d7fcd41
Compare
So, a few things to do before this can land:
|
IMO we should keep it since we'll have to fix v10.x sooner or later. |
Ahh, something changed between v10.4.0 and v10.5.0. 10.4.0 seems to be working fine (at least for the |
@mmarchini I've updated the build files and the tests:
There are only two failures in Travis now:
This should be safe to land now. |
@mmarchini Does this still look good to you? |
Yes! :) |
Co-authored-by: Richard Chamberlain <richard_chamberlain@uk.ibm.com> PR-URL: nodejs#206 Refs: nodejs#14 Reviewed-By: Matheus Marchini <matheus@sthima.com>
PR-URL: nodejs#206 Refs: nodejs#14 Reviewed-By: Matheus Marchini <matheus@sthima.com>
Refs: #14
This is a revamp of #147 : now that we have dropped support of Node.js v4.x, we can use N-API (or the C++ wrapper to be exact) to build the binding (which is much easier to use than the V8 API/NAN). It builds on previous work that refactored the build files and restructured how llnode instances are created so this PR is much smaller than what #147 originally was.
The current API is laid down in JSAPI.md, currently the results of the inspection are just strings that we use to print in LLDB instead of structured data - we can implement custom inspector of different types in
llv8.h
later so that proper JS objects can be returned back to JS.Note that the current test does not pass on Node v10 core dumps since object inspection of llnode is half-broken on Node v10 (e.g.
process.platform
is recognized asSmi
)cc @mmarchini @bnoordhuis