v10.2.0 proposal
2018-05-23, Version 10.2.0 (Current), @MylesBorins
Notable Changes
-
addons:
- Fixed a memory leak for users of
AsyncResource
and N-API. (Michael Dawson) #20668
- Fixed a memory leak for users of
-
assert:
- The
error
parameter ofassert.throws()
can be an object containing regular expressions now. (Ruben Bridgewater) #20485
- The
- crypto:
-
esm:
- Builtin modules (e.g.
fs
) now provide named exports in ES6 modules. (Gus Caplan) #20403
- Builtin modules (e.g.
- http:
-
module:
- add --preserve-symlinks-main (David Goldstein) #19911
-
timers:
-
timeout.refresh()
has been added to the public API. (Jeremiah Senkpiel) #20298
-
- Embedder support:
- Functions for creating V8
Isolate
andContext
objects with Node.js-specific behaviour have been added to the API. (Allen Yonghuang Wang) #20639 - Node.js
Environment
s clean up resources before exiting now. (Anna Henningsen) #19377 - Support for multi-threaded embedding has been improved. (Anna Henningsen) #20542, #20539, #20541
- Functions for creating V8
Commits
- [
014a2d1035
] - assert: fix wrong message indentation (Ruben Bridgewater) #20791 - [
338e663860
] - assert: fix EOL issue in messages on Windows (Ruben Bridgewater) #20754 - [
1160d61cd9
] - assert: support symbols as assertion messages (cjihrig) #20693 - [
bb857d9e71
] - assert: make sure throws is able to handle primitives (Ruben Bridgewater) #20482 - [
5d06c1e1ae
] - assert: move AssertionError into own file (Ruben Bridgewater) #20486 - [
a5ee31bba1
] - (SEMVER-MINOR) assert: accept regular expressions to validate (Ruben Bridgewater) #20485 - [
74db9f43ba
] - assert,util: lazy load comparison functions (Ruben Bridgewater) #20567 - [
9feca3ea32
] - async_hooks: lazy loading for startup performance (Ruben Bridgewater) #20567 - [
e61337d36d
] - async_wrap: fix memory leak in AsyncResource (Michael Dawson) #20668 - [
56de3bfb70
] - benchmark: add tls benchmark for legacy SecurePair (Alex Fernández) #20344 - [
3b516177c8
] - build: use nyc's merge command (Benjamin Coe) #20760 - [
aaf1df59be
] - build: export openssl TLSv1 methods again (Ben Noordhuis) #20712 - [
7a980086c8
] - build: always use BUILDTYPE binary to run JS tests (Joyee Cheung) #20362 - [
47103493f7
] - child_process: fix exec set stdout.setEncoding (killagu) #18976 - [
4a872b98a0
] - cluster: remove obsolete array allocation (Ruben Bridgewater) #20567 - [
a41c44a307
] - codeowners: add rule for *.gypi files (Ben Noordhuis) #20740 - [
b701f5af18
] - codeowners: fix typo in v8-inspector team name (Ben Noordhuis) #20740 - [
3fd67249df
] - console: .table fall back to logging for function too (ohbarye) #20681 - [
bc6dbc3bfc
] - console: lazy load cli (Ruben Bridgewater) #20567 - [
cecec46204
] - crypto: add test case for AES key wrapping (Yihong Wang) #20587 - [
34d67085d5
] - crypto: allocate more memory for cipher.update() (Yihong Wang) #20370 - [
2b2ccae390
] - (SEMVER-MINOR) crypto: support authTagLength in GCM encryption (Tobias Nießen) #20235 - [
1e5de6fe97
] - crypto: add using directives for v8::Int32, Uint32 (Tobias Nießen) #20225 - [
f5e7010eb9
] - crypto: use kNoAuthTagLength in InitAuthenticated (Tobias Nießen) #20225 - [
5ea1a58db9
] - crypto: remove rsaPrivate and rename rsaPublic (Daniel Bevenius) #20164 - [
503844eb73
] - crypto: add addCipherPrototypeFunctions function (Daniel Bevenius) #20164 - [
72029b8cc7
] - crypto: add createCipher/WithIV functions (Daniel Bevenius) #20164 - [
bdd2856152
] - (SEMVER-MINOR) crypto: allow to restrict valid GCM tag length (Tobias Nießen) #20039 - [
e56716e396
] - deps: cherry-pick ff0a9793334 from upstream V8 (Anna Henningsen) #20719 - [
8e058d5f94
] - deps: patch V8 to 6.6.346.32 (Myles Borins) #20748 - [
cb94601cf2
] - deps: cherry-pick 23652c5f from upstream V8 (Eugene Ostroukhov) #20608 - [
91e60b0d33
] - deps: V8: cherry-pick b49206d from upstream (Ali Ijaz Sheikh) #20727 - [
6ce589f7f4
] - deps: patch V8 to 6.6.346.31 (Myles Borins) #20603 - [
f69a823f8e
] - deps: upgrade to libuv 1.20.3 (cjihrig) #20585 - [
60eab9100f
] - dns: lazy loaded (Ruben Bridgewater) #20567 - [
b9848bf8cd
] - doc: add note about autocrlf required for tests (Bartosz Sosnowski) #20752 - [
8a17a259f3
] - doc: fix some nits in hardcoded manpage links (Vse Mozhet Byt) #20854 - [
8317a468db
] - doc: fix fs.promises sample codes (Keita Akutsu) #20838 - [
37b9fe1e68
] - doc: fix typo in http2.md (Keita Akutsu) #20843 - [
88aee8a65c
] - doc: improve _Deprecation_ definition (Rich Trott) #20788 - [
7b1c035218
] - doc: describe using multiple link-module on win (Bartosz Sosnowski) #20774 - [
9a8cdc93ff
] - doc: fix typo in COLLABORATOR_GUIDE.md (Vse Mozhet Byt) #20742 - [
657f8cbe41
] - doc: fix linter warnings and typos in manpage (Alhadis) #20741 - [
165971d35b
] - doc: sort references in ASCII order (Rich Trott) #20790 - [
8f489a2447
] - doc: add .github to CODEOWNERS (Rich Trott) #20733 - [
7943449305
] - doc: improve specificity in CODEOWNERS (Rich Trott) #20729 - [
7d28f5bb1b
] - doc: reorder CODEOWNERS file (Rich Trott) #20732 - [
fd14ec1101
] - doc: add missingchanges:
entry for assert.throws (Anna Henningsen) #20723 - [
a66aad4a50
] - doc: fixup NODE_EXTERN -> NAPI_EXTERN (Michael Dawson) #20641 - [
f263340731
] - doc: fix signature for napi_create_range_error (Michael Dawson) #20641 - [
d11a435875
] - doc: fix typo in dns docs (Anna Henningsen) #20711 - [
512982c0ff
] - doc: update AUTHORS list (Michaël Zasso) #20658 - [
e06c5874f6
] - doc: add global node_modules to require.resolve() (musgravejw) #20534 - [
1d7379d641
] - doc: fix stability text for n-api (Michael Dawson) #20659 - [
73492233c3
] - doc: add util.types.isModuleNamespaceObject() (Gus Caplan) #20616 - [
3929516a6f
] - doc: fix nits in doc/api_assets/style.css (Vse Mozhet Byt) #20601 - [
01abed1c36
] - doc: update assert documentation (Ruben Bridgewater) #20486 - [
c546746396
] - doc: add util.types.isBig{Int,Uint}64Array() (cjihrig) #20615 - [
d568952b8c
] - doc: fix missing napi_get_typedarray_info() param (Gabriel Schulhof) #20631 - [
9177f734e3
] - doc: update VM section text (Daniel Bevenius) #20595 - [
88bc6da6e9
] - doc: add parameters for Http2Stream:error event (Ujjwal Sharma) #20610 - [
b3b267a87c
] - doc: add params for ClientHttp2Session:altsvc (Ujjwal Sharma) #20598 - [
d327893193
] - doc: refactor mode constants parts in fs.md (Shobhit Chittora) #20558 - [
4a7bb406fe
] - doc, tools: unify stability signatures (Vse Mozhet Byt) #20552 - [
c244436707
] - errors: move functions to error code (Ruben Bridgewater) #20486 - [
104c3bc443
] - (SEMVER-MINOR) esm: provide named exports for builtin libs (Gus Caplan) #20403 - [
9b43af3703
] - fs: lazy load createPromise/promiseResolve (James M Snell) #20766 - [
2d2897855f
] - fs: lazy load the promises impl (James M Snell) #20766 - [
dc30d36467
] - fs: consistent constants use and cleanup (James M Snell) #20765 - [
e5a0c197bd
] - fs: refactor promises version of lchown and lchmod (cjihrig) #20551 - [
39caa6ddaf
] - fs: use _final() for fs.WriteStream (Jackson Tian) #20562 - [
de06115d18
] - fs: make fs.promises non-enumerable (cjihrig) #20632 - [
545a9d839b
] - http: fix capitalization of 418 status message (я котик пур-пур) #20700 - [
3c05b0323e
] - http: do not rely on the 'agentRemove' event (Luigi Pinca) #20786 - [
4c6bfbdbb4
] - http: fix client response close & aborted (Robert Nagy) #20075 - [
8029a2473e
] - http: always emit close on req and res (Robert Nagy) #20611 - [
171600d00d
] - http2: fix several serious bugs (Anatoli Papirovski) #20772 - [
b2fb1d70bb
] - http2: fix end without read (Anatoli Papirovski) #20621 - [
de2b04772b
] - http2: avoid bind and properly clean up in compat (Robert Nagy) #20374 - [
28ecf93dc5
] - http2: destroy the socket properly and add tests (Mathias Buus) #19852 - [
04f7678edb
] - inspector: add a "NodeTracing" domain support (Eugene Ostroukhov) #20608 - [
ccf69dd3b6
] - inspector: fix inspector::Agent::HasConnectedSessions (helloshuangzi) #20614 - [
e0fd80c641
] - lib: do not call performance hooks (Ruben Bridgewater) #20567 - [
bd13193979
] - lib: remove unnecessary require (Ruben Bridgewater) #20567 - [
07537749db
] - lib: use capital letters in comments (Ruben Bridgewater) #20567 - [
72f3228203
] - lib: lazy loaded (Ruben Bridgewater) #20567 - [
3aab6ce39d
] - lib: lazy load necessary loaders (Ruben Bridgewater) #20567 - [
486ac23cb0
] - lib: only load inspector stuff if necessary (Ruben Bridgewater) #20567 - [
61415dccc4
] - (SEMVER-MINOR) lib: defer pausing stdin to the next tick (Anna Henningsen) #19377 - [
7c13e54ca7
] - lib: return directly from packageMainCache (Daniel Bevenius) #20591 - [
fb7a775242
] - lib,src: use V8 API for collection inspection (Anna Henningsen) #20719 - [
1f01830ede
] - lib,src,test: fix comments (Tobias Nießen) #20846 - [
b10823506d
] - meta: add initial CODEOWNERS file (James M Snell) #20554 - [
678b7544df
] - module: introduce defaultModuleName in module.js (Daniel Bevenius) #20709 - [
b6ea5df08a
] - (SEMVER-MINOR) module: add --preserve-symlinks-main (David Goldstein) #19911 - [
eac7aad55e
] - net: lazy load dns (Ruben Bridgewater) #20567 - [
1f34c04bd0
] - net: remove typo in setTimeout comment (Daniel Bevenius) #20576 - [
d614511b9f
] - net,http2: refactor _write and _writev (Ujjwal Sharma) #20643 - [
28d00a18c8
] - os: lazy loaded (Ruben Bridgewater) #20567 - [
2e9957641e
] - perf_hooks: always set bootstrapComplete (James M Snell) #20768 - [
c8fe8e8f5d
] - (SEMVER-MINOR) process: create stdin withmanualStart: true
(Anna Henningsen) #19377 - [
4a92da15dc
] - querystring: lazy loaded (Ruben Bridgewater) #20567 - [
3eb38debb4
] - readline: lazy loaded (Ruben Bridgewater) #20567 - [
ada41b02c5
] - repl: make console, module and require non-enumerable (Ruben Bridgewater) #20717 - [
83119db45e
] - repl: add friendly tips about how to exit repl (monkingxue) #20617 - [
32c3006fd0
] - src: trace_events: background thread events (Ali Ijaz Sheikh) #20823 - [
3110d15f2b
] - src: make pointers lean left in node_crypto.cc (Daniel Bevenius) #20799 - [
b6225349f4
] - src: use unqualified names in node_crypto.cc (Daniel Bevenius) #20799 - [
010ad8c26c
] - src: move *Exceptions out to separate cc/h (James M Snell) #20789 - [
08b98d17f1
] - src: fix odd linting issue (James M Snell) #20789 - [
36d4a42e35
] - src: move CallbackScope to separate cc/h (James M Snell) #20789 - [
4b64c847f1
] - src: trace_events: support for metadata events (Ali Ijaz Sheikh) #20757 - [
3edb04d065
] - src: remove 2ndundefined
argument in node_file.cc (Dan Kang) #20629 - [
d6805c15a5
] - src: add override to ThreadPool methods in zlib (Daniel Bevenius) #20769 - [
01aa0581fe
] - src: order C++ error list alphabetically (Anna Henningsen) #20707 - [
5eb0765fc9
] - src: handle TryCatch with empty message (Ben Noordhuis) #20708 - [
e0b438a641
] - (SEMVER-MINOR) src: add public API to create isolate and context (helloshuangzi) #20639 - [
d223e3ca41
] - src: makeAsyncResource
destructor virtual (Anna Henningsen) #20633 - [
28b58b56a8
] - src: replacetemplate\<
→template \<
(Anna Henningsen) #20675 - [
30aceedba6
] - src: make env_ and context_ private (Daniel Bevenius) #20671 - [
9422909e07
] - src: remove unused includes from node_contextify.h (Daniel Bevenius) #20670 - [
e732b4ce5c
] - src: use unqualified names in node_contextify.cc (Daniel Bevenius) #20669 - [
57dfd64f8f
] - src: add missing override to ThreadPoolWork funcs (Daniel Bevenius) #20663 - [
2347ce8870
] - (SEMVER-MINOR) src: unify thread pool work (Anna Henningsen) #19377 - [
7153bec955
] - (SEMVER-MINOR) src: always call ReadStop() before Close() (Anna Henningsen) #19377 - [
9e1dcdc5bd
] - (SEMVER-MINOR) src: remove NodeCategorySet destructor (Anna Henningsen) #19377 - [
97d939a5f0
] - (SEMVER-MINOR) src: store fd for libuv streams on Windows (Anna Henningsen) #19377 - [
5b0d2e7b19
] - (SEMVER-MINOR) src: add can_call_into_js flag (Anna Henningsen) #19377 - [
9e2554ce98
] - (SEMVER-MINOR) src: use cleanup hooks to tear down BaseObjects (Anna Henningsen) #19377 - [
8995408748
] - (SEMVER-MINOR) src: keep track of open requests (Anna Henningsen) #19377 - [
75aad9069b
] - (SEMVER-MINOR) src: unify ReqWrap libuv calling (Anna Henningsen) #19377 - [
e253edb48a
] - (SEMVER-MINOR) src: make CleanupHandles() tear down handles/reqs (Anna Henningsen) #19377 - [
ba269585ed
] - (SEMVER-MINOR) src: add environment cleanup hooks (Anna Henningsen) #19377 - [
40fb885ecf
] - src: more automatic memory management in node_crypto.cc (Anna Henningsen) #20238 - [
fd5adbc9c3
] - src: fix node_crypto.cc compiler warnings (Daniel Bevenius) #20216 - [
db457cb6a0
] - src: fix typo in util.h comment (Anna Henningsen) #20656 - [
e93726ad10
] - src: fix nullptr dereference for signal during startup (Anna Henningsen) #20637 - [
0824ea9d7b
] - src: use unqualified names in module_wrap.cc (Daniel Bevenius) #20594 - [
43ec938634
] - src: remove static variables from string_search (Anna Henningsen) #20541 - [
4873fbaf63
] - src: remove unused freelist.h header (Anna Henningsen) #20544 - [
a89cc2886e
] - src: protect global state with mutexes (Anna Henningsen) #20542 - [
2df99ac095
] - src: use lock for c-ares library init/cleanup (Anna Henningsen) #20539 - [
5803973206
] - src: minor refactor to string_search.h (Anna Henningsen) #20546 - [
983cb269e0
] - src: don't create Undefined if not needed (Daniel Bevenius) #20573 - [
e01e060763
] - src: rename handle parameter object (Daniel Bevenius) #20570 - [
328a2c7c28
] - stream: lazy load end-of-stream (Ruben Bridgewater) #20567 - [
94d217f877
] - stream: lazy load ReadableAsyncIterator (Ruben Bridgewater) #20567 - [
ed5f253cfa
] - stream: refactor getHighWaterMark in state.js (Daniel Bevenius) #20415 - [
39a41120d4
] - stream: simplify writable's validChunk() (cjihrig) #20696 - [
981a2f7b16
] - stream: simplify Writable.prototype.cork() (cjihrig) #20697 - [
ebc1b77e5a
] - stream: no need to initial er with false (Jackson Tian) #20607 - [
0ace8f9835
] - string_decoder: lazy loaded (Ruben Bridgewater) #20567 - [
235a272838
] - test: test about:blank against invalid WHATWG URL (Joyee Cheung) #20796 - [
d68f6e699d
] - test: fix tests that fail under coverage (Benjamin Coe) #20794 - [
24286c4b4b
] - test: add promise API test for appendFile() (Rich Trott) #20842 - [
086d108e92
] - test: improve coverage for internal/readline (Masashi Hirano) #20840 - [
6a113da1f8
] - test: rename and document tls test (Anna Henningsen) #20820 - [
275907f7be
] - test: fix flaky http2-session-unref (Anatoli Papirovski) #20772 - [
ce40c70995
] - test: use error code rather than message in test (Rich Trott) #20859 - [
3afeaaa934
] - test: define SharedArrayBuffer as a known global (cjihrig) #20849 - [
3e7741c488
] - test: reduce runtime (Ruben Bridgewater) #20688 - [
22f46e7766
] - test: remove common.globalCheck (Ruben Bridgewater) #20717 - [
5ffce3ef06
] - test: remove untested knownGlobals (Ruben Bridgewater) #20717 - [
e7c2616d10
] - test: mark tests as flaky as intermediate step (Ruben Bridgewater) #20835 - [
b664a848fa
] - test: improve assertion in test-performance (Anna Henningsen) #20809 - [
045b37b32d
] - test: add eslint rule to verify assertion input (Ruben Bridgewater) #20718 - [
1ae076b30e
] - test: add loaded modules test (Ruben Bridgewater) #20567 - [
9e432ca79c
] - test: add promise API test for appendFile() (Rich Trott) #20739 - [
a6667d68f3
] - test: slightly improve test-util-inspect assertions (Anna Henningsen) #20721 - [
a4cbe30791
] - test: improve reliability of http2-session-timeout (Rich Trott) #20692 - [
0d28b4b6ba
] - test: disable colors in test-assert-checktag.js (cjihrig) #20695 - [
dccbc3a153
] - test: disable colors in test-assert-deep.js (cjihrig) #20695 - [
90c77bcc18
] - test: disable colors in test-assert.js (cjihrig) #20695 - [
2b6e8ccfd4
] - test: increase test coverage for fs/promises.js (David Humphrey) #19811 - [
e6c0bbe185
] - test: display values in AssertionErrors (RakshithNM) #20545 - [
886116f837
] - test: apply test-fs-access to promises API (Rich Trott) #20667 - [
2a7c863d3d
] - test: modernize and correct test-doctool-html.js (Vse Mozhet Byt) #20676 - [
9c1c03e5d4
] - test: better error message in trace events test (Anna Henningsen) #20655 - [
0aab92f6b2
] - test: add test for async hooks parity for async/await (Maya Lekova) #20626 - [
2db83fdc0c
] - test: remove deepStrictEqual() third argument (Francesco Falanga) #20702 - [
87f3f5af2e
] - test: plug AliasedBuffer cctest memory leak (Anna Henningsen) #20665 - [
eb21a6b7f6
] - test: remove crypto.DEFAULT_ENCODING usage (Daniel Bevenius) #20221 - [
de34cfad58
] - test: make sure linked lists are inspectable with defaults (Anna Henningsen) #20017 - [
41e1dc09de
] - test: add regression test for #11257 (closed) (Benjamin Coe) #20391 - [
56530f0844
] - (SEMVER-MINOR) timers: make timer.refresh() a public API (Jeremiah Senkpiel) #20298 - [
bd500af2ff
] - tools: update prohibited-strings md linting (Rich Trott) #20742 - [
2361f6454c
] - tools: stricter eslint rule for globals (Ruben Bridgewater) #20567 - [
38fc741c36
] - tools: eliminate intermediate module in doctools (Vse Mozhet Byt) #20701 - [
6f4e9ffb7b
] - tools: fix "the the" typos in comments (Masashi Hirano) #20716 - [
b795953b5f
] - tools: hide symbols for builtin JS files in binary (Anna Henningsen) #20634 - [
44960a0d5a
] - tools: make C++ linter rejecttemplate\<
(Anna Henningsen) #20675 - [
7bff6d15b2
] - tools: overhaul tools/doc/html.js (Vse Mozhet Byt) #20613 - [
f2ad1d5d22
] - (SEMVER-MINOR) tools: remove--quiet
from run-valgrind.py (Anna Henningsen) #19377 - [
ebd102e473
] - tools: use macOS as operating system name (Rich Trott) #20579 - [
08097ccf84
] - tools: ignore VS compiler output (Yulong Wang) #20527 - [
8781bcb1ee
] - tools, doc: wrap manpage links in code elements (Vse Mozhet Byt) #20785 - [
e1ff587a26
] - tools, doc: fix stability index isssues (Vse Mozhet Byt) #20731 - [
526163cff9
] - url: introduceURL\_FLAGS\_IS\_DEFAULT\_SCHEME\_PORT
flag (Ayush Gupta) #20479 - [
c8c9211fa6
] - util: improve error inspection (Ruben Bridgewater) #20802 - [
f0d6a37c5c
] - util: fix inspected stack indentation (Ruben Bridgewater) #20802 - [
38bc5fbd6b
] - util: remove erroneous whitespace (Ruben Bridgewater) #20802 - [
5ce85a72cb
] - util: wrap error in brackets without stack (Ruben Bridgewater) #20802 - [
b308a07301
] - util: support inspecting namespaces of unevaluated modules (Gus Caplan) #20782 - [
105f606202
] - v8: backport 9fb02b526f1cd3b859a530a01adb08bc0d089f4f (Gus Caplan) #20575 - [
8604481b2e
] - vm: move emitExperimentalWarning (Daniel Bevenius) #20593 - [
740bf783e5
] - vm,trace_events: add node.vm.script trace events category (James M Snell) #20728 - [
d5db576d15
] - zlib: reduce number of static internal methods (Anna Henningsen) #20674