node-bin-darwin-arm64 16.5.0 → 16.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +173 -0
- package/LICENSE +1 -1
- package/README.md +10 -10
- package/bin/node +0 -0
- package/include/node/common.gypi +1 -1
- package/include/node/config.gypi +255 -0
- package/include/node/node_version.h +2 -2
- package/include/node/v8-internal.h +48 -14
- package/include/node/v8-profiler.h +11 -4
- package/include/node/v8-version.h +3 -3
- package/include/node/v8.h +132 -41
- package/include/node/v8config.h +4 -10
- package/package.json +1 -1
- package/share/man/man1/node.1 +2 -4
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,8 @@
|
|
|
10
10
|
</tr>
|
|
11
11
|
<tr>
|
|
12
12
|
<td>
|
|
13
|
+
<a href="#16.6.1">16.6.1</a><br/>
|
|
14
|
+
<a href="#16.6.0">16.6.0</a><br/>
|
|
13
15
|
<a href="#16.5.0">16.5.0</a><br/>
|
|
14
16
|
<a href="#16.4.2">16.4.2</a><br/>
|
|
15
17
|
<a href="#16.4.1">16.4.1</a><br/>
|
|
@@ -40,6 +42,177 @@
|
|
|
40
42
|
* [io.js](CHANGELOG_IOJS.md)
|
|
41
43
|
* [Archive](CHANGELOG_ARCHIVE.md)
|
|
42
44
|
|
|
45
|
+
<a id="16.6.1"></a>
|
|
46
|
+
## 2021-08-03, Version 16.6.1 (Current), @targos
|
|
47
|
+
|
|
48
|
+
### Notable Changes
|
|
49
|
+
|
|
50
|
+
* Updated npm to 7.20.3 (npm team) [#39579](https://github.com/nodejs/node/pull/39579)
|
|
51
|
+
* Reverted an ABI-breaking change from V8 9.2 that could impact some native modules (Michaël Zasso) [#39624](https://github.com/nodejs/node/pull/39624)
|
|
52
|
+
* Fixed a bug in error handling known to affect at least Webpack and Jest (Guy Bedford) [#39593](https://github.com/nodejs/node/pull/39593)
|
|
53
|
+
|
|
54
|
+
### Commits
|
|
55
|
+
|
|
56
|
+
* [[`6c769ccedf`](https://github.com/nodejs/node/commit/6c769ccedf)] - **build**: override python executable path on configure (legendecas) [#39465](https://github.com/nodejs/node/pull/39465)
|
|
57
|
+
* [[`cbf6a01c17`](https://github.com/nodejs/node/commit/cbf6a01c17)] - **crypto**: fix `generateKeyPair` with encoding 'jwk' (himself65) [#39319](https://github.com/nodejs/node/pull/39319)
|
|
58
|
+
* [[`3091295609`](https://github.com/nodejs/node/commit/3091295609)] - **deps**: revert ABI-breaking change from V8 9.2 (Michaël Zasso) [#39624](https://github.com/nodejs/node/pull/39624)
|
|
59
|
+
* [[`06d7b8e8c8`](https://github.com/nodejs/node/commit/06d7b8e8c8)] - **deps**: upgrade npm to 7.20.3 (npm team) [#39579](https://github.com/nodejs/node/pull/39579)
|
|
60
|
+
* [[`7b612fadc2`](https://github.com/nodejs/node/commit/7b612fadc2)] - **doc**: fix crypto.hkdf callback derivedKey type (Filip Skokan) [#39453](https://github.com/nodejs/node/pull/39453)
|
|
61
|
+
* [[`7a731efd97`](https://github.com/nodejs/node/commit/7a731efd97)] - **doc,lib,test**: rename HKDF 'key' argument (Tobias Nießen) [#39474](https://github.com/nodejs/node/pull/39474)
|
|
62
|
+
* [[`93bbaa0ce9`](https://github.com/nodejs/node/commit/93bbaa0ce9)] - **module**: fix ERR\_REQUIRE\_ESM error for null frames (Guy Bedford) [#39593](https://github.com/nodejs/node/pull/39593)
|
|
63
|
+
* [[`e13162de09`](https://github.com/nodejs/node/commit/e13162de09)] - **module**: refine `enrichCJSError` (Antoine du Hamel) [#39507](https://github.com/nodejs/node/pull/39507)
|
|
64
|
+
* [[`815fbec6f1`](https://github.com/nodejs/node/commit/815fbec6f1)] - **repl**: do not include legacy getter/setter methods in completion (Anna Henningsen) [#39576](https://github.com/nodejs/node/pull/39576)
|
|
65
|
+
* [[`0405c8d3f0`](https://github.com/nodejs/node/commit/0405c8d3f0)] - **zlib**: avoid converting `Uint8Array` instances to `Buffer` (Antoine du Hamel) [#39492](https://github.com/nodejs/node/pull/39492)
|
|
66
|
+
|
|
67
|
+
<a id="16.6.0"></a>
|
|
68
|
+
## 2021-07-29, Version 16.6.0 (Current), @BethGriggs
|
|
69
|
+
|
|
70
|
+
This is a security release.
|
|
71
|
+
|
|
72
|
+
### Notable Changes
|
|
73
|
+
|
|
74
|
+
#### Say hello to V8 9.2
|
|
75
|
+
|
|
76
|
+
The V8 engine is updated to version 9.2.230.21.
|
|
77
|
+
|
|
78
|
+
It notably introduces the new [`Array.prototype.at`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/at) method:
|
|
79
|
+
|
|
80
|
+
```js
|
|
81
|
+
const array = [1, 2, 3];
|
|
82
|
+
|
|
83
|
+
console.log(array.at(-1));
|
|
84
|
+
// Prints: 3
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Contributed by Michaël Zasso - [#39470](https://github.com/nodejs/node/pull/39470)
|
|
88
|
+
|
|
89
|
+
#### Other notable changes
|
|
90
|
+
|
|
91
|
+
* **CVE-2021-22930**: Use after free on close http2 on stream canceling (High) - [#39423](https://github.com/nodejs/node/pull/39423)
|
|
92
|
+
* Node.js is vulnerable to a use after free attack where an attacker might be able to exploit the memory corruption, to change process behavior. You can read more about it in https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-22930
|
|
93
|
+
* [[`f93d2ac587`](https://github.com/nodejs/node/commit/f93d2ac587)] - **inspector**: mark as stable (Gireesh Punathil) [#37748](https://github.com/nodejs/node/pull/37748)
|
|
94
|
+
* [[`89b4770d5c`](https://github.com/nodejs/node/commit/89b4770d5c)] - **punycode**: add pending deprecation (Antoine du Hamel) [#38444](https://github.com/nodejs/node/pull/38444)
|
|
95
|
+
* [[`b67214fe31`](https://github.com/nodejs/node/commit/b67214fe31)] - **(SEMVER-MINOR)** **repl**: enable --experimental-repl-await /w opt-out (hemanth.hm) [#34733](https://github.com/nodejs/node/pull/34733)
|
|
96
|
+
|
|
97
|
+
### Commits
|
|
98
|
+
|
|
99
|
+
* [[`b5248d4000`](https://github.com/nodejs/node/commit/b5248d4000)] - **async_hooks**: emit promise trace events from JS (Stephen Belanger) [#39135](https://github.com/nodejs/node/pull/39135)
|
|
100
|
+
* [[`e18778d409`](https://github.com/nodejs/node/commit/e18778d409)] - **async_hooks**: eliminate native PromiseHook (Stephen Belanger) [#39135](https://github.com/nodejs/node/pull/39135)
|
|
101
|
+
* [[`90b9bb1a7d`](https://github.com/nodejs/node/commit/90b9bb1a7d)] - **build**: use Node.js 14 in commit-lint.yml (Rich Trott) [#39506](https://github.com/nodejs/node/pull/39506)
|
|
102
|
+
* [[`5182e26f14`](https://github.com/nodejs/node/commit/5182e26f14)] - **build**: reset embedder string to "-node.0" (Michaël Zasso) [#39470](https://github.com/nodejs/node/pull/39470)
|
|
103
|
+
* [[`e1910ef290`](https://github.com/nodejs/node/commit/e1910ef290)] - **build**: fix `host_arch_cc()` for AIX/IBM i (Richard Lau) [#39481](https://github.com/nodejs/node/pull/39481)
|
|
104
|
+
* [[`ce2011b7a1`](https://github.com/nodejs/node/commit/ce2011b7a1)] - **build**: update coverage Makefile target comments (Richard Lau) [#39365](https://github.com/nodejs/node/pull/39365)
|
|
105
|
+
* [[`6b055f17b6`](https://github.com/nodejs/node/commit/6b055f17b6)] - **build**: run workflows when a PR is ready for review (Michaël Zasso) [#39405](https://github.com/nodejs/node/pull/39405)
|
|
106
|
+
* [[`25f45d5018`](https://github.com/nodejs/node/commit/25f45d5018)] - **build**: update to setup-node@v2 (Rich Trott) [#39366](https://github.com/nodejs/node/pull/39366)
|
|
107
|
+
* [[`a7472576d7`](https://github.com/nodejs/node/commit/a7472576d7)] - **build**: add `library_files` to gyp variables (himself65) [#39293](https://github.com/nodejs/node/pull/39293)
|
|
108
|
+
* [[`d16d36f1c2`](https://github.com/nodejs/node/commit/d16d36f1c2)] - **crypto**: support Big(U)Int64Array in getRandomValues (Michaël Zasso) [#39443](https://github.com/nodejs/node/pull/39443)
|
|
109
|
+
* [[`95db54482a`](https://github.com/nodejs/node/commit/95db54482a)] - **debugger**: validate sec-websocket-accept response header (Chris Opperwall) [#39357](https://github.com/nodejs/node/pull/39357)
|
|
110
|
+
* [[`3751b92fa2`](https://github.com/nodejs/node/commit/3751b92fa2)] - **debugger**: rename internal module (Rich Trott) [#39378](https://github.com/nodejs/node/pull/39378)
|
|
111
|
+
* [[`0e5eb8b17d`](https://github.com/nodejs/node/commit/0e5eb8b17d)] - **deps**: restore minimum ICU version to 68 (Michaël Zasso) [#39470](https://github.com/nodejs/node/pull/39470)
|
|
112
|
+
* [[`e8da1f25fb`](https://github.com/nodejs/node/commit/e8da1f25fb)] - **(SEMVER-MINOR)** **deps**: make V8 9.2 abi-compatible with 9.0 (Michaël Zasso) [#39470](https://github.com/nodejs/node/pull/39470)
|
|
113
|
+
* [[`a93e6ef777`](https://github.com/nodejs/node/commit/a93e6ef777)] - **deps**: V8: backport 5c76da8ddcf8 (Michaël Zasso) [#39337](https://github.com/nodejs/node/pull/39337)
|
|
114
|
+
* [[`d612544199`](https://github.com/nodejs/node/commit/d612544199)] - **deps**: V8: cherry-pick 359d44df4cdd (Michaël Zasso) [#39337](https://github.com/nodejs/node/pull/39337)
|
|
115
|
+
* [[`c6ec2b4817`](https://github.com/nodejs/node/commit/c6ec2b4817)] - **deps**: V8: cherry-pick 3805a698f7b6 (Michaël Zasso) [#39337](https://github.com/nodejs/node/pull/39337)
|
|
116
|
+
* [[`e6b84dfe84`](https://github.com/nodejs/node/commit/e6b84dfe84)] - **deps**: V8: cherry-pick 56fe020eec0c (Michaël Zasso) [#39337](https://github.com/nodejs/node/pull/39337)
|
|
117
|
+
* [[`2393fae427`](https://github.com/nodejs/node/commit/2393fae427)] - **deps**: V8: cherry-pick 2b77ca200c56 (Michaël Zasso) [#39337](https://github.com/nodejs/node/pull/39337)
|
|
118
|
+
* [[`c8e7d80475`](https://github.com/nodejs/node/commit/c8e7d80475)] - **deps**: V8: cherry-pick 53784bdb8f01 (Michaël Zasso) [#39337](https://github.com/nodejs/node/pull/39337)
|
|
119
|
+
* [[`65062b3e0d`](https://github.com/nodejs/node/commit/65062b3e0d)] - **deps**: V8: cherry-pick 7ff6609a5385 (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
120
|
+
* [[`c3efc70df7`](https://github.com/nodejs/node/commit/c3efc70df7)] - **deps**: V8: cherry-pick a5cea1bfc38c (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
121
|
+
* [[`201da87bc1`](https://github.com/nodejs/node/commit/201da87bc1)] - **deps**: V8: cherry-pick 986299250e6d (Richard Lau) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
122
|
+
* [[`794ad2e016`](https://github.com/nodejs/node/commit/794ad2e016)] - **deps**: V8: backport 71e8f8bb3c26 (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
123
|
+
* [[`53cc6c8000`](https://github.com/nodejs/node/commit/53cc6c8000)] - **deps**: V8: cherry-pick 3d24b3ab8af0 (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
124
|
+
* [[`7f7cb8bfe1`](https://github.com/nodejs/node/commit/7f7cb8bfe1)] - **deps**: silence irrelevant V8 warning (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
125
|
+
* [[`16cbd8c8b6`](https://github.com/nodejs/node/commit/16cbd8c8b6)] - **deps**: silence irrelevant V8 warnings (Michaël Zasso) [#37587](https://github.com/nodejs/node/pull/37587)
|
|
126
|
+
* [[`98150e2bc6`](https://github.com/nodejs/node/commit/98150e2bc6)] - **deps**: fix V8 build issue with inline methods (Jiawen Geng) [#35415](https://github.com/nodejs/node/pull/35415)
|
|
127
|
+
* [[`3f3e167fea`](https://github.com/nodejs/node/commit/3f3e167fea)] - **deps**: make v8.h compatible with VS2015 (Joao Reis) [#32116](https://github.com/nodejs/node/pull/32116)
|
|
128
|
+
* [[`785b8990de`](https://github.com/nodejs/node/commit/785b8990de)] - **deps**: V8: forward declaration of `Rtl*FunctionTable` (Refael Ackermann) [#32116](https://github.com/nodejs/node/pull/32116)
|
|
129
|
+
* [[`38cb655f04`](https://github.com/nodejs/node/commit/38cb655f04)] - **deps**: V8: patch register-arm64.h (Refael Ackermann) [#32116](https://github.com/nodejs/node/pull/32116)
|
|
130
|
+
* [[`9082ecef66`](https://github.com/nodejs/node/commit/9082ecef66)] - **deps**: V8: un-cherry-pick bd019bd (Refael Ackermann) [#32116](https://github.com/nodejs/node/pull/32116)
|
|
131
|
+
* [[`6114198717`](https://github.com/nodejs/node/commit/6114198717)] - **(SEMVER-MINOR)** **deps**: update V8 to 9.2.230.21 (Michaël Zasso) [#39470](https://github.com/nodejs/node/pull/39470)
|
|
132
|
+
* [[`89796d0c7f`](https://github.com/nodejs/node/commit/89796d0c7f)] - **deps**: bump HdrHistogram\_C to 0.11.2 (Matteo Collina) [#39462](https://github.com/nodejs/node/pull/39462)
|
|
133
|
+
* [[`9dd232c42b`](https://github.com/nodejs/node/commit/9dd232c42b)] - **deps**: update to cjs-module-lexer@1.2.2 (Guy Bedford) [#39402](https://github.com/nodejs/node/pull/39402)
|
|
134
|
+
* [[`626eb07fda`](https://github.com/nodejs/node/commit/626eb07fda)] - **deps**: extract gtest source files to deps/googletest (legendecas) [#39386](https://github.com/nodejs/node/pull/39386)
|
|
135
|
+
* [[`487c45ffd9`](https://github.com/nodejs/node/commit/487c45ffd9)] - **doc**: move lball@redhat.com to emeritus (Lance Ball) [#39501](https://github.com/nodejs/node/pull/39501)
|
|
136
|
+
* [[`5f84f47e13`](https://github.com/nodejs/node/commit/5f84f47e13)] - **doc**: update AUTHORS (Rich Trott) [#39488](https://github.com/nodejs/node/pull/39488)
|
|
137
|
+
* [[`1d27ae1514`](https://github.com/nodejs/node/commit/1d27ae1514)] - **doc**: update strategic initiative champion (Rich Trott) [#39487](https://github.com/nodejs/node/pull/39487)
|
|
138
|
+
* [[`e552b1a791`](https://github.com/nodejs/node/commit/e552b1a791)] - **doc**: improve node.js+fips instructions (Benjamin Mayr) [#39390](https://github.com/nodejs/node/pull/39390)
|
|
139
|
+
* [[`aa1dfb3111`](https://github.com/nodejs/node/commit/aa1dfb3111)] - **doc**: simplify unnecessarily specific .mailmap entries (Rich Trott) [#39430](https://github.com/nodejs/node/pull/39430)
|
|
140
|
+
* [[`ae69656c61`](https://github.com/nodejs/node/commit/ae69656c61)] - **doc**: update checkbox label in backporting guide (Darshan Sen) [#39420](https://github.com/nodejs/node/pull/39420)
|
|
141
|
+
* [[`4fd8db687d`](https://github.com/nodejs/node/commit/4fd8db687d)] - **doc**: remove \_Addenda\_ from headers (Rich Trott) [#39427](https://github.com/nodejs/node/pull/39427)
|
|
142
|
+
* [[`cefd2fb1e4`](https://github.com/nodejs/node/commit/cefd2fb1e4)] - **doc**: simplify .mailmap file (Rich Trott) [#39418](https://github.com/nodejs/node/pull/39418)
|
|
143
|
+
* [[`ade2eed9a6`](https://github.com/nodejs/node/commit/ade2eed9a6)] - **doc**: fix broken internal link in http.md (Rich Trott) [#39425](https://github.com/nodejs/node/pull/39425)
|
|
144
|
+
* [[`5fdfcc069f`](https://github.com/nodejs/node/commit/5fdfcc069f)] - **doc**: remove outdated step in onboarding exercise (Rich Trott) [#39410](https://github.com/nodejs/node/pull/39410)
|
|
145
|
+
* [[`94706c7012`](https://github.com/nodejs/node/commit/94706c7012)] - **doc**: revise strategic initiatives text (Rich Trott) [#39417](https://github.com/nodejs/node/pull/39417)
|
|
146
|
+
* [[`9932e3589c`](https://github.com/nodejs/node/commit/9932e3589c)] - **doc**: remove typo (extra ' character) (Nikita Rykov) [#39414](https://github.com/nodejs/node/pull/39414)
|
|
147
|
+
* [[`2b92b4ea2d`](https://github.com/nodejs/node/commit/2b92b4ea2d)] - **doc**: update mailmap and AUTHORS (Rich Trott) [#39393](https://github.com/nodejs/node/pull/39393)
|
|
148
|
+
* [[`6d6396594b`](https://github.com/nodejs/node/commit/6d6396594b)] - **doc**: use a details tag for completed initiatves (Rich Trott) [#39416](https://github.com/nodejs/node/pull/39416)
|
|
149
|
+
* [[`ac43e3331c`](https://github.com/nodejs/node/commit/ac43e3331c)] - **doc**: update commit-queue.md to indicate GitHub Actions are checked (Rich Trott) [#39411](https://github.com/nodejs/node/pull/39411)
|
|
150
|
+
* [[`75130c94d1`](https://github.com/nodejs/node/commit/75130c94d1)] - **doc**: use \_pull request\_ instead of \_PR\_ in onboarding doc (Rich Trott) [#39409](https://github.com/nodejs/node/pull/39409)
|
|
151
|
+
* [[`20bb3f6df0`](https://github.com/nodejs/node/commit/20bb3f6df0)] - **doc**: add strategic initiatives from TSC repo (Rich Trott) [#39394](https://github.com/nodejs/node/pull/39394)
|
|
152
|
+
* [[`6979313abb`](https://github.com/nodejs/node/commit/6979313abb)] - **doc**: standardize on \_pull request\_ (Rich Trott) [#39384](https://github.com/nodejs/node/pull/39384)
|
|
153
|
+
* [[`20124cc275`](https://github.com/nodejs/node/commit/20124cc275)] - **doc**: make minor edits to pull request text (Rich Trott) [#39383](https://github.com/nodejs/node/pull/39383)
|
|
154
|
+
* [[`11482f02cf`](https://github.com/nodejs/node/commit/11482f02cf)] - **doc**: add docker-node and build-wg issue contents (Daniel Bevenius) [#39215](https://github.com/nodejs/node/pull/39215)
|
|
155
|
+
* [[`c535956b6e`](https://github.com/nodejs/node/commit/c535956b6e)] - **doc**: add instructions for core vuln files (Daniel Bevenius) [#39220](https://github.com/nodejs/node/pull/39220)
|
|
156
|
+
* [[`353a8bb27b`](https://github.com/nodejs/node/commit/353a8bb27b)] - **doc**: standardize on not capitalizing \_collaborator\_ (Rich Trott) [#39379](https://github.com/nodejs/node/pull/39379)
|
|
157
|
+
* [[`9b15e5c155`](https://github.com/nodejs/node/commit/9b15e5c155)] - **doc**: update mailmap and deduplicate AUTHORS entry (Rich Trott) [#39391](https://github.com/nodejs/node/pull/39391)
|
|
158
|
+
* [[`e44ccd9aad`](https://github.com/nodejs/node/commit/e44ccd9aad)] - **doc**: update AUTHORS (Rich Trott) [#39367](https://github.com/nodejs/node/pull/39367)
|
|
159
|
+
* [[`39e6536a87`](https://github.com/nodejs/node/commit/39e6536a87)] - **doc**: move jdalton to emeritus (Rich Trott) [#39380](https://github.com/nodejs/node/pull/39380)
|
|
160
|
+
* [[`bbff5a9e47`](https://github.com/nodejs/node/commit/bbff5a9e47)] - **doc**: edit guide on pull requests (Rich Trott) [#39359](https://github.com/nodejs/node/pull/39359)
|
|
161
|
+
* [[`902ef9aca0`](https://github.com/nodejs/node/commit/902ef9aca0)] - **doc,meta**: update email addresses for misterdjules (Rich Trott) [#39433](https://github.com/nodejs/node/pull/39433)
|
|
162
|
+
* [[`cc7b61721c`](https://github.com/nodejs/node/commit/cc7b61721c)] - **doc,tools**: remove `checkLinks.mjs` (Antoine du Hamel) [#39206](https://github.com/nodejs/node/pull/39206)
|
|
163
|
+
* [[`e2fd015cda`](https://github.com/nodejs/node/commit/e2fd015cda)] - **domain**: do not add domain to promise from other context (Stephen Belanger) [#39135](https://github.com/nodejs/node/pull/39135)
|
|
164
|
+
* [[`93eff3f5a6`](https://github.com/nodejs/node/commit/93eff3f5a6)] - **esm**: refine ERR\_REQUIRE\_ESM errors (Guy Bedford) [#39175](https://github.com/nodejs/node/pull/39175)
|
|
165
|
+
* [[`1fb0954202`](https://github.com/nodejs/node/commit/1fb0954202)] - **events**: allow an event to be dispatched multiple times (Luigi Pinca) [#39395](https://github.com/nodejs/node/pull/39395)
|
|
166
|
+
* [[`6f2989c346`](https://github.com/nodejs/node/commit/6f2989c346)] - **events**: allow the options argument to be null (Luigi Pinca) [#39486](https://github.com/nodejs/node/pull/39486)
|
|
167
|
+
* [[`72ad6d3f27`](https://github.com/nodejs/node/commit/72ad6d3f27)] - **fs**: check closing\_ in FileHandle::Close (James M Snell) [#39472](https://github.com/nodejs/node/pull/39472)
|
|
168
|
+
* [[`8b58e574ba`](https://github.com/nodejs/node/commit/8b58e574ba)] - **fs**: fix FileHandle::ClosePromise to return persisted Promise (James M Snell) [#39331](https://github.com/nodejs/node/pull/39331)
|
|
169
|
+
* [[`9d950a0956`](https://github.com/nodejs/node/commit/9d950a0956)] - **http2**: on receiving rst\_stream with cancel code add it to pending list (Akshay K) [#39423](https://github.com/nodejs/node/pull/39423)
|
|
170
|
+
* [[`19e9accf91`](https://github.com/nodejs/node/commit/19e9accf91)] - **inspector**: mark as stable (Gireesh Punathil) [#37748](https://github.com/nodejs/node/pull/37748)
|
|
171
|
+
* [[`e4331cd43d`](https://github.com/nodejs/node/commit/e4331cd43d)] - **lib**: comment explaining special-case handling of promises (Stephen Belanger) [#39135](https://github.com/nodejs/node/pull/39135)
|
|
172
|
+
* [[`0a47f5fc54`](https://github.com/nodejs/node/commit/0a47f5fc54)] - **meta**: update collaborator email in README (Rich Trott) [#39510](https://github.com/nodejs/node/pull/39510)
|
|
173
|
+
* [[`65020110e8`](https://github.com/nodejs/node/commit/65020110e8)] - **meta**: remove unneeded .mailmap entry (Rich Trott) [#39512](https://github.com/nodejs/node/pull/39512)
|
|
174
|
+
* [[`864ef11be8`](https://github.com/nodejs/node/commit/864ef11be8)] - **meta**: update email address for collaborator (Rich Trott) [#39511](https://github.com/nodejs/node/pull/39511)
|
|
175
|
+
* [[`d3f58cb650`](https://github.com/nodejs/node/commit/d3f58cb650)] - **meta**: align collaborator name in .mailmap/AUTHORS with README (Rich Trott) [#39489](https://github.com/nodejs/node/pull/39489)
|
|
176
|
+
* [[`5f9b2187a1`](https://github.com/nodejs/node/commit/5f9b2187a1)] - **meta**: align email address in README/.mailmap/AUTHORS (Rich Trott) [#39503](https://github.com/nodejs/node/pull/39503)
|
|
177
|
+
* [[`9fbe3f6b49`](https://github.com/nodejs/node/commit/9fbe3f6b49)] - **meta**: revise .mailmap for README consistency (Rich Trott) [#39457](https://github.com/nodejs/node/pull/39457)
|
|
178
|
+
* [[`f6fbb38924`](https://github.com/nodejs/node/commit/f6fbb38924)] - **meta**: alphabetize .mailmap file (Rich Trott) [#39434](https://github.com/nodejs/node/pull/39434)
|
|
179
|
+
* [[`dc9c6aa428`](https://github.com/nodejs/node/commit/dc9c6aa428)] - **meta**: align collaborator email in .mailmap/AUTHORS with README (Rich Trott) [#39478](https://github.com/nodejs/node/pull/39478)
|
|
180
|
+
* [[`febeb0df16`](https://github.com/nodejs/node/commit/febeb0df16)] - **meta**: update AUTHORS (Rich Trott) [#39461](https://github.com/nodejs/node/pull/39461)
|
|
181
|
+
* [[`d059ed9242`](https://github.com/nodejs/node/commit/d059ed9242)] - **meta**: add .mailmap entry for new email for existing contributor (Rich Trott) [#39431](https://github.com/nodejs/node/pull/39431)
|
|
182
|
+
* [[`cdf7251370`](https://github.com/nodejs/node/commit/cdf7251370)] - **process**: add api to enable source-maps programmatically (legendecas) [#39085](https://github.com/nodejs/node/pull/39085)
|
|
183
|
+
* [[`eccc9a6578`](https://github.com/nodejs/node/commit/eccc9a6578)] - **punycode**: add pending deprecation (Antoine du Hamel) [#38444](https://github.com/nodejs/node/pull/38444)
|
|
184
|
+
* [[`a082a705b3`](https://github.com/nodejs/node/commit/a082a705b3)] - **(SEMVER-MINOR)** **repl**: enable --experimental-repl-await /w opt-out (hemanth.hm) [#34733](https://github.com/nodejs/node/pull/34733)
|
|
185
|
+
* [[`b230ac12d9`](https://github.com/nodejs/node/commit/b230ac12d9)] - **src**: stop using deprecated v8::ApiObject (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
186
|
+
* [[`929205e6b9`](https://github.com/nodejs/node/commit/929205e6b9)] - **src**: use non-deprecated Symbol::Description (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
187
|
+
* [[`42ff6d952a`](https://github.com/nodejs/node/commit/42ff6d952a)] - **src**: print native module id on native module not found (legendecas) [#39460](https://github.com/nodejs/node/pull/39460)
|
|
188
|
+
* [[`f0287e52aa`](https://github.com/nodejs/node/commit/f0287e52aa)] - **src**: close HandleWraps instead of deleting them in OnGCCollect() (Anna Henningsen) [#39441](https://github.com/nodejs/node/pull/39441)
|
|
189
|
+
* [[`2cf52f8db1`](https://github.com/nodejs/node/commit/2cf52f8db1)] - **src**: set SSL\_OP\_ALLOW\_CLIENT\_RENEGOTIATION (Daniel Bevenius) [#38753](https://github.com/nodejs/node/pull/38753)
|
|
190
|
+
* [[`fc138376aa`](https://github.com/nodejs/node/commit/fc138376aa)] - **src**: remove unused guards around node-api reference (legendecas) [#38334](https://github.com/nodejs/node/pull/38334)
|
|
191
|
+
* [[`26ada4971c`](https://github.com/nodejs/node/commit/26ada4971c)] - **stream**: import internal/util/types instead (James M Snell) [#39331](https://github.com/nodejs/node/pull/39331)
|
|
192
|
+
* [[`e91053a465`](https://github.com/nodejs/node/commit/e91053a465)] - **stream**: implement TextEncoderStream and TextDecoderStream (James M Snell) [#39347](https://github.com/nodejs/node/pull/39347)
|
|
193
|
+
* [[`efe74746f0`](https://github.com/nodejs/node/commit/efe74746f0)] - **stream**: fixup property definition to avoid prototype polution (James M Snell) [#39371](https://github.com/nodejs/node/pull/39371)
|
|
194
|
+
* [[`4709da0372`](https://github.com/nodejs/node/commit/4709da0372)] - **test**: ensure microtask queues are not automatically drained (Jochen Eisinger) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
195
|
+
* [[`86ca9a8a80`](https://github.com/nodejs/node/commit/86ca9a8a80)] - **test**: remove test-debug-args (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
196
|
+
* [[`bbcd651cfd`](https://github.com/nodejs/node/commit/bbcd651cfd)] - **test**: update trace events test expectations (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
197
|
+
* [[`039f64f249`](https://github.com/nodejs/node/commit/039f64f249)] - **test**: fix WASI link test (Richard Lau) [#39485](https://github.com/nodejs/node/pull/39485)
|
|
198
|
+
* [[`b1d38ddc8a`](https://github.com/nodejs/node/commit/b1d38ddc8a)] - **test**: update OpenSSL3 error messages for beta-1 (Daniel Bevenius) [#39437](https://github.com/nodejs/node/pull/39437)
|
|
199
|
+
* [[`db4f802fba`](https://github.com/nodejs/node/commit/db4f802fba)] - ***Revert*** "**test**: skip tests for openssl-3.0.0-alpha15" (Daniel Bevenius) [#39437](https://github.com/nodejs/node/pull/39437)
|
|
200
|
+
* [[`a30d021b94`](https://github.com/nodejs/node/commit/a30d021b94)] - **test**: add test for WebSocket secret verification in debugger (Rich Trott) [#39357](https://github.com/nodejs/node/pull/39357)
|
|
201
|
+
* [[`04355afd24`](https://github.com/nodejs/node/commit/04355afd24)] - **test**: add NumberFormat resolvedOptions test (Richard Lau) [#39401](https://github.com/nodejs/node/pull/39401)
|
|
202
|
+
* [[`d0fb02c26a`](https://github.com/nodejs/node/commit/d0fb02c26a)] - **test**: put common lint exceptions into config file (Rich Trott) [#39358](https://github.com/nodejs/node/pull/39358)
|
|
203
|
+
* [[`259d091366`](https://github.com/nodejs/node/commit/259d091366)] - **test**: mark test-domain-error-types flaky (James M Snell) [#39369](https://github.com/nodejs/node/pull/39369)
|
|
204
|
+
* [[`5517769472`](https://github.com/nodejs/node/commit/5517769472)] - **tools**: fetch googletest dependency for V8 CI (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
205
|
+
* [[`5fe74aa403`](https://github.com/nodejs/node/commit/5fe74aa403)] - **tools**: update V8 gypfiles for 9.2 (Michaël Zasso) [#38990](https://github.com/nodejs/node/pull/38990)
|
|
206
|
+
* [[`e58cf4e44c`](https://github.com/nodejs/node/commit/e58cf4e44c)] - **tools**: flag README/mailmap mismatches in find-inactive-collaborators (Rich Trott) [#39477](https://github.com/nodejs/node/pull/39477)
|
|
207
|
+
* [[`0a46e66253`](https://github.com/nodejs/node/commit/0a46e66253)] - **tools**: use mailmap for find-inactive-collaborators (Rich Trott) [#39432](https://github.com/nodejs/node/pull/39432)
|
|
208
|
+
* [[`7570f998df`](https://github.com/nodejs/node/commit/7570f998df)] - **tools**: email matchin is case insensitive for .mailmap (Rich Trott) [#39430](https://github.com/nodejs/node/pull/39430)
|
|
209
|
+
* [[`5c11a0279d`](https://github.com/nodejs/node/commit/5c11a0279d)] - **tools**: make internal link checker more robust (Rich Trott) [#39429](https://github.com/nodejs/node/pull/39429)
|
|
210
|
+
* [[`4c32aa02db`](https://github.com/nodejs/node/commit/4c32aa02db)] - **tools**: added remark-frontmatter (Ben Halverson) [#38717](https://github.com/nodejs/node/pull/38717)
|
|
211
|
+
* [[`c6a7c3d00d`](https://github.com/nodejs/node/commit/c6a7c3d00d)] - **tools**: fix broken link hash (Rich Trott) [#39426](https://github.com/nodejs/node/pull/39426)
|
|
212
|
+
* [[`0f1d51578e`](https://github.com/nodejs/node/commit/0f1d51578e)] - **tools**: change commit fetch limiting in find-inactive-collaborators (Rich Trott) [#39362](https://github.com/nodejs/node/pull/39362)
|
|
213
|
+
* [[`e5d64473e8`](https://github.com/nodejs/node/commit/e5d64473e8)] - **tools**: use Node.js 16.x for GitHub workflow (Rich Trott) [#39362](https://github.com/nodejs/node/pull/39362)
|
|
214
|
+
* [[`68fd6d5282`](https://github.com/nodejs/node/commit/68fd6d5282)] - **url**: prevent pathname setter from erasing path of path-only URLs (Darshan Sen) [#39060](https://github.com/nodejs/node/pull/39060)
|
|
215
|
+
|
|
43
216
|
<a id="16.5.0"></a>
|
|
44
217
|
## 2021-07-14, Version 16.5.0 (Current), @targos
|
|
45
218
|
|
package/LICENSE
CHANGED
|
@@ -1251,7 +1251,7 @@ The externally maintained libraries used by Node.js are:
|
|
|
1251
1251
|
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
1252
1252
|
"""
|
|
1253
1253
|
|
|
1254
|
-
- gtest, located at
|
|
1254
|
+
- gtest, located at deps/googletest, is licensed as follows:
|
|
1255
1255
|
"""
|
|
1256
1256
|
Copyright 2008, Google Inc.
|
|
1257
1257
|
All rights reserved.
|
package/README.md
CHANGED
|
@@ -144,7 +144,7 @@ For information on reporting security vulnerabilities in Node.js, see
|
|
|
144
144
|
|
|
145
145
|
* [Contributing to the project][]
|
|
146
146
|
* [Working Groups][]
|
|
147
|
-
* [Strategic
|
|
147
|
+
* [Strategic initiatives][]
|
|
148
148
|
* [Technical values and prioritization][]
|
|
149
149
|
|
|
150
150
|
## Current project team members
|
|
@@ -219,7 +219,7 @@ For information about the governance of the Node.js project, see
|
|
|
219
219
|
* [gibfahn](https://github.com/gibfahn) -
|
|
220
220
|
**Gibson Fahnestock** <gibfahn@gmail.com> (he/him)
|
|
221
221
|
* [indutny](https://github.com/indutny) -
|
|
222
|
-
**Fedor Indutny** <fedor
|
|
222
|
+
**Fedor Indutny** <fedor@indutny.com>
|
|
223
223
|
* [isaacs](https://github.com/isaacs) -
|
|
224
224
|
**Isaac Z. Schlueter** <i@izs.me>
|
|
225
225
|
* [joshgav](https://github.com/joshgav) -
|
|
@@ -342,13 +342,11 @@ For information about the governance of the Node.js project, see
|
|
|
342
342
|
* [iansu](https://github.com/iansu) -
|
|
343
343
|
**Ian Sutherland** <ian@iansutherland.ca>
|
|
344
344
|
* [indutny](https://github.com/indutny) -
|
|
345
|
-
**Fedor Indutny** <fedor
|
|
345
|
+
**Fedor Indutny** <fedor@indutny.com>
|
|
346
346
|
* [JacksonTian](https://github.com/JacksonTian) -
|
|
347
347
|
**Jackson Tian** <shyvo1987@gmail.com>
|
|
348
348
|
* [jasnell](https://github.com/jasnell) -
|
|
349
349
|
**James M Snell** <jasnell@gmail.com> (he/him)
|
|
350
|
-
* [jdalton](https://github.com/jdalton) -
|
|
351
|
-
**John-David Dalton** <john.david.dalton@gmail.com>
|
|
352
350
|
* [jkrems](https://github.com/jkrems) -
|
|
353
351
|
**Jan Krems** <jan.krems@gmail.com> (he/him)
|
|
354
352
|
* [joaocgreis](https://github.com/joaocgreis) -
|
|
@@ -359,8 +357,6 @@ For information about the governance of the Node.js project, see
|
|
|
359
357
|
**Juan José Arboleda** <soyjuanarbol@gmail.com> (he/him)
|
|
360
358
|
* [JungMinu](https://github.com/JungMinu) -
|
|
361
359
|
**Minwoo Jung** <nodecorelab@gmail.com> (he/him)
|
|
362
|
-
* [lance](https://github.com/lance) -
|
|
363
|
-
**Lance Ball** <lball@redhat.com> (he/him)
|
|
364
360
|
* [legendecas](https://github.com/legendecas) -
|
|
365
361
|
**Chengzhong Wu** <legendecas@gmail.com> (he/him)
|
|
366
362
|
* [Leko](https://github.com/Leko) -
|
|
@@ -384,7 +380,7 @@ For information about the governance of the Node.js project, see
|
|
|
384
380
|
* [mildsunrise](https://github.com/mildsunrise) -
|
|
385
381
|
**Alba Mendez** <me@alba.sh> (she/her)
|
|
386
382
|
* [misterdjules](https://github.com/misterdjules) -
|
|
387
|
-
**Julien Gilli** <jgilli@
|
|
383
|
+
**Julien Gilli** <jgilli@netflix.com>
|
|
388
384
|
* [mmarchini](https://github.com/mmarchini) -
|
|
389
385
|
**Mary Marchini** <oss@mmarchini.me> (she/her)
|
|
390
386
|
* [mscdex](https://github.com/mscdex) -
|
|
@@ -420,7 +416,7 @@ For information about the governance of the Node.js project, see
|
|
|
420
416
|
* [ryzokuken](https://github.com/ryzokuken) -
|
|
421
417
|
**Ujjwal Sharma** <ryzokuken@disroot.org> (he/him)
|
|
422
418
|
* [saghul](https://github.com/saghul) -
|
|
423
|
-
**Saúl Ibarra Corretgé** <saghul
|
|
419
|
+
**Saúl Ibarra Corretgé** <s@saghul.net>
|
|
424
420
|
* [santigimeno](https://github.com/santigimeno) -
|
|
425
421
|
**Santiago Gimeno** <santiago.gimeno@gmail.com>
|
|
426
422
|
* [seishun](https://github.com/seishun) -
|
|
@@ -516,6 +512,8 @@ For information about the governance of the Node.js project, see
|
|
|
516
512
|
**Jason Ginchereau** <jasongin@microsoft.com>
|
|
517
513
|
* [jbergstroem](https://github.com/jbergstroem) -
|
|
518
514
|
**Johan Bergström** <bugs@bergstroem.nu>
|
|
515
|
+
* [jdalton](https://github.com/jdalton) -
|
|
516
|
+
**John-David Dalton** <john.david.dalton@gmail.com>
|
|
519
517
|
* [jhamhader](https://github.com/jhamhader) -
|
|
520
518
|
**Yuval Brik** <yuval@brik.org.il>
|
|
521
519
|
* [joshgav](https://github.com/joshgav) -
|
|
@@ -526,6 +524,8 @@ For information about the governance of the Node.js project, see
|
|
|
526
524
|
**Kyle Farnung** <kfarnung@microsoft.com> (he/him)
|
|
527
525
|
* [kunalspathak](https://github.com/kunalspathak) -
|
|
528
526
|
**Kunal Pathak** <kunal.pathak@microsoft.com>
|
|
527
|
+
* [lance](https://github.com/lance) -
|
|
528
|
+
**Lance Ball** <lball@redhat.com> (he/him)
|
|
529
529
|
* [lucamaraschi](https://github.com/lucamaraschi) -
|
|
530
530
|
**Luca Maraschi** <luca.maraschi@gmail.com> (he/him)
|
|
531
531
|
* [lxe](https://github.com/lxe) -
|
|
@@ -704,6 +704,6 @@ license text.
|
|
|
704
704
|
[Contributing to the project]: CONTRIBUTING.md
|
|
705
705
|
[Node.js Website]: https://nodejs.org/
|
|
706
706
|
[OpenJS Foundation]: https://openjsf.org/
|
|
707
|
-
[Strategic
|
|
707
|
+
[Strategic initiatives]: doc/guides/strategic-initiatives.md
|
|
708
708
|
[Technical values and prioritization]: doc/guides/technical-values.md
|
|
709
709
|
[Working Groups]: https://github.com/nodejs/TSC/blob/HEAD/WORKING_GROUPS.md
|
package/bin/node
CHANGED
|
Binary file
|
package/include/node/common.gypi
CHANGED
package/include/node/config.gypi
CHANGED
|
@@ -28,6 +28,261 @@
|
|
|
28
28
|
'node_debug_lib': 'false',
|
|
29
29
|
'node_enable_d8': 'false',
|
|
30
30
|
'node_install_npm': 'true',
|
|
31
|
+
'node_library_files': [ 'lib/constants.js',
|
|
32
|
+
'lib/net.js',
|
|
33
|
+
'lib/trace_events.js',
|
|
34
|
+
'lib/events.js',
|
|
35
|
+
'lib/repl.js',
|
|
36
|
+
'lib/util.js',
|
|
37
|
+
'lib/dgram.js',
|
|
38
|
+
'lib/vm.js',
|
|
39
|
+
'lib/stream.js',
|
|
40
|
+
'lib/child_process.js',
|
|
41
|
+
'lib/assert.js',
|
|
42
|
+
'lib/_tls_wrap.js',
|
|
43
|
+
'lib/http2.js',
|
|
44
|
+
'lib/inspector.js',
|
|
45
|
+
'lib/os.js',
|
|
46
|
+
'lib/_http_server.js',
|
|
47
|
+
'lib/console.js',
|
|
48
|
+
'lib/perf_hooks.js',
|
|
49
|
+
'lib/readline.js',
|
|
50
|
+
'lib/punycode.js',
|
|
51
|
+
'lib/_http_incoming.js',
|
|
52
|
+
'lib/https.js',
|
|
53
|
+
'lib/_stream_wrap.js',
|
|
54
|
+
'lib/domain.js',
|
|
55
|
+
'lib/dns.js',
|
|
56
|
+
'lib/_http_client.js',
|
|
57
|
+
'lib/diagnostics_channel.js',
|
|
58
|
+
'lib/tty.js',
|
|
59
|
+
'lib/_http_agent.js',
|
|
60
|
+
'lib/timers.js',
|
|
61
|
+
'lib/_http_outgoing.js',
|
|
62
|
+
'lib/querystring.js',
|
|
63
|
+
'lib/_tls_common.js',
|
|
64
|
+
'lib/module.js',
|
|
65
|
+
'lib/_stream_passthrough.js',
|
|
66
|
+
'lib/_stream_transform.js',
|
|
67
|
+
'lib/worker_threads.js',
|
|
68
|
+
'lib/sys.js',
|
|
69
|
+
'lib/_stream_duplex.js',
|
|
70
|
+
'lib/path.js',
|
|
71
|
+
'lib/_http_common.js',
|
|
72
|
+
'lib/string_decoder.js',
|
|
73
|
+
'lib/cluster.js',
|
|
74
|
+
'lib/v8.js',
|
|
75
|
+
'lib/crypto.js',
|
|
76
|
+
'lib/wasi.js',
|
|
77
|
+
'lib/_stream_readable.js',
|
|
78
|
+
'lib/zlib.js',
|
|
79
|
+
'lib/url.js',
|
|
80
|
+
'lib/tls.js',
|
|
81
|
+
'lib/_stream_writable.js',
|
|
82
|
+
'lib/async_hooks.js',
|
|
83
|
+
'lib/process.js',
|
|
84
|
+
'lib/http.js',
|
|
85
|
+
'lib/buffer.js',
|
|
86
|
+
'lib/fs.js',
|
|
87
|
+
'lib/util/types.js',
|
|
88
|
+
'lib/timers/promises.js',
|
|
89
|
+
'lib/path/win32.js',
|
|
90
|
+
'lib/path/posix.js',
|
|
91
|
+
'lib/stream/promises.js',
|
|
92
|
+
'lib/stream/web.js',
|
|
93
|
+
'lib/internal/constants.js',
|
|
94
|
+
'lib/internal/abort_controller.js',
|
|
95
|
+
'lib/internal/net.js',
|
|
96
|
+
'lib/internal/v8_prof_processor.js',
|
|
97
|
+
'lib/internal/event_target.js',
|
|
98
|
+
'lib/internal/inspector_async_hook.js',
|
|
99
|
+
'lib/internal/validators.js',
|
|
100
|
+
'lib/internal/linkedlist.js',
|
|
101
|
+
'lib/internal/cli_table.js',
|
|
102
|
+
'lib/internal/repl.js',
|
|
103
|
+
'lib/internal/util.js',
|
|
104
|
+
'lib/internal/histogram.js',
|
|
105
|
+
'lib/internal/error_serdes.js',
|
|
106
|
+
'lib/internal/dgram.js',
|
|
107
|
+
'lib/internal/child_process.js',
|
|
108
|
+
'lib/internal/assert.js',
|
|
109
|
+
'lib/internal/fixed_queue.js',
|
|
110
|
+
'lib/internal/blocklist.js',
|
|
111
|
+
'lib/internal/v8_prof_polyfill.js',
|
|
112
|
+
'lib/internal/options.js',
|
|
113
|
+
'lib/internal/worker.js',
|
|
114
|
+
'lib/internal/dtrace.js',
|
|
115
|
+
'lib/internal/idna.js',
|
|
116
|
+
'lib/internal/watchdog.js',
|
|
117
|
+
'lib/internal/encoding.js',
|
|
118
|
+
'lib/internal/tty.js',
|
|
119
|
+
'lib/internal/freeze_intrinsics.js',
|
|
120
|
+
'lib/internal/timers.js',
|
|
121
|
+
'lib/internal/heap_utils.js',
|
|
122
|
+
'lib/internal/querystring.js',
|
|
123
|
+
'lib/internal/js_stream_socket.js',
|
|
124
|
+
'lib/internal/errors.js',
|
|
125
|
+
'lib/internal/priority_queue.js',
|
|
126
|
+
'lib/internal/freelist.js',
|
|
127
|
+
'lib/internal/blob.js',
|
|
128
|
+
'lib/internal/socket_list.js',
|
|
129
|
+
'lib/internal/socketaddress.js',
|
|
130
|
+
'lib/internal/stream_base_commons.js',
|
|
131
|
+
'lib/internal/url.js',
|
|
132
|
+
'lib/internal/async_hooks.js',
|
|
133
|
+
'lib/internal/http.js',
|
|
134
|
+
'lib/internal/buffer.js',
|
|
135
|
+
'lib/internal/trace_events_async_hooks.js',
|
|
136
|
+
'lib/internal/crypto/sig.js',
|
|
137
|
+
'lib/internal/crypto/rsa.js',
|
|
138
|
+
'lib/internal/crypto/aes.js',
|
|
139
|
+
'lib/internal/crypto/util.js',
|
|
140
|
+
'lib/internal/crypto/scrypt.js',
|
|
141
|
+
'lib/internal/crypto/random.js',
|
|
142
|
+
'lib/internal/crypto/keys.js',
|
|
143
|
+
'lib/internal/crypto/x509.js',
|
|
144
|
+
'lib/internal/crypto/certificate.js',
|
|
145
|
+
'lib/internal/crypto/ec.js',
|
|
146
|
+
'lib/internal/crypto/keygen.js',
|
|
147
|
+
'lib/internal/crypto/mac.js',
|
|
148
|
+
'lib/internal/crypto/diffiehellman.js',
|
|
149
|
+
'lib/internal/crypto/hkdf.js',
|
|
150
|
+
'lib/internal/crypto/cipher.js',
|
|
151
|
+
'lib/internal/crypto/hash.js',
|
|
152
|
+
'lib/internal/crypto/pbkdf2.js',
|
|
153
|
+
'lib/internal/crypto/webcrypto.js',
|
|
154
|
+
'lib/internal/crypto/dsa.js',
|
|
155
|
+
'lib/internal/crypto/hashnames.js',
|
|
156
|
+
'lib/internal/cluster/shared_handle.js',
|
|
157
|
+
'lib/internal/cluster/round_robin_handle.js',
|
|
158
|
+
'lib/internal/cluster/worker.js',
|
|
159
|
+
'lib/internal/cluster/primary.js',
|
|
160
|
+
'lib/internal/cluster/utils.js',
|
|
161
|
+
'lib/internal/cluster/child.js',
|
|
162
|
+
'lib/internal/webstreams/util.js',
|
|
163
|
+
'lib/internal/webstreams/writablestream.js',
|
|
164
|
+
'lib/internal/webstreams/readablestream.js',
|
|
165
|
+
'lib/internal/webstreams/queuingstrategies.js',
|
|
166
|
+
'lib/internal/webstreams/encoding.js',
|
|
167
|
+
'lib/internal/webstreams/transformstream.js',
|
|
168
|
+
'lib/internal/webstreams/transfer.js',
|
|
169
|
+
'lib/internal/bootstrap/loaders.js',
|
|
170
|
+
'lib/internal/bootstrap/pre_execution.js',
|
|
171
|
+
'lib/internal/bootstrap/node.js',
|
|
172
|
+
'lib/internal/bootstrap/environment.js',
|
|
173
|
+
'lib/internal/bootstrap/switches/does_not_own_process_state.js',
|
|
174
|
+
'lib/internal/bootstrap/switches/is_not_main_thread.js',
|
|
175
|
+
'lib/internal/bootstrap/switches/does_own_process_state.js',
|
|
176
|
+
'lib/internal/bootstrap/switches/is_main_thread.js',
|
|
177
|
+
'lib/internal/test/binding.js',
|
|
178
|
+
'lib/internal/test/transfer.js',
|
|
179
|
+
'lib/internal/util/types.js',
|
|
180
|
+
'lib/internal/util/inspector.js',
|
|
181
|
+
'lib/internal/util/comparisons.js',
|
|
182
|
+
'lib/internal/util/debuglog.js',
|
|
183
|
+
'lib/internal/util/inspect.js',
|
|
184
|
+
'lib/internal/util/iterable_weak_map.js',
|
|
185
|
+
'lib/internal/streams/add-abort-signal.js',
|
|
186
|
+
'lib/internal/streams/destroy.js',
|
|
187
|
+
'lib/internal/streams/legacy.js',
|
|
188
|
+
'lib/internal/streams/passthrough.js',
|
|
189
|
+
'lib/internal/streams/readable.js',
|
|
190
|
+
'lib/internal/streams/from.js',
|
|
191
|
+
'lib/internal/streams/writable.js',
|
|
192
|
+
'lib/internal/streams/state.js',
|
|
193
|
+
'lib/internal/streams/buffer_list.js',
|
|
194
|
+
'lib/internal/streams/end-of-stream.js',
|
|
195
|
+
'lib/internal/streams/utils.js',
|
|
196
|
+
'lib/internal/streams/transform.js',
|
|
197
|
+
'lib/internal/streams/lazy_transform.js',
|
|
198
|
+
'lib/internal/streams/duplex.js',
|
|
199
|
+
'lib/internal/streams/pipeline.js',
|
|
200
|
+
'lib/internal/readline/utils.js',
|
|
201
|
+
'lib/internal/readline/emitKeypressEvents.js',
|
|
202
|
+
'lib/internal/readline/callbacks.js',
|
|
203
|
+
'lib/internal/repl/history.js',
|
|
204
|
+
'lib/internal/repl/utils.js',
|
|
205
|
+
'lib/internal/repl/await.js',
|
|
206
|
+
'lib/internal/legacy/processbinding.js',
|
|
207
|
+
'lib/internal/assert/calltracker.js',
|
|
208
|
+
'lib/internal/assert/assertion_error.js',
|
|
209
|
+
'lib/internal/http2/util.js',
|
|
210
|
+
'lib/internal/http2/core.js',
|
|
211
|
+
'lib/internal/http2/compat.js',
|
|
212
|
+
'lib/internal/per_context/messageport.js',
|
|
213
|
+
'lib/internal/per_context/primordials.js',
|
|
214
|
+
'lib/internal/per_context/domexception.js',
|
|
215
|
+
'lib/internal/vm/module.js',
|
|
216
|
+
'lib/internal/tls/secure-pair.js',
|
|
217
|
+
'lib/internal/tls/parse-cert-string.js',
|
|
218
|
+
'lib/internal/tls/secure-context.js',
|
|
219
|
+
'lib/internal/child_process/serialization.js',
|
|
220
|
+
'lib/internal/debugger/inspect_repl.js',
|
|
221
|
+
'lib/internal/debugger/inspect_client.js',
|
|
222
|
+
'lib/internal/debugger/inspect.js',
|
|
223
|
+
'lib/internal/worker/io.js',
|
|
224
|
+
'lib/internal/worker/js_transferable.js',
|
|
225
|
+
'lib/internal/main/repl.js',
|
|
226
|
+
'lib/internal/main/print_help.js',
|
|
227
|
+
'lib/internal/main/eval_string.js',
|
|
228
|
+
'lib/internal/main/check_syntax.js',
|
|
229
|
+
'lib/internal/main/prof_process.js',
|
|
230
|
+
'lib/internal/main/worker_thread.js',
|
|
231
|
+
'lib/internal/main/inspect.js',
|
|
232
|
+
'lib/internal/main/eval_stdin.js',
|
|
233
|
+
'lib/internal/main/run_main_module.js',
|
|
234
|
+
'lib/internal/modules/run_main.js',
|
|
235
|
+
'lib/internal/modules/package_json_reader.js',
|
|
236
|
+
'lib/internal/modules/esm/module_job.js',
|
|
237
|
+
'lib/internal/modules/esm/get_source.js',
|
|
238
|
+
'lib/internal/modules/esm/translators.js',
|
|
239
|
+
'lib/internal/modules/esm/resolve.js',
|
|
240
|
+
'lib/internal/modules/esm/create_dynamic_module.js',
|
|
241
|
+
'lib/internal/modules/esm/module_map.js',
|
|
242
|
+
'lib/internal/modules/esm/get_format.js',
|
|
243
|
+
'lib/internal/modules/esm/transform_source.js',
|
|
244
|
+
'lib/internal/modules/esm/loader.js',
|
|
245
|
+
'lib/internal/modules/cjs/helpers.js',
|
|
246
|
+
'lib/internal/modules/cjs/loader.js',
|
|
247
|
+
'lib/internal/source_map/source_map.js',
|
|
248
|
+
'lib/internal/source_map/prepare_stack_trace.js',
|
|
249
|
+
'lib/internal/source_map/source_map_cache.js',
|
|
250
|
+
'lib/internal/dns/promises.js',
|
|
251
|
+
'lib/internal/dns/utils.js',
|
|
252
|
+
'lib/internal/fs/watchers.js',
|
|
253
|
+
'lib/internal/fs/promises.js',
|
|
254
|
+
'lib/internal/fs/read_file_context.js',
|
|
255
|
+
'lib/internal/fs/rimraf.js',
|
|
256
|
+
'lib/internal/fs/sync_write_stream.js',
|
|
257
|
+
'lib/internal/fs/dir.js',
|
|
258
|
+
'lib/internal/fs/streams.js',
|
|
259
|
+
'lib/internal/fs/utils.js',
|
|
260
|
+
'lib/internal/perf/nodetiming.js',
|
|
261
|
+
'lib/internal/perf/usertiming.js',
|
|
262
|
+
'lib/internal/perf/performance_entry.js',
|
|
263
|
+
'lib/internal/perf/performance.js',
|
|
264
|
+
'lib/internal/perf/timerify.js',
|
|
265
|
+
'lib/internal/perf/utils.js',
|
|
266
|
+
'lib/internal/perf/observe.js',
|
|
267
|
+
'lib/internal/perf/event_loop_delay.js',
|
|
268
|
+
'lib/internal/perf/event_loop_utilization.js',
|
|
269
|
+
'lib/internal/policy/manifest.js',
|
|
270
|
+
'lib/internal/policy/sri.js',
|
|
271
|
+
'lib/internal/process/task_queues.js',
|
|
272
|
+
'lib/internal/process/per_thread.js',
|
|
273
|
+
'lib/internal/process/warning.js',
|
|
274
|
+
'lib/internal/process/policy.js',
|
|
275
|
+
'lib/internal/process/promises.js',
|
|
276
|
+
'lib/internal/process/signal.js',
|
|
277
|
+
'lib/internal/process/execution.js',
|
|
278
|
+
'lib/internal/process/esm_loader.js',
|
|
279
|
+
'lib/internal/process/report.js',
|
|
280
|
+
'lib/internal/process/worker_thread_only.js',
|
|
281
|
+
'lib/internal/console/constructor.js',
|
|
282
|
+
'lib/internal/console/global.js',
|
|
283
|
+
'lib/assert/strict.js',
|
|
284
|
+
'lib/dns/promises.js',
|
|
285
|
+
'lib/fs/promises.js'],
|
|
31
286
|
'node_module_version': 93,
|
|
32
287
|
'node_no_browser_globals': 'false',
|
|
33
288
|
'node_prefix': '/',
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
#define SRC_NODE_VERSION_H_
|
|
24
24
|
|
|
25
25
|
#define NODE_MAJOR_VERSION 16
|
|
26
|
-
#define NODE_MINOR_VERSION
|
|
27
|
-
#define NODE_PATCH_VERSION
|
|
26
|
+
#define NODE_MINOR_VERSION 6
|
|
27
|
+
#define NODE_PATCH_VERSION 1
|
|
28
28
|
|
|
29
29
|
#define NODE_VERSION_IS_LTS 0
|
|
30
30
|
#define NODE_VERSION_LTS_CODENAME ""
|
|
@@ -40,6 +40,13 @@ const int kWeakHeapObjectTag = 3;
|
|
|
40
40
|
const int kHeapObjectTagSize = 2;
|
|
41
41
|
const intptr_t kHeapObjectTagMask = (1 << kHeapObjectTagSize) - 1;
|
|
42
42
|
|
|
43
|
+
// Tag information for fowarding pointers stored in object headers.
|
|
44
|
+
// 0b00 at the lowest 2 bits in the header indicates that the map word is a
|
|
45
|
+
// forwarding pointer.
|
|
46
|
+
const int kForwardingTag = 0;
|
|
47
|
+
const int kForwardingTagSize = 2;
|
|
48
|
+
const intptr_t kForwardingTagMask = (1 << kForwardingTagSize) - 1;
|
|
49
|
+
|
|
43
50
|
// Tag information for Smi.
|
|
44
51
|
const int kSmiTag = 0;
|
|
45
52
|
const int kSmiTagSize = 1;
|
|
@@ -120,23 +127,28 @@ constexpr bool HeapSandboxIsEnabled() {
|
|
|
120
127
|
|
|
121
128
|
using ExternalPointer_t = Address;
|
|
122
129
|
|
|
123
|
-
// If the heap sandbox is enabled, these tag values will be
|
|
130
|
+
// If the heap sandbox is enabled, these tag values will be ORed with the
|
|
124
131
|
// external pointers in the external pointer table to prevent use of pointers of
|
|
125
|
-
// the wrong type.
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
//
|
|
137
|
-
|
|
132
|
+
// the wrong type. When a pointer is loaded, it is ANDed with the inverse of the
|
|
133
|
+
// expected type's tag. The tags are constructed in a way that guarantees that a
|
|
134
|
+
// failed type check will result in one or more of the top bits of the pointer
|
|
135
|
+
// to be set, rendering the pointer inacessible. This construction allows
|
|
136
|
+
// performing the type check and removing GC marking bits from the pointer at
|
|
137
|
+
// the same time.
|
|
138
|
+
enum ExternalPointerTag : uint64_t {
|
|
139
|
+
kExternalPointerNullTag = 0x0000000000000000,
|
|
140
|
+
kArrayBufferBackingStoreTag = 0x00ff000000000000, // 0b000000011111111
|
|
141
|
+
kTypedArrayExternalPointerTag = 0x017f000000000000, // 0b000000101111111
|
|
142
|
+
kDataViewDataPointerTag = 0x01bf000000000000, // 0b000000110111111
|
|
143
|
+
kExternalStringResourceTag = 0x01df000000000000, // 0b000000111011111
|
|
144
|
+
kExternalStringResourceDataTag = 0x01ef000000000000, // 0b000000111101111
|
|
145
|
+
kForeignForeignAddressTag = 0x01f7000000000000, // 0b000000111110111
|
|
146
|
+
kNativeContextMicrotaskQueueTag = 0x01fb000000000000, // 0b000000111111011
|
|
147
|
+
kEmbedderDataSlotPayloadTag = 0x01fd000000000000, // 0b000000111111101
|
|
138
148
|
};
|
|
139
149
|
|
|
150
|
+
constexpr uint64_t kExternalPointerTagMask = 0xffff000000000000;
|
|
151
|
+
|
|
140
152
|
#ifdef V8_31BIT_SMIS_ON_64BIT_ARCH
|
|
141
153
|
using PlatformSmiTagging = SmiTagging<kApiInt32Size>;
|
|
142
154
|
#else
|
|
@@ -177,6 +189,14 @@ V8_EXPORT bool ShouldThrowOnError(v8::internal::Isolate* isolate);
|
|
|
177
189
|
* depend on functions and constants defined here.
|
|
178
190
|
*/
|
|
179
191
|
class Internals {
|
|
192
|
+
#ifdef V8_MAP_PACKING
|
|
193
|
+
V8_INLINE static constexpr internal::Address UnpackMapWord(
|
|
194
|
+
internal::Address mapword) {
|
|
195
|
+
// TODO(wenyuzhao): Clear header metadata.
|
|
196
|
+
return mapword ^ kMapWordXorMask;
|
|
197
|
+
}
|
|
198
|
+
#endif
|
|
199
|
+
|
|
180
200
|
public:
|
|
181
201
|
// These values match non-compiler-dependent values defined within
|
|
182
202
|
// the implementation of v8.
|
|
@@ -253,6 +273,17 @@ class Internals {
|
|
|
253
273
|
// incremental GC once the external memory reaches this limit.
|
|
254
274
|
static constexpr int kExternalAllocationSoftLimit = 64 * 1024 * 1024;
|
|
255
275
|
|
|
276
|
+
#ifdef V8_MAP_PACKING
|
|
277
|
+
static const uintptr_t kMapWordMetadataMask = 0xffffULL << 48;
|
|
278
|
+
// The lowest two bits of mapwords are always `0b10`
|
|
279
|
+
static const uintptr_t kMapWordSignature = 0b10;
|
|
280
|
+
// XORing a (non-compressed) map with this mask ensures that the two
|
|
281
|
+
// low-order bits are 0b10. The 0 at the end makes this look like a Smi,
|
|
282
|
+
// although real Smis have all lower 32 bits unset. We only rely on these
|
|
283
|
+
// values passing as Smis in very few places.
|
|
284
|
+
static const int kMapWordXorMask = 0b11;
|
|
285
|
+
#endif
|
|
286
|
+
|
|
256
287
|
V8_EXPORT static void CheckInitializedImpl(v8::Isolate* isolate);
|
|
257
288
|
V8_INLINE static void CheckInitialized(v8::Isolate* isolate) {
|
|
258
289
|
#ifdef V8_ENABLE_CHECKS
|
|
@@ -279,6 +310,9 @@ class Internals {
|
|
|
279
310
|
V8_INLINE static int GetInstanceType(const internal::Address obj) {
|
|
280
311
|
typedef internal::Address A;
|
|
281
312
|
A map = ReadTaggedPointerField(obj, kHeapObjectMapOffset);
|
|
313
|
+
#ifdef V8_MAP_PACKING
|
|
314
|
+
map = UnpackMapWord(map);
|
|
315
|
+
#endif
|
|
282
316
|
return ReadRawField<uint16_t>(map, kMapInstanceTypeOffset);
|
|
283
317
|
}
|
|
284
318
|
|
|
@@ -492,7 +492,7 @@ class V8_EXPORT HeapGraphNode {
|
|
|
492
492
|
/**
|
|
493
493
|
* An interface for exporting data from V8, using "push" model.
|
|
494
494
|
*/
|
|
495
|
-
class V8_EXPORT OutputStream {
|
|
495
|
+
class V8_EXPORT OutputStream {
|
|
496
496
|
public:
|
|
497
497
|
enum WriteResult {
|
|
498
498
|
kContinue = 0,
|
|
@@ -519,7 +519,6 @@ class V8_EXPORT OutputStream { // NOLINT
|
|
|
519
519
|
}
|
|
520
520
|
};
|
|
521
521
|
|
|
522
|
-
|
|
523
522
|
/**
|
|
524
523
|
* HeapSnapshots record the state of the JS heap at some moment.
|
|
525
524
|
*/
|
|
@@ -586,7 +585,7 @@ class V8_EXPORT HeapSnapshot {
|
|
|
586
585
|
* An interface for reporting progress and controlling long-running
|
|
587
586
|
* activities.
|
|
588
587
|
*/
|
|
589
|
-
class V8_EXPORT ActivityControl {
|
|
588
|
+
class V8_EXPORT ActivityControl {
|
|
590
589
|
public:
|
|
591
590
|
enum ControlOption {
|
|
592
591
|
kContinue = 0,
|
|
@@ -600,7 +599,6 @@ class V8_EXPORT ActivityControl { // NOLINT
|
|
|
600
599
|
virtual ControlOption ReportProgressValue(int done, int total) = 0;
|
|
601
600
|
};
|
|
602
601
|
|
|
603
|
-
|
|
604
602
|
/**
|
|
605
603
|
* AllocationProfile is a sampled profile of allocations done by the program.
|
|
606
604
|
* This is structured as a call-graph.
|
|
@@ -902,6 +900,15 @@ class V8_EXPORT HeapProfiler {
|
|
|
902
900
|
ObjectNameResolver* global_object_name_resolver = nullptr,
|
|
903
901
|
bool treat_global_objects_as_roots = true);
|
|
904
902
|
|
|
903
|
+
/**
|
|
904
|
+
* Takes a heap snapshot and returns it.
|
|
905
|
+
*/
|
|
906
|
+
const HeapSnapshot* TakeHeapSnapshotV8_92(
|
|
907
|
+
ActivityControl* control = nullptr,
|
|
908
|
+
ObjectNameResolver* global_object_name_resolver = nullptr,
|
|
909
|
+
bool treat_global_objects_as_roots = true,
|
|
910
|
+
bool capture_numeric_value = false);
|
|
911
|
+
|
|
905
912
|
/**
|
|
906
913
|
* Starts tracking of heap objects population statistics. After calling
|
|
907
914
|
* this method, all heap objects relocations done by the garbage collector
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
// NOTE these macros are used by some of the tool scripts and the build
|
|
10
10
|
// system so their names cannot be changed without changing the scripts.
|
|
11
11
|
#define V8_MAJOR_VERSION 9
|
|
12
|
-
#define V8_MINOR_VERSION
|
|
13
|
-
#define V8_BUILD_NUMBER
|
|
14
|
-
#define V8_PATCH_LEVEL
|
|
12
|
+
#define V8_MINOR_VERSION 2
|
|
13
|
+
#define V8_BUILD_NUMBER 230
|
|
14
|
+
#define V8_PATCH_LEVEL 21
|
|
15
15
|
|
|
16
16
|
// Use 1 for candidates and 0 otherwise.
|
|
17
17
|
// (Boolean macro values are not supported by all preprocessors.)
|
package/include/node/v8.h
CHANGED
|
@@ -596,7 +596,7 @@ template <class T> class PersistentBase {
|
|
|
596
596
|
*/
|
|
597
597
|
V8_INLINE uint16_t WrapperClassId() const;
|
|
598
598
|
|
|
599
|
-
PersistentBase(const PersistentBase& other) = delete;
|
|
599
|
+
PersistentBase(const PersistentBase& other) = delete;
|
|
600
600
|
void operator=(const PersistentBase&) = delete;
|
|
601
601
|
|
|
602
602
|
private:
|
|
@@ -708,7 +708,7 @@ template <class T, class M> class Persistent : public PersistentBase<T> {
|
|
|
708
708
|
return *this;
|
|
709
709
|
}
|
|
710
710
|
template <class S, class M2>
|
|
711
|
-
V8_INLINE Persistent& operator=(const Persistent<S, M2>& that) {
|
|
711
|
+
V8_INLINE Persistent& operator=(const Persistent<S, M2>& that) {
|
|
712
712
|
Copy(that);
|
|
713
713
|
return *this;
|
|
714
714
|
}
|
|
@@ -723,7 +723,7 @@ template <class T, class M> class Persistent : public PersistentBase<T> {
|
|
|
723
723
|
|
|
724
724
|
// TODO(dcarney): this is pretty useless, fix or remove
|
|
725
725
|
template <class S>
|
|
726
|
-
V8_INLINE static Persistent<T>& Cast(const Persistent<S>& that) {
|
|
726
|
+
V8_INLINE static Persistent<T>& Cast(const Persistent<S>& that) {
|
|
727
727
|
#ifdef V8_ENABLE_CHECKS
|
|
728
728
|
// If we're going to perform the type check then we have to check
|
|
729
729
|
// that the handle isn't empty before doing the checked cast.
|
|
@@ -734,7 +734,7 @@ template <class T, class M> class Persistent : public PersistentBase<T> {
|
|
|
734
734
|
|
|
735
735
|
// TODO(dcarney): this is pretty useless, fix or remove
|
|
736
736
|
template <class S>
|
|
737
|
-
V8_INLINE Persistent<S>& As() const {
|
|
737
|
+
V8_INLINE Persistent<S>& As() const {
|
|
738
738
|
return Persistent<S>::Cast(*this);
|
|
739
739
|
}
|
|
740
740
|
|
|
@@ -803,7 +803,7 @@ class Global : public PersistentBase<T> {
|
|
|
803
803
|
/**
|
|
804
804
|
* Pass allows returning uniques from functions, etc.
|
|
805
805
|
*/
|
|
806
|
-
Global Pass() { return static_cast<Global&&>(*this); }
|
|
806
|
+
Global Pass() { return static_cast<Global&&>(*this); }
|
|
807
807
|
|
|
808
808
|
/*
|
|
809
809
|
* For compatibility with Chromium's base::Bind (base::Passed).
|
|
@@ -905,8 +905,8 @@ class TracedReferenceBase {
|
|
|
905
905
|
* The exact semantics are:
|
|
906
906
|
* - Tracing garbage collections use |v8::EmbedderHeapTracer| or cppgc.
|
|
907
907
|
* - Non-tracing garbage collections refer to
|
|
908
|
-
* |v8::
|
|
909
|
-
*
|
|
908
|
+
* |v8::EmbedderRootsHandler::IsRoot()| whether the handle should
|
|
909
|
+
* be treated as root or not.
|
|
910
910
|
*
|
|
911
911
|
* Note that the base class cannot be instantiated itself. Choose from
|
|
912
912
|
* - TracedGlobal
|
|
@@ -1678,10 +1678,12 @@ class V8_EXPORT Module : public Data {
|
|
|
1678
1678
|
/**
|
|
1679
1679
|
* Evaluates the module and its dependencies.
|
|
1680
1680
|
*
|
|
1681
|
-
* If status is kInstantiated, run the module's code
|
|
1682
|
-
*
|
|
1683
|
-
*
|
|
1684
|
-
*
|
|
1681
|
+
* If status is kInstantiated, run the module's code and return a Promise
|
|
1682
|
+
* object. On success, set status to kEvaluated and resolve the Promise with
|
|
1683
|
+
* the completion value; on failure, set status to kErrored and reject the
|
|
1684
|
+
* Promise with the error.
|
|
1685
|
+
*
|
|
1686
|
+
* If IsGraphAsync() is false, the returned Promise is settled.
|
|
1685
1687
|
*/
|
|
1686
1688
|
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Evaluate(Local<Context> context);
|
|
1687
1689
|
|
|
@@ -3282,7 +3284,7 @@ class V8_EXPORT String : public Name {
|
|
|
3282
3284
|
*/
|
|
3283
3285
|
bool IsExternalOneByte() const;
|
|
3284
3286
|
|
|
3285
|
-
class V8_EXPORT ExternalStringResourceBase {
|
|
3287
|
+
class V8_EXPORT ExternalStringResourceBase {
|
|
3286
3288
|
public:
|
|
3287
3289
|
virtual ~ExternalStringResourceBase() = default;
|
|
3288
3290
|
|
|
@@ -3633,6 +3635,7 @@ class V8_EXPORT Symbol : public Name {
|
|
|
3633
3635
|
* Returns the description string of the symbol, or undefined if none.
|
|
3634
3636
|
*/
|
|
3635
3637
|
Local<Value> Description() const;
|
|
3638
|
+
Local<Value> Description(Isolate* isolate) const;
|
|
3636
3639
|
|
|
3637
3640
|
V8_DEPRECATED("Use Symbol::Description()")
|
|
3638
3641
|
Local<Value> Name() const { return Description(); }
|
|
@@ -3986,8 +3989,7 @@ class V8_EXPORT Object : public Value {
|
|
|
3986
3989
|
//
|
|
3987
3990
|
// Returns true on success.
|
|
3988
3991
|
V8_WARN_UNUSED_RESULT Maybe<bool> DefineProperty(
|
|
3989
|
-
Local<Context> context, Local<Name> key,
|
|
3990
|
-
PropertyDescriptor& descriptor); // NOLINT(runtime/references)
|
|
3992
|
+
Local<Context> context, Local<Name> key, PropertyDescriptor& descriptor);
|
|
3991
3993
|
|
|
3992
3994
|
V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,
|
|
3993
3995
|
Local<Value> key);
|
|
@@ -5364,7 +5366,7 @@ class V8_EXPORT ArrayBuffer : public Object {
|
|
|
5364
5366
|
* Note that it is unsafe to call back into V8 from any of the allocator
|
|
5365
5367
|
* functions.
|
|
5366
5368
|
*/
|
|
5367
|
-
class V8_EXPORT Allocator {
|
|
5369
|
+
class V8_EXPORT Allocator {
|
|
5368
5370
|
public:
|
|
5369
5371
|
virtual ~Allocator() = default;
|
|
5370
5372
|
|
|
@@ -6756,6 +6758,15 @@ class V8_EXPORT FunctionTemplate : public Template {
|
|
|
6756
6758
|
SideEffectType side_effect_type = SideEffectType::kHasSideEffect,
|
|
6757
6759
|
const CFunction* c_function = nullptr);
|
|
6758
6760
|
|
|
6761
|
+
/** Creates a function template for multiple overloaded fast API calls.*/
|
|
6762
|
+
static Local<FunctionTemplate> NewWithCFunctionOverloads(
|
|
6763
|
+
Isolate* isolate, FunctionCallback callback = nullptr,
|
|
6764
|
+
Local<Value> data = Local<Value>(),
|
|
6765
|
+
Local<Signature> signature = Local<Signature>(), int length = 0,
|
|
6766
|
+
ConstructorBehavior behavior = ConstructorBehavior::kAllow,
|
|
6767
|
+
SideEffectType side_effect_type = SideEffectType::kHasSideEffect,
|
|
6768
|
+
const MemorySpan<const CFunction>& c_function_overloads = {});
|
|
6769
|
+
|
|
6759
6770
|
/**
|
|
6760
6771
|
* Creates a function template backed/cached by a private property.
|
|
6761
6772
|
*/
|
|
@@ -6789,6 +6800,17 @@ class V8_EXPORT FunctionTemplate : public Template {
|
|
|
6789
6800
|
SideEffectType side_effect_type = SideEffectType::kHasSideEffect,
|
|
6790
6801
|
const CFunction* c_function = nullptr);
|
|
6791
6802
|
|
|
6803
|
+
/**
|
|
6804
|
+
* Set the call-handler callback for a FunctionTemplate. This
|
|
6805
|
+
* callback is called whenever the function created from this
|
|
6806
|
+
* FunctionTemplate is called. The 'c_function' represents a fast
|
|
6807
|
+
* API call, see the comment above the class declaration.
|
|
6808
|
+
*/
|
|
6809
|
+
void SetCallHandlerV8_92(
|
|
6810
|
+
FunctionCallback callback, Local<Value> data = Local<Value>(),
|
|
6811
|
+
SideEffectType side_effect_type = SideEffectType::kHasSideEffect,
|
|
6812
|
+
const MemorySpan<const CFunction>& c_function_overloads = {});
|
|
6813
|
+
|
|
6792
6814
|
/** Set the predefined length property for the FunctionTemplate. */
|
|
6793
6815
|
void SetLength(int length);
|
|
6794
6816
|
|
|
@@ -6848,6 +6870,15 @@ class V8_EXPORT FunctionTemplate : public Template {
|
|
|
6848
6870
|
*/
|
|
6849
6871
|
bool HasInstance(Local<Value> object);
|
|
6850
6872
|
|
|
6873
|
+
/**
|
|
6874
|
+
* Returns true if the given value is an API object that was constructed by an
|
|
6875
|
+
* instance of this function template (without checking for inheriting
|
|
6876
|
+
* function templates).
|
|
6877
|
+
*
|
|
6878
|
+
* This is an experimental feature and may still change significantly.
|
|
6879
|
+
*/
|
|
6880
|
+
bool IsLeafTemplateForApiObject(v8::Local<v8::Value> value) const;
|
|
6881
|
+
|
|
6851
6882
|
V8_INLINE static FunctionTemplate* Cast(Data* data);
|
|
6852
6883
|
|
|
6853
6884
|
private:
|
|
@@ -7281,7 +7312,7 @@ class V8_EXPORT AccessorSignature : public Data {
|
|
|
7281
7312
|
/**
|
|
7282
7313
|
* Ignore
|
|
7283
7314
|
*/
|
|
7284
|
-
class V8_EXPORT Extension {
|
|
7315
|
+
class V8_EXPORT Extension {
|
|
7285
7316
|
public:
|
|
7286
7317
|
// Note that the strings passed into this constructor must live as long
|
|
7287
7318
|
// as the Extension itself.
|
|
@@ -7383,6 +7414,11 @@ class V8_EXPORT ResourceConstraints {
|
|
|
7383
7414
|
/**
|
|
7384
7415
|
* The amount of virtual memory reserved for generated code. This is relevant
|
|
7385
7416
|
* for 64-bit architectures that rely on code range for calls in code.
|
|
7417
|
+
*
|
|
7418
|
+
* When V8_COMPRESS_POINTERS_IN_SHARED_CAGE is defined, there is a shared
|
|
7419
|
+
* process-wide code range that is lazily initialized. This value is used to
|
|
7420
|
+
* configure that shared code range when the first Isolate is
|
|
7421
|
+
* created. Subsequent Isolates ignore this value.
|
|
7386
7422
|
*/
|
|
7387
7423
|
size_t code_range_size_in_bytes() const { return code_range_size_; }
|
|
7388
7424
|
void set_code_range_size_in_bytes(size_t limit) { code_range_size_ = limit; }
|
|
@@ -7832,6 +7868,10 @@ using WasmSimdEnabledCallback = bool (*)(Local<Context> context);
|
|
|
7832
7868
|
// --- Callback for checking if WebAssembly exceptions are enabled ---
|
|
7833
7869
|
using WasmExceptionsEnabledCallback = bool (*)(Local<Context> context);
|
|
7834
7870
|
|
|
7871
|
+
// --- Callback for checking if the SharedArrayBuffer constructor is enabled ---
|
|
7872
|
+
using SharedArrayBufferConstructorEnabledCallback =
|
|
7873
|
+
bool (*)(Local<Context> context);
|
|
7874
|
+
|
|
7835
7875
|
// --- Garbage Collection Callbacks ---
|
|
7836
7876
|
|
|
7837
7877
|
/**
|
|
@@ -8153,17 +8193,16 @@ using UnhandledExceptionCallback =
|
|
|
8153
8193
|
/**
|
|
8154
8194
|
* Interface for iterating through all external resources in the heap.
|
|
8155
8195
|
*/
|
|
8156
|
-
class V8_EXPORT ExternalResourceVisitor {
|
|
8196
|
+
class V8_EXPORT ExternalResourceVisitor {
|
|
8157
8197
|
public:
|
|
8158
8198
|
virtual ~ExternalResourceVisitor() = default;
|
|
8159
8199
|
virtual void VisitExternalString(Local<String> string) {}
|
|
8160
8200
|
};
|
|
8161
8201
|
|
|
8162
|
-
|
|
8163
8202
|
/**
|
|
8164
8203
|
* Interface for iterating through all the persistent handles in the heap.
|
|
8165
8204
|
*/
|
|
8166
|
-
class V8_EXPORT PersistentHandleVisitor {
|
|
8205
|
+
class V8_EXPORT PersistentHandleVisitor {
|
|
8167
8206
|
public:
|
|
8168
8207
|
virtual ~PersistentHandleVisitor() = default;
|
|
8169
8208
|
virtual void VisitPersistentHandle(Persistent<Value>* value,
|
|
@@ -8180,6 +8219,45 @@ class V8_EXPORT PersistentHandleVisitor { // NOLINT
|
|
|
8180
8219
|
*/
|
|
8181
8220
|
enum class MemoryPressureLevel { kNone, kModerate, kCritical };
|
|
8182
8221
|
|
|
8222
|
+
/**
|
|
8223
|
+
* Handler for embedder roots on non-unified heap garbage collections.
|
|
8224
|
+
*/
|
|
8225
|
+
class V8_EXPORT EmbedderRootsHandler {
|
|
8226
|
+
public:
|
|
8227
|
+
virtual ~EmbedderRootsHandler() = default;
|
|
8228
|
+
|
|
8229
|
+
/**
|
|
8230
|
+
* Returns true if the TracedGlobal handle should be considered as root for
|
|
8231
|
+
* the currently running non-tracing garbage collection and false otherwise.
|
|
8232
|
+
* The default implementation will keep all TracedGlobal references as roots.
|
|
8233
|
+
*
|
|
8234
|
+
* If this returns false, then V8 may decide that the object referred to by
|
|
8235
|
+
* such a handle is reclaimed. In that case:
|
|
8236
|
+
* - No action is required if handles are used with destructors, i.e., by just
|
|
8237
|
+
* using |TracedGlobal|.
|
|
8238
|
+
* - When run without destructors, i.e., by using |TracedReference|, V8 calls
|
|
8239
|
+
* |ResetRoot|.
|
|
8240
|
+
*
|
|
8241
|
+
* Note that the |handle| is different from the handle that the embedder holds
|
|
8242
|
+
* for retaining the object. The embedder may use |WrapperClassId()| to
|
|
8243
|
+
* distinguish cases where it wants handles to be treated as roots from not
|
|
8244
|
+
* being treated as roots.
|
|
8245
|
+
*/
|
|
8246
|
+
virtual bool IsRoot(const v8::TracedReference<v8::Value>& handle) = 0;
|
|
8247
|
+
virtual bool IsRoot(const v8::TracedGlobal<v8::Value>& handle) = 0;
|
|
8248
|
+
|
|
8249
|
+
/**
|
|
8250
|
+
* Used in combination with |IsRoot|. Called by V8 when an
|
|
8251
|
+
* object that is backed by a handle is reclaimed by a non-tracing garbage
|
|
8252
|
+
* collection. It is up to the embedder to reset the original handle.
|
|
8253
|
+
*
|
|
8254
|
+
* Note that the |handle| is different from the handle that the embedder holds
|
|
8255
|
+
* for retaining the object. It is up to the embedder to find the original
|
|
8256
|
+
* handle via the object or class id.
|
|
8257
|
+
*/
|
|
8258
|
+
virtual void ResetRoot(const v8::TracedReference<v8::Value>& handle) = 0;
|
|
8259
|
+
};
|
|
8260
|
+
|
|
8183
8261
|
/**
|
|
8184
8262
|
* Interface for tracing through the embedder heap. During a V8 garbage
|
|
8185
8263
|
* collection, V8 collects hidden fields of all potential wrappers, and at the
|
|
@@ -8242,6 +8320,9 @@ class V8_EXPORT EmbedderHeapTracer {
|
|
|
8242
8320
|
/**
|
|
8243
8321
|
* Called by the embedder to notify V8 of an empty execution stack.
|
|
8244
8322
|
*/
|
|
8323
|
+
V8_DEPRECATE_SOON(
|
|
8324
|
+
"This call only optimized internal caches which V8 is able to figure out "
|
|
8325
|
+
"on its own now.")
|
|
8245
8326
|
void NotifyEmptyEmbedderStack();
|
|
8246
8327
|
|
|
8247
8328
|
/**
|
|
@@ -8305,34 +8386,14 @@ class V8_EXPORT EmbedderHeapTracer {
|
|
|
8305
8386
|
void FinalizeTracing();
|
|
8306
8387
|
|
|
8307
8388
|
/**
|
|
8308
|
-
*
|
|
8309
|
-
* the currently running non-tracing garbage collection and false otherwise.
|
|
8310
|
-
* The default implementation will keep all TracedGlobal references as roots.
|
|
8311
|
-
*
|
|
8312
|
-
* If this returns false, then V8 may decide that the object referred to by
|
|
8313
|
-
* such a handle is reclaimed. In that case:
|
|
8314
|
-
* - No action is required if handles are used with destructors, i.e., by just
|
|
8315
|
-
* using |TracedGlobal|.
|
|
8316
|
-
* - When run without destructors, i.e., by using
|
|
8317
|
-
* |TracedReference|, V8 calls |ResetHandleInNonTracingGC|.
|
|
8318
|
-
*
|
|
8319
|
-
* Note that the |handle| is different from the handle that the embedder holds
|
|
8320
|
-
* for retaining the object. The embedder may use |WrapperClassId()| to
|
|
8321
|
-
* distinguish cases where it wants handles to be treated as roots from not
|
|
8322
|
-
* being treated as roots.
|
|
8389
|
+
* See documentation on EmbedderRootsHandler.
|
|
8323
8390
|
*/
|
|
8324
8391
|
virtual bool IsRootForNonTracingGC(
|
|
8325
8392
|
const v8::TracedReference<v8::Value>& handle);
|
|
8326
8393
|
virtual bool IsRootForNonTracingGC(const v8::TracedGlobal<v8::Value>& handle);
|
|
8327
8394
|
|
|
8328
8395
|
/**
|
|
8329
|
-
*
|
|
8330
|
-
* object that is backed by a handle is reclaimed by a non-tracing garbage
|
|
8331
|
-
* collection. It is up to the embedder to reset the original handle.
|
|
8332
|
-
*
|
|
8333
|
-
* Note that the |handle| is different from the handle that the embedder holds
|
|
8334
|
-
* for retaining the object. It is up to the embedder to find the original
|
|
8335
|
-
* handle via the object or class id.
|
|
8396
|
+
* See documentation on EmbedderRootsHandler.
|
|
8336
8397
|
*/
|
|
8337
8398
|
virtual void ResetHandleInNonTracingGC(
|
|
8338
8399
|
const v8::TracedReference<v8::Value>& handle);
|
|
@@ -8791,6 +8852,7 @@ class V8_EXPORT Isolate {
|
|
|
8791
8852
|
kWasmBulkMemory = 109, // Unused.
|
|
8792
8853
|
kWasmMultiValue = 110,
|
|
8793
8854
|
kWasmExceptionHandling = 111,
|
|
8855
|
+
kInvalidatedMegaDOMProtector = 112,
|
|
8794
8856
|
|
|
8795
8857
|
// If you add new values here, you'll also need to update Chromium's:
|
|
8796
8858
|
// web_feature.mojom, use_counter_callback.cc, and enums.xml. V8 changes to
|
|
@@ -9126,6 +9188,17 @@ class V8_EXPORT Isolate {
|
|
|
9126
9188
|
*/
|
|
9127
9189
|
Local<Context> GetIncumbentContext();
|
|
9128
9190
|
|
|
9191
|
+
/**
|
|
9192
|
+
* Schedules a v8::Exception::Error with the given message.
|
|
9193
|
+
* See ThrowException for more details. Templatized to provide compile-time
|
|
9194
|
+
* errors in case of too long strings (see v8::String::NewFromUtf8Literal).
|
|
9195
|
+
*/
|
|
9196
|
+
template <int N>
|
|
9197
|
+
Local<Value> ThrowError(const char (&message)[N]) {
|
|
9198
|
+
return ThrowError(String::NewFromUtf8Literal(this, message));
|
|
9199
|
+
}
|
|
9200
|
+
Local<Value> ThrowError(Local<String> message);
|
|
9201
|
+
|
|
9129
9202
|
/**
|
|
9130
9203
|
* Schedules an exception to be thrown when returning to JavaScript. When an
|
|
9131
9204
|
* exception has been scheduled it is illegal to invoke any JavaScript
|
|
@@ -9170,6 +9243,18 @@ class V8_EXPORT Isolate {
|
|
|
9170
9243
|
*/
|
|
9171
9244
|
EmbedderHeapTracer* GetEmbedderHeapTracer();
|
|
9172
9245
|
|
|
9246
|
+
/**
|
|
9247
|
+
* Sets an embedder roots handle that V8 should consider when performing
|
|
9248
|
+
* non-unified heap garbage collections.
|
|
9249
|
+
*
|
|
9250
|
+
* Using only EmbedderHeapTracer automatically sets up a default handler.
|
|
9251
|
+
* The intended use case is for setting a custom handler after invoking
|
|
9252
|
+
* `AttachCppHeap()`.
|
|
9253
|
+
*
|
|
9254
|
+
* V8 does not take ownership of the handler.
|
|
9255
|
+
*/
|
|
9256
|
+
void SetEmbedderRootsHandler(EmbedderRootsHandler* handler);
|
|
9257
|
+
|
|
9173
9258
|
/**
|
|
9174
9259
|
* Attaches a managed C++ heap as an extension to the JavaScript heap. The
|
|
9175
9260
|
* embedder maintains ownership of the CppHeap. At most one C++ heap can be
|
|
@@ -9739,6 +9824,9 @@ class V8_EXPORT Isolate {
|
|
|
9739
9824
|
|
|
9740
9825
|
void SetWasmExceptionsEnabledCallback(WasmExceptionsEnabledCallback callback);
|
|
9741
9826
|
|
|
9827
|
+
void SetSharedArrayBufferConstructorEnabledCallback(
|
|
9828
|
+
SharedArrayBufferConstructorEnabledCallback callback);
|
|
9829
|
+
|
|
9742
9830
|
/**
|
|
9743
9831
|
* This function can be called by the embedder to signal V8 that the dynamic
|
|
9744
9832
|
* enabling of features has finished. V8 can now set up dynamically added
|
|
@@ -10113,6 +10201,9 @@ class V8_EXPORT V8 {
|
|
|
10113
10201
|
* Notifies V8 that the process is cross-origin-isolated, which enables
|
|
10114
10202
|
* defining the SharedArrayBuffer function on the global object of Contexts.
|
|
10115
10203
|
*/
|
|
10204
|
+
V8_DEPRECATED(
|
|
10205
|
+
"Use the command line argument --enable-sharedarraybuffer-per-context "
|
|
10206
|
+
"together with SetSharedArrayBufferConstructorEnabledCallback")
|
|
10116
10207
|
static void SetIsCrossOriginIsolated();
|
|
10117
10208
|
|
|
10118
10209
|
private:
|
package/include/node/v8config.h
CHANGED
|
@@ -310,10 +310,6 @@ path. Add it with -I<path> to the command line
|
|
|
310
310
|
// GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
|
|
311
311
|
# define V8_HAS_COMPUTED_GOTO 1
|
|
312
312
|
|
|
313
|
-
// Whether constexpr has full C++14 semantics, in particular that non-constexpr
|
|
314
|
-
// code is allowed as long as it's not executed for any constexpr instantiation.
|
|
315
|
-
# define V8_HAS_CXX14_CONSTEXPR 1
|
|
316
|
-
|
|
317
313
|
#elif defined(__GNUC__)
|
|
318
314
|
|
|
319
315
|
# define V8_CC_GNU 1
|
|
@@ -336,7 +332,10 @@ path. Add it with -I<path> to the command line
|
|
|
336
332
|
# define V8_HAS_ATTRIBUTE_UNUSED 1
|
|
337
333
|
# define V8_HAS_ATTRIBUTE_VISIBILITY 1
|
|
338
334
|
# define V8_HAS_ATTRIBUTE_WARN_UNUSED_RESULT (!V8_CC_INTEL)
|
|
339
|
-
|
|
335
|
+
|
|
336
|
+
// [[nodiscard]] does not work together with with
|
|
337
|
+
// __attribute__((visibility(""))) on GCC 7.4 which is why there is no define
|
|
338
|
+
// for V8_HAS_CPP_ATTRIBUTE_NODISCARD. See https://crbug.com/v8/11707.
|
|
340
339
|
|
|
341
340
|
# define V8_HAS_BUILTIN_ASSUME_ALIGNED 1
|
|
342
341
|
# define V8_HAS_BUILTIN_CLZ 1
|
|
@@ -348,11 +347,6 @@ path. Add it with -I<path> to the command line
|
|
|
348
347
|
// GCC doc: https://gcc.gnu.org/onlinedocs/gcc/Labels-as-Values.html
|
|
349
348
|
#define V8_HAS_COMPUTED_GOTO 1
|
|
350
349
|
|
|
351
|
-
// Whether constexpr has full C++14 semantics, in particular that non-constexpr
|
|
352
|
-
// code is allowed as long as it's not executed for any constexpr instantiation.
|
|
353
|
-
// GCC only supports this since version 6.
|
|
354
|
-
# define V8_HAS_CXX14_CONSTEXPR (V8_GNUC_PREREQ(6, 0, 0))
|
|
355
|
-
|
|
356
350
|
#endif
|
|
357
351
|
|
|
358
352
|
#if defined(_MSC_VER)
|
package/package.json
CHANGED
package/share/man/man1/node.1
CHANGED
|
@@ -153,10 +153,8 @@ to use as a custom module loader.
|
|
|
153
153
|
.It Fl -experimental-policy
|
|
154
154
|
Use the specified file as a security policy.
|
|
155
155
|
.
|
|
156
|
-
.It Fl -experimental-repl-await
|
|
157
|
-
|
|
158
|
-
.Sy await
|
|
159
|
-
keyword support in REPL.
|
|
156
|
+
.It Fl -no-experimental-repl-await
|
|
157
|
+
Disable top-level await keyword support in REPL.
|
|
160
158
|
.
|
|
161
159
|
.It Fl -experimental-specifier-resolution
|
|
162
160
|
Select extension resolution algorithm for ES Modules; either 'explicit' (default) or 'node'.
|