modules: adding load linked modules feature#8
modules: adding load linked modules feature#8thlorenz wants to merge 1 commit intonodejs:v0.12from thlorenz:iojs-v0.12-linked-module-loading
Conversation
- introduced NM_F_LINKED flag to identify linked modules - setting node_is_initialized after calling V8::Initialize in order to make the right decision during initial module registration - introduced modlist_linked in order to track modules that were pre-registered in order to complete it once node is initialized - completing registration of linked module similarly to the way it's done inside DLOpen
|
For the record, I already LGTM'd this but I'd like @trevnorris to sign off on it. |
|
LGTM |
|
running full CI on this https://jenkins-node-forward.nodesource.com/job/iojs+any-pr+multi/3/ |
|
@thlorenz would it be difficult to add a simple test for this in test/addons/ and perhaps a super-simple sanity check in test/simple/? seems like something that's ripe for regressions. |
|
Ideally yes, but that would require adding something to So I think it'd have to be some integration test, possibly even executed manually, not sure. Not sure when I can get to it. Could we merge this anyhow and I'll think about how to best do this and supply tests in another PR? |
|
I'd normally require a test, but since the API is technically "private" (done, IMO, so the API can be hashed out as it's used if necessary) there's no need for a test at the moment. |
|
Thanks @trevnorris and as I said it won't be a simple test. |
|
@thlorenz I assumed that the test/addons/ directory would be the place for this--they are a separate test run and are all compiled and loaded to test, perhaps we could do something similar to make this testable? |
|
No this doesn't work exactly like an addon. It's a linked module, i.e. it has to be made part of the code base by modifying the |
|
this got landed in joyent/node didn't it? should we land it here or close and wait for the next pull from joyent/node? |
|
It did land in joyent/node as well but in different shape since things were adapted to older API, i.e. |
- introduced NM_F_LINKED flag to identify linked modules - setting node_is_initialized after calling V8::Initialize in order to make the right decision during initial module registration - introduced modlist_linked in order to track modules that were pre-registered in order to complete it once node is initialized - completing registration of linked module similarly to the way it's done inside DLOpen PR-URL: #8 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
|
landed via f4e058d |
- introduced NM_F_LINKED flag to identify linked modules - setting node_is_initialized after calling V8::Initialize in order to make the right decision during initial module registration - introduced modlist_linked in order to track modules that were pre-registered in order to complete it once node is initialized - completing registration of linked module similarly to the way it's done inside DLOpen PR-URL: #8 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
- introduced NM_F_LINKED flag to identify linked modules - setting node_is_initialized after calling V8::Initialize in order to make the right decision during initial module registration - introduced modlist_linked in order to track modules that were pre-registered in order to complete it once node is initialized - completing registration of linked module similarly to the way it's done inside DLOpen PR-URL: #8 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
- introduced NM_F_LINKED flag to identify linked modules - setting node_is_initialized after calling V8::Initialize in order to make the right decision during initial module registration - introduced modlist_linked in order to track modules that were pre-registered in order to complete it once node is initialized - completing registration of linked module similarly to the way it's done inside DLOpen PR-URL: #8 Reviewed-by: Trevor Norris <trev.norris@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Original commit message:
Merged: [compiler] Fix bug in SimplifiedLowering's overflow computation
Revision: e371325bcb03f20a362ebfa48225159702c6fde7
BUG=chromium:1126249
NOTRY=true
NOPRESUBMIT=true
NOTREECHECKS=true
R=tebbi@chromium.org
Change-Id: I411d9233f77992e73da12784cef59c885999b556
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2415988
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/branch-heads/8.6@{#8}
Cr-Branched-From: a64aed2333abf49e494d2a5ce24bbd14fff19f60-refs/heads/8.6.395@{#1}
Cr-Branched-From: a626bc036236c9bf92ac7b87dc40c9e538b087e3-refs/heads/master@{#69472}
Refs: v8/v8@a59e3ac
Original commit message:
Merged: [compiler] Fix bug in SimplifiedLowering's overflow computation
Revision: e371325bcb03f20a362ebfa48225159702c6fde7
BUG=chromium:1126249
NOTRY=true
NOPRESUBMIT=true
NOTREECHECKS=true
R=tebbi@chromium.org
Change-Id: I411d9233f77992e73da12784cef59c885999b556
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2415988
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/branch-heads/8.6@{#8}
Cr-Branched-From: a64aed2333abf49e494d2a5ce24bbd14fff19f60-refs/heads/8.6.395@{#1}
Cr-Branched-From: a626bc036236c9bf92ac7b87dc40c9e538b087e3-refs/heads/master@{#69472}
Refs: v8/v8@a59e3ac
Original commit message:
Merged: [compiler] Fix bug in SimplifiedLowering's overflow computation
Revision: e371325bcb03f20a362ebfa48225159702c6fde7
BUG=chromium:1126249
NOTRY=true
NOPRESUBMIT=true
NOTREECHECKS=true
R=tebbi@chromium.org
Change-Id: I411d9233f77992e73da12784cef59c885999b556
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2415988
Reviewed-by: Tobias Tebbi <tebbi@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Cr-Commit-Position: refs/branch-heads/8.6@{#8}
Cr-Branched-From: a64aed2333abf49e494d2a5ce24bbd14fff19f60-refs/heads/8.6.395@{#1}
Cr-Branched-From: a626bc036236c9bf92ac7b87dc40c9e538b087e3-refs/heads/master@{#69472}
Refs: v8/v8@a59e3ac
PR-URL: #38275
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Shelley Vohr <codebytere@gmail.com>
Update README for v18.12.1
refiling PR from node-fwd
make the right decision during initial module registration
pre-registered in order to complete it once node is initialized
done inside DLOpen