<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/node-new.git/src/api, branch main</title>
<subtitle>github.com: nodejs/node.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/'/>
<entry>
<title>node-api: get Node API version used by addon</title>
<updated>2023-05-05T15:00:27+00:00</updated>
<author>
<name>Vladimir Morozov</name>
<email>vmorozov@microsoft.com</email>
</author>
<published>2023-04-07T14:40:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=c542d3a1d30d3e6c22b27f9bde55656923874818'/>
<id>c542d3a1d30d3e6c22b27f9bde55656923874818</id>
<content type='text'>
PR-URL: https://github.com/nodejs/node/pull/45715
Reviewed-By: Gabriel Schulhof &lt;gabrielschulhof@gmail.com&gt;
Reviewed-By: Michael Dawson &lt;midawson@redhat.com&gt;
Reviewed-By: Chengzhong Wu &lt;legendecas@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PR-URL: https://github.com/nodejs/node/pull/45715
Reviewed-By: Gabriel Schulhof &lt;gabrielschulhof@gmail.com&gt;
Reviewed-By: Michael Dawson &lt;midawson@redhat.com&gt;
Reviewed-By: Chengzhong Wu &lt;legendecas@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>test_runner: fix --require with --experimental-loader</title>
<updated>2023-04-29T23:02:03+00:00</updated>
<author>
<name>Moshe Atlow</name>
<email>moshe@atlow.co.il</email>
</author>
<published>2023-04-29T23:02:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=1300ed0b164ab57d9bd39e142337707d9a1ac09c'/>
<id>1300ed0b164ab57d9bd39e142337707d9a1ac09c</id>
<content type='text'>
PR-URL: https://github.com/nodejs/node/pull/47751
Reviewed-By: Jacob Smith &lt;jacob@frende.me&gt;
Reviewed-By: Geoffrey Booth &lt;webadmin@geoffreybooth.com&gt;
Reviewed-By: Antoine du Hamel &lt;duhamelantoine1995@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PR-URL: https://github.com/nodejs/node/pull/47751
Reviewed-By: Jacob Smith &lt;jacob@frende.me&gt;
Reviewed-By: Geoffrey Booth &lt;webadmin@geoffreybooth.com&gt;
Reviewed-By: Antoine du Hamel &lt;duhamelantoine1995@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>src: mark fatal error functions as noreturn</title>
<updated>2023-04-27T08:57:52+00:00</updated>
<author>
<name>Chengzhong Wu</name>
<email>chengzhong.wcz@alibaba-inc.com</email>
</author>
<published>2023-04-27T08:57:52+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=6700aac61568690ff3cc79cd6aa1d80e9ceb3c00'/>
<id>6700aac61568690ff3cc79cd6aa1d80e9ceb3c00</id>
<content type='text'>
OnFatalError and OOMErrorHandler will not return control flow to the
calling function.

node::FatalError is an alias of node::OnFatalError. Replace all the
callsites with node::OnFatalError instead.

PR-URL: https://github.com/nodejs/node/pull/47695
Reviewed-By: Tobias Nießen &lt;tniessen@tnie.de&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
Reviewed-By: Minwoo Jung &lt;nodecorelab@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OnFatalError and OOMErrorHandler will not return control flow to the
calling function.

node::FatalError is an alias of node::OnFatalError. Replace all the
callsites with node::OnFatalError instead.

PR-URL: https://github.com/nodejs/node/pull/47695
Reviewed-By: Tobias Nießen &lt;tniessen@tnie.de&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
Reviewed-By: Minwoo Jung &lt;nodecorelab@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>src: use v8::Boolean(b) over b ? True() : False()</title>
<updated>2023-04-16T18:26:06+00:00</updated>
<author>
<name>Tobias Nießen</name>
<email>tniessen@tnie.de</email>
</author>
<published>2023-04-16T18:26:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=4f5bb1a75aff50867e5525451eefe479d6fe1a84'/>
<id>4f5bb1a75aff50867e5525451eefe479d6fe1a84</id>
<content type='text'>
Simplify existing code by using v8::Boolean::New() instead of equivalent
expressions that contain ternary operators.

PR-URL: https://github.com/nodejs/node/pull/47554
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;
Reviewed-By: Jiawen Geng &lt;technicalcute@gmail.com&gt;
Reviewed-By: Mohammed Keyvanzadeh &lt;mohammadkeyvanzade94@gmail.com&gt;
Reviewed-By: Colin Ihrig &lt;cjihrig@gmail.com&gt;
Reviewed-By: Ben Noordhuis &lt;info@bnoordhuis.nl&gt;
Reviewed-By: Luigi Pinca &lt;luigipinca@gmail.com&gt;
Reviewed-By: Darshan Sen &lt;raisinten@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Simplify existing code by using v8::Boolean::New() instead of equivalent
expressions that contain ternary operators.

PR-URL: https://github.com/nodejs/node/pull/47554
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;
Reviewed-By: Jiawen Geng &lt;technicalcute@gmail.com&gt;
Reviewed-By: Mohammed Keyvanzadeh &lt;mohammadkeyvanzade94@gmail.com&gt;
Reviewed-By: Colin Ihrig &lt;cjihrig@gmail.com&gt;
Reviewed-By: Ben Noordhuis &lt;info@bnoordhuis.nl&gt;
Reviewed-By: Luigi Pinca &lt;luigipinca@gmail.com&gt;
Reviewed-By: Darshan Sen &lt;raisinten@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>src: bootstrap prepare stack trace callback in shadow realm</title>
<updated>2023-04-04T01:13:37+00:00</updated>
<author>
<name>Chengzhong Wu</name>
<email>legendecas@gmail.com</email>
</author>
<published>2023-04-04T01:13:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=3a014dc38aa6a85c8a9ada0e62294e165e9d4367'/>
<id>3a014dc38aa6a85c8a9ada0e62294e165e9d4367</id>
<content type='text'>
Bootstrap per-realm callbacks like `prepare_stack_trace_callback` in
the ShadowRealm. This enables stack trace decoration in the ShadowRealm.

PR-URL: https://github.com/nodejs/node/pull/47107
Reviewed-By: Yagiz Nizipli &lt;yagiz@nizipli.com&gt;
Reviewed-By: Matteo Collina &lt;matteo.collina@gmail.com&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
Reviewed-By: Colin Ihrig &lt;cjihrig@gmail.com&gt;
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bootstrap per-realm callbacks like `prepare_stack_trace_callback` in
the ShadowRealm. This enables stack trace decoration in the ShadowRealm.

PR-URL: https://github.com/nodejs/node/pull/47107
Reviewed-By: Yagiz Nizipli &lt;yagiz@nizipli.com&gt;
Reviewed-By: Matteo Collina &lt;matteo.collina@gmail.com&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
Reviewed-By: Colin Ihrig &lt;cjihrig@gmail.com&gt;
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>node-api: deprecate napi_module_register</title>
<updated>2023-03-24T18:00:40+00:00</updated>
<author>
<name>Vladimir Morozov</name>
<email>vmoroz@users.noreply.github.com</email>
</author>
<published>2023-01-23T15:15:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=5e4f5e122c06744967f539def1e51473abb5db62'/>
<id>5e4f5e122c06744967f539def1e51473abb5db62</id>
<content type='text'>
PR-URL: https://github.com/nodejs/node/pull/46319
Reviewed-By: Chengzhong Wu &lt;legendecas@gmail.com&gt;
Reviewed-By: Michael Dawson &lt;midawson@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
PR-URL: https://github.com/nodejs/node/pull/46319
Reviewed-By: Chengzhong Wu &lt;legendecas@gmail.com&gt;
Reviewed-By: Michael Dawson &lt;midawson@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>src: bootstrap Web [Exposed=*] APIs in the shadow realm</title>
<updated>2023-03-15T16:22:06+00:00</updated>
<author>
<name>Chengzhong Wu</name>
<email>chengzhong.wcz@alibaba-inc.com</email>
</author>
<published>2023-03-15T16:22:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=e6b4d30a2f8ff0b43bbfd98e0e9f3a15438a4952'/>
<id>e6b4d30a2f8ff0b43bbfd98e0e9f3a15438a4952</id>
<content type='text'>
This is the initial work to bootstrap Web interfaces that are defined
with extended attributes `[Exposed=*]`.

The ShadowRealm instances are garbage-collected once it is
unreachable. However, V8 can not infer the reference cycles between
the per-realm strong persistent function handles and the realm's
context handle. To allow the context to be gc-ed once it is not
reachable, the per-realm persistent handles are attached to the
context's global object and the persistent handles are set as weak.

PR-URL: https://github.com/nodejs/node/pull/46809
Refs: https://github.com/nodejs/node/issues/42528
Reviewed-By: Matteo Collina &lt;matteo.collina@gmail.com&gt;
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;
Reviewed-By: Colin Ihrig &lt;cjihrig@gmail.com&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the initial work to bootstrap Web interfaces that are defined
with extended attributes `[Exposed=*]`.

The ShadowRealm instances are garbage-collected once it is
unreachable. However, V8 can not infer the reference cycles between
the per-realm strong persistent function handles and the realm's
context handle. To allow the context to be gc-ed once it is not
reachable, the per-realm persistent handles are attached to the
context's global object and the persistent handles are set as weak.

PR-URL: https://github.com/nodejs/node/pull/46809
Refs: https://github.com/nodejs/node/issues/42528
Reviewed-By: Matteo Collina &lt;matteo.collina@gmail.com&gt;
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;
Reviewed-By: Colin Ihrig &lt;cjihrig@gmail.com&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>worker: add support for worker name in inspector and trace_events</title>
<updated>2023-03-06T16:34:09+00:00</updated>
<author>
<name>Debadree Chatterjee</name>
<email>debadree333@gmail.com</email>
</author>
<published>2023-03-06T16:34:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=2d9bf91fe1c545521e5578f6b31d59c79b402b82'/>
<id>2d9bf91fe1c545521e5578f6b31d59c79b402b82</id>
<content type='text'>
Fixes: https://github.com/nodejs/node/issues/41589
PR-URL: https://github.com/nodejs/node/pull/46832
Reviewed-By: Ben Noordhuis &lt;info@bnoordhuis.nl&gt;
Reviewed-By: Benjamin Gruenbaum &lt;benjamingr@gmail.com&gt;
Reviewed-By: Anna Henningsen &lt;anna@addaleax.net&gt;
Reviewed-By: Darshan Sen &lt;raisinten@gmail.com&gt;
Reviewed-By: Gireesh Punathil &lt;gpunathi@in.ibm.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes: https://github.com/nodejs/node/issues/41589
PR-URL: https://github.com/nodejs/node/pull/46832
Reviewed-By: Ben Noordhuis &lt;info@bnoordhuis.nl&gt;
Reviewed-By: Benjamin Gruenbaum &lt;benjamingr@gmail.com&gt;
Reviewed-By: Anna Henningsen &lt;anna@addaleax.net&gt;
Reviewed-By: Darshan Sen &lt;raisinten@gmail.com&gt;
Reviewed-By: Gireesh Punathil &lt;gpunathi@in.ibm.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>src: share common code paths for SEA and embedder script</title>
<updated>2023-03-02T14:31:08+00:00</updated>
<author>
<name>Anna Henningsen</name>
<email>anna.henningsen@mongodb.com</email>
</author>
<published>2023-03-02T14:31:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=3803b028dda9d7f3bf06836b5ad4522ff1ae0cb3'/>
<id>3803b028dda9d7f3bf06836b5ad4522ff1ae0cb3</id>
<content type='text'>
Since SEA is very similar in principle to embedding functionality,
it makes sense to share code paths where possible. This commit does
so and addresses a `TODO` while doing so.

It also adds a utility to directly run CJS code to the embedder
startup callback, which comes in handy for this purpose.

Finally, this commit is breaking because it aligns the behavior
of `require()`ing internal modules; previously, embedders could
use the `require` function that they received to do so.
(If this is not considered breaking because accessing internals
is not covered by the API, then this would need ABI compatibility
patches for becoming fully non-breaking.)

PR-URL: https://github.com/nodejs/node/pull/46825
Reviewed-By: Darshan Sen &lt;raisinten@gmail.com&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;
Reviewed-By: Minwoo Jung &lt;nodecorelab@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Since SEA is very similar in principle to embedding functionality,
it makes sense to share code paths where possible. This commit does
so and addresses a `TODO` while doing so.

It also adds a utility to directly run CJS code to the embedder
startup callback, which comes in handy for this purpose.

Finally, this commit is breaking because it aligns the behavior
of `require()`ing internal modules; previously, embedders could
use the `require` function that they received to do so.
(If this is not considered breaking because accessing internals
is not covered by the API, then this would need ABI compatibility
patches for becoming fully non-breaking.)

PR-URL: https://github.com/nodejs/node/pull/46825
Reviewed-By: Darshan Sen &lt;raisinten@gmail.com&gt;
Reviewed-By: Joyee Cheung &lt;joyeec9h3@gmail.com&gt;
Reviewed-By: James M Snell &lt;jasnell@gmail.com&gt;
Reviewed-By: Minwoo Jung &lt;nodecorelab@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>src: fix cb scope bugs involved in termination</title>
<updated>2023-02-28T03:17:46+00:00</updated>
<author>
<name>ywave620</name>
<email>60539365+ywave620@users.noreply.github.com</email>
</author>
<published>2023-02-28T03:17:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/node-new.git/commit/?id=7a37829ccb56b07f3091ca2840ac7b4519f0ca4a'/>
<id>7a37829ccb56b07f3091ca2840ac7b4519f0ca4a</id>
<content type='text'>
Be more aggresive to clean up the async id stack,
and ensure the cleanup when terminating.

Calling SetIdle() when terminating is not harmless.
When node terminates due to an unhandled exception,
v8 preseves the vm state, which is JS and notifies
node through PerIsolateMessageListener(). If node
calls SetIdle() later, v8 complains because it
requires the vm state to either be EXTERNEL or IDLE
when embedder calling SetIdle().

PR-URL: https://github.com/nodejs/node/pull/45596
Reviewed-By: Chengzhong Wu &lt;legendecas@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Be more aggresive to clean up the async id stack,
and ensure the cleanup when terminating.

Calling SetIdle() when terminating is not harmless.
When node terminates due to an unhandled exception,
v8 preseves the vm state, which is JS and notifies
node through PerIsolateMessageListener(). If node
calls SetIdle() later, v8 complains because it
requires the vm state to either be EXTERNEL or IDLE
when embedder calling SetIdle().

PR-URL: https://github.com/nodejs/node/pull/45596
Reviewed-By: Chengzhong Wu &lt;legendecas@gmail.com&gt;</pre>
</div>
</content>
</entry>
</feed>
