Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v11.7.0 proposal #25537

Merged
merged 246 commits into from
Jan 18, 2019
Merged

v11.7.0 proposal #25537

merged 246 commits into from
Jan 18, 2019

Conversation

BridgeAR
Copy link
Member

2019-01-17, Version 11.7.0 (Current), @BridgeAR

#22478 is included because of #25446. This should probably not cause any issues due to being on the white list but I would like other collaborators to weight in if we should remove that commit or not (@addaleax you expressed some concerns in the original PR, so please also check again). @nodejs/tsc PTAL.

There is another semver-major commit which is followed by a patch commit that reverts the actual breaking change but that commit is required to allow further backporting.

Notable Changes

  • compression / zlib:
    • Added brotli support (Anna Henningsen and Zach Vacura) #24938
  • console:
    • Added inspectOptions option (Ruben Bridgewater) #24978
  • crypto:
    • Always accept private keys as public keys (Tobias Nießen) #25217
  • fs:
    • Use internalBinding('fs') internally instead of process.binding('fs') (Masashi Hirano) #22478
  • http(s):
    • Support overriding http\s.globalAgent (Roy Sommer) #25170
  • util:
    • Inspect ArrayBuffers contents closely (Ruben Bridgewater) #25006

Commits

  • [e09dd0c5f0] - assert: make actual and expected getters (Ruben Bridgewater) #25250
  • [516f75fda8] - benchmark: fix net-wrap-js-stream-passthrough (Rich Trott) #25273
  • [9a627a4694] - (SEMVER-MINOR) benchmark,test: add brotli (Anna Henningsen) #24938
  • [eacc1518cc] - buffer: move Buffer prototype wiring into internal/buffer.js (Joyee Cheung) #25292
  • [255f017ea0] - buffer: move initialization of buffer prototype into node.js (Joyee Cheung) #25292
  • [68014fbc22] - buffer: inspect extra properties (Ruben Bridgewater) #25150
  • [1d4940888d] - buffer: refactor checks for SlowBuffer creation (P. Mike) #25266
  • [7dc4c3be03] - buffer: fix crash for invalid index types (Anna Henningsen) #25154
  • [a4f50a62d5] - build: set -blibpath: for AIX (Richard Lau) #25447
  • [07ffa3f189] - build: add check for empty openssl-fips flag (Daniel Bevenius) #25391
  • [a2cc4bad0e] - build: fix Windows shared lib build (Richard Lau) #25166
  • [736349c7e3] - build,test: fail coverage target if tests fail (Refael Ackermann) #25432
  • [56e7e4f0cd] - child_process: simplify argument handling (cjihrig) #25194
  • [272ddb1765] - console: improve inspectOptions validation (cjihrig) #25090
  • [65d485b880] - (SEMVER-MINOR) console: add inspectOptions option (Ruben Bridgewater) #24978
  • [57323e8048] - console: move the inspector console wrapping in a separate file (Joyee Cheung) #24709
  • [b549058cc4] - console: split console into global.js and constructor.js (Joyee Cheung) #24709
  • [4052aec321] - console: lazy load process.stderr and process.stdout (Joyee Cheung) #24534
  • [7f5bb9d3bf] - console: bind methods from the prototype chain in Console (Joyee Cheung) #24047
  • [b2b0645805] - console: create the global console from Console constructor (Joyee Cheung) #25420
  • [561c2689ef] - console: use spread notation instead of Object.assign (Ruben Bridgewater) #25149
  • [63fbd00834] - coverage: pass cwd to path.resolve() in setup (cjihrig) #25289
  • [daca3188af] - coverage: use process._rawDebug() during setup (cjihrig) #25289
  • [eaaaa0d479] - (SEMVER-MINOR) crypto: always accept private keys as public keys (Tobias Nießen) #25217
  • [32e45b20da] - crypto: fix key object wrapping in sync keygen (Tobias Nießen) #25326
  • [bc6f4bc0c5] - crypto: add crypto/keys to cannotUseCache (Daniel Bevenius) #25237
  • [f3ebc391a3] - crypto: fix zero byte allocation assertion failure (Tobias Nießen) #25248
  • [e1d4f4384a] - deps: cherry-pick d9fbfeb from upstream V8 (Alexey Kozyatinskiy) #25331
  • [91015918d8] - deps: upgrade npm to v6.5.0 (Jordan Harband) #25234
  • [11c01a6a69] - (SEMVER-MINOR) deps: add brotli (Hackzzila) #24938
  • [f2abe7bf76] - deps: V8: backport 3e010af (Ruben Bridgewater) #25101
  • [201cf97fcb] - deps: V8: backport bf84766 (Ruben Bridgewater) #25101
  • [ec87b6c994] - (SEMVER-MINOR) deps,tools: update license-builder.sh and LICENSE (Hackzzila) #24938
  • [5b4fab1a40] - dns: fix TTL value for AAAA replies to resolveAny() (Anna Henningsen) #25187
  • [edab2d61fd] - doc: revert incorrect change on readable._read (Matteo Collina) #25442
  • [2172dbfce4] - doc: add TLSSocket.isSessionReused() docs (Sam Roberts) #25423
  • [7123167e31] - doc: improve Sign/Verify examples and docs (Sam Roberts) #25452
  • [9a61a7abb3] - doc: fix section order in vm.md (Vse Mozhet Byt) #25374
  • [2b0c8538ef] - doc: fix sorting in buffer.md (Vse Mozhet Byt) #25477
  • [f8bb544bfb] - doc: fix napi\_open\_callback\_scope description (Philipp Renoth) #25366
  • [b67c4b4f99] - doc: document that stream.on('close') was changed in Node 10 (Matteo Collina) #25413
  • [3db7a9ffba] - doc: fix, unify, formalize, and amplify vm.md (Vse Mozhet Byt) #25422
  • [ebd202736c] - doc: fix the path to postMessage() (Mitar) #25332
  • [177635b320] - doc: update os.networkInterfaces() example (jvelezpo) #25417
  • [67782613bb] - doc: make sure that calls to .read() are looped (Matteo Collina) #25375
  • [f58b5300cd] - doc: wrap and punctuate YAML description text (Sam Roberts) #25419
  • [8380bd46a0] - doc: add history to http.request.setTimeout() (James Bunton) #25121
  • [8bc1651249] - doc: add clarification for exception behaviour (Michael Dawson) #25339
  • [f3d86391d9] - doc: clarify timing of socket.connecting (Sam Roberts) #25333
  • [7d46437c45] - doc: update benchmark doc (Kazushi Kitaya) #25367
  • [071f84e80a] - doc: use lowercase for zlib (Rich Trott) #25371
  • [7d1d26191d] - doc: fix heading in cpp style guide (Kazushi Kitaya) #25303
  • [354fba1b26] - doc: fix process.stdin example (Anna Henningsen) #25344
  • [1e20c5e440] - doc: make modules.md more accurate (Vse Mozhet Byt) #25357
  • [f8dcbba563] - doc: fs.mkdir('/') throws EPERM on Windows (Corey Farrell) #25340
  • [b9b2ba22ec] - doc: document key encryption options (Tobias Nießen) #23632
  • [f5008fd1ef] - doc: simplify DEP0119 wording (cjihrig) #25276
  • [1c5a99797b] - (SEMVER-MINOR) doc: add documentation for brotli support (Anna Henningsen) #24938
  • [be45469744] - doc: edit and simplify util.inspect() docs (cjihrig) #25195
  • [8a701c3fce] - doc: include license for src/large_pages in LICENSE (Ujjwal Sharma) #25246
  • [e6da77b12c] - doc: describe TLS session resumption (Sam Roberts) #25174
  • [3af173df00] - doc: link and expand --tls-cipher-list docs (Sam Roberts) #25174
  • [39b3fd1b61] - doc: revise "Breaking Changes to Internal Elements" (Rich Trott) #25190
  • [2c50bcda8a] - doc: fix NAPI typo (Philipp Renoth) #25216
  • [1697604ae0] - doc,worker: revise worker_threads.md (Rich Trott) #25402
  • [dd0381fe4e] - (SEMVER-MAJOR) fs: make process.binding('fs') internal (Masashi Hirano) #22478
  • [ca7adcafda] - fs: extract start and end check into checkPosition (ZYSzys) #25264
  • [26f2eb8b12] - http2: add test case for goaway (Anto Aravinth) #24054
  • [445ba9f283] - inspector: move process.binding to internalBinding (Beni von Cheni) #24931
  • [8cc97571a4] - Revert "inspector: move process.binding to internalBinding" (Joyee Cheung) #25446
  • [4794cf601e] - inspector: move process.binding to internalBinding (Beni von Cheni) #24931
  • [3061cb50df] - inspector, test: verify reported console message (Eugene Ostroukhov) #25455
  • [6528ce6176] - lib: expose all type checks from the internal types module (Ruben Bridgewater) #25149
  • [207612c723] - lib: remove internalBinding('config').pendingDeprecation (Joyee Cheung) #24962
  • [d8ba520622] - lib: remove unused NativeModule/NativeModule wraps (Joyee Cheung) #24904
  • [87a58beed7] - lib: remove duplicated noop function (ZYSzys) #24770
  • [d7d772b2f8] - Revert "lib: remove duplicated noop function" (Joyee Cheung) #25446
  • [42a7eaf9d4] - Revert "lib: remove unused NativeModule/NativeModule wraps" (Joyee Cheung) #25446
  • [b48865f03f] - lib: move lib/console.js to lib/internal/console/constructor.js (Joyee Cheung) #24709
  • [3350230e20] - lib: remove internal util.\_extends() usage (Ruben Bridgewater) #25105
  • [73c3a3d5ed] - (SEMVER-MAJOR) lib: make the global console [[Prototype]] an empty object (Joyee Cheung) #23509
  • [8d0c638583] - (SEMVER-MINOR) lib: support overriding http\s.globalAgent (Roy Sommer) #25170
  • [217bb0e5f0] - lib: simplify several debug() calls (cjihrig) #25241
  • [e14f8646e2] - lib,test: remove lib/internal/test/unicode.js (Rich Trott) #25298
  • [c13e5be740] - net: use decodeStrings public API for writable stream (Rich Trott) #25201
  • [9ac8d41925] - net: check for close on stream, not parent (David Halls) #25026
  • [f4fa04e170] - os: add fallback for undefined CPUs (Minwoo Jung) #25493
  • [840ec230f1] - os: improve networkInterfaces() performance (Brian White) #25410
  • [d197105476] - os: move process.binding('os') to internalBinding (briete) #25087
  • [f64e5ec148] - Revert "os: move process.binding('os') to internalBinding" (Joyee Cheung) #25446
  • [55d185f0dd] - os: move process.binding('os') to internalBinding (briete) #25087
  • [42fc754477] - process: register the inspector async hooks in bootstrap/node.js (Joyee Cheung) #25443
  • [02f1e64155] - process: refactor coverage setup during bootstrap (Joyee Cheung) #25398
  • [422a063ca4] - process: allow StartExecution() to take a main script ID (Joyee Cheung) #25474
  • [d7a07d887a] - process: move C++ process events into node_process_events.cc (Joyee Cheung) #25397
  • [59b5e771b5] - process: move --help and --bash-completeion handling to startExecution (Joyee Cheung) #25262
  • [2bd743717b] - process: move process.features initialization into node.js (Joyee Cheung) #25239
  • [127439db1c] - process: make tick callback and promise rejection callback more robust (Joyee Cheung) #25200
  • [5b1a987f81] - process: move worker bootstrap code into worker_thread_only.js (Joyee Cheung) #25199
  • [020a9ab4ff] - process: split worker IO into internal/worker/io.js (Joyee Cheung) #25199
  • [1c4d7ebeea] - process: move eval and exception bootstrap ito process/execution.js (Joyee Cheung) #25199
  • [7be4a39d9b] - process: make internal/queue_microtask.js more self-contained (Joyee Cheung) #25189
  • [6b5c962a0a] - process: move child process IPC setup condition into node.js (Joyee Cheung) #25130
  • [e93dd4dad6] - process: move POSIX credential accessors into node_credentials.cc (Joyee Cheung) #25066
  • [0e2fbe4ff4] - process: specialize building and storage of process.config (Joyee Cheung) #24816
  • [18052364ce] - process: provide dummy stdio for non-console Windows apps (Anna Henningsen) #20640
  • [1ccaf9a8f1] - repl: indicate if errors are thrown or not (Ruben Bridgewater) #25253
  • [d4ef9220ad] - src: declare process-related C++ methods in node_process.h (Joyee Cheung) #25397
  • [7cbbd68c6b] - src: move process object creation into node_process_object.cc (Joyee Cheung) #25397
  • [a162251b49] - src: clean up node::Init() wrt embedder scenarios (Anna Henningsen) #25370
  • [0095f492af] - src: move InternalMakeCallback and MakeCallback (Joyee Cheung) #25299
  • [497a08af55] - src: remove unused isolate variable (Daniel Bevenius) #25368
  • [d6b4cb3826] - src: use generic helper for splitting strings (Anna Henningsen) #25363
  • [21096f91dd] - src: split LoadEnvironment() at startExecution() (Anna Henningsen) #25320
  • [a8daccce66] - src: move per-process global variables into node::per_process (Joyee Cheung) #25302
  • [582c34d973] - src: use internalBinding('config').hasInspector in JS land (Joyee Cheung) #25291
  • [abc4cc2fb8] - src: refactor tickInfo access (Joyee Cheung) #25200
  • [8abcc76b3a] - src: move process.nextTick and promise setup into node_task_queue.cc (Joyee Cheung) #25163
  • [733af61341] - src: move symbols binding into node_symbols.cc (Joyee Cheung) #25163
  • [57a0cd4d48] - src: move node::errno_string into node_errors.h/cc (Joyee Cheung) #25396
  • [f8ba4880ab] - src: fix compiler warnings (cjihrig) #25165
  • [dde71520ba] - src: move more process methods initialization in bootstrap/node.js (Joyee Cheung) #25127
  • [5fe774104f] - src: dispose of V8 platform in process.exit() (Anna Henningsen) #25061
  • [e9b4d24eda] - src: move arch, platform and release into node_metadata.cc (Joyee Cheung) #25293
  • [43535f56fd] - src: simplify JS Array creation (Anna Henningsen) #25288
  • [de6f1f5e4d] - src: initialize ICU version in per_process::metadata.versions (Joyee Cheung) #25115
  • [e5b4af43fd] - src: move the declaration of http parser versions into node_metadata.h (Joyee Cheung) #25115
  • [64c713a2e7] - src: move GetOpenSSLVersion into node_metadata.cc (Joyee Cheung) #25115
  • [b1500d9a7f] - src: pass isMainThread into bootstrap/node.js directly (Joyee Cheung) #25017
  • [ee461feaee] - src: always compile and store code cache for native modules (Joyee Cheung) #24950
  • [fd913fe365] - src: remove code cache integrity check (Joyee Cheung) #24950
  • [d245c4cd50] - src: use NativeModuleLoader to compile all the bootstrappers (Joyee Cheung) #24775
  • [d1ff107b51] - src: initialize Environment members in class definition (Anna Henningsen) #25369
  • [5b933565ac] - src: check curve ID existence instead of asn flags (Sam Roberts) #25345
  • [807e732832] - src: trace_events: fix race with metadata events (Ali Ijaz Sheikh) #25235
  • [1e60e0afcb] - src: remove unused method declaration (Ben Noordhuis) #25329
  • [f6e341a546] - src: improve ToV8Value() functions (Anna Henningsen) #25288
  • [465d02b817] - src: add NAPI_VERSION_EXPERIMENTAL (Michael Dawson) #25319
  • [d7186252df] - src: unload addons when environment quits (Gabriel Schulhof) #24861
  • [f62e35fd05] - src: fix warning in cares_wrap.cc (cjihrig) #25230
  • [2f5c8b5041] - src: remove unused variable from string_search.h (Anna Henningsen) #25139
  • [e00b326f33] - src: pass along MaybeLocal<> state from URL::ToObject() (Anna Henningsen) #25141
  • [ae86192732] - src: ignore termination exceptions in fatal TryCatch (Anna Henningsen) #25141
  • [c9d49d65a4] - src: fulfill Maybe contract in InlineDecoder (Anna Henningsen) #25140
  • [dd6667d05e] - src: lazily load internalBinding('uv') and build the errmap lazily (Joyee Cheung) #25143
  • [bc66356093] - src: use consistent names for JSStream (Sam Roberts) #25153
  • [99a5af65df] - src: introduce DCHECK macro (cjihrig) #25207
  • [e2a01ca061] - src: use DCHECK_* macros where possible (cjihrig) #25207
  • [73ccfc81c9] - src: fix compiler warnings in node_crypto.cc (cjihrig) #25205
  • [7365b00929] - src: do not leak NodeTraceStateObserver (Anna Henningsen) #25180
  • [37ba20112a] - src,lib: prefer internal/options over process._foo (Anna Henningsen) #25063
  • [7480864c51] - src,lib: make process.binding('config') internal (Masashi Hirano) #23400
  • [577da835d2] - Revert "src,lib: make process.binding('config') internal" (Joyee Cheung) #25446
  • [0b1a9aaa0e] - test: improve known_issues/test-vm-timeout-escape-queuemicrotask (Rich Trott) #25503
  • [3afb4813c8] - test: add test for fs.lchmod (ZYSzys) #25439
  • [067d38fb07] - test: make test-v8-coverage.js more strict (cjihrig) #25289
  • [f6c14bd1e2] - test: rework ephemeralkeyinfo to run in parallel (Sam Roberts) #25409
  • [29b89badb5] - test: check for tls renegotiation errors (Sam Roberts) #25437
  • [23d41fbf01] - test: fix test-net-connect-econnrefused (again) (Rich Trott) #25438
  • [d86a3e8245] - test: remove unnecessary skipIfWorker() (Rich Trott) #25427
  • [82fc9a8889] - test: fix module loading error for AIX 7.1 (Richard Lau) #25418
  • [3f661097d1] - test: improve test coverage of native crypto code (Tobias Nießen) #25400
  • [fe9b6ee88b] - test: move require('https') to after crypto check (Daniel Bevenius) #25388
  • [b545b4c1e9] - test: fix test-net-connect-econnrefused (Rich Trott) #25389
  • [0f290e8f62] - test: remove test/pummel/test-http-client-reconnect-bug.js (Rich Trott) #25387
  • [58de81faa7] - test: remove duplicate encoding tests in favor of WPT (Joyee Cheung) #25321
  • [da34c6c575] - test: use WPT runner to run encoding tests (Joyee Cheung) #25321
  • [8d8c30599a] - test: support more icu requirements in the WPT status file (Joyee Cheung) #25321
  • [d9adceecb6] - test: pull enconding WPT test fixtures (Joyee Cheung) #25321
  • [837ca76a0d] - test: refactor test-fs-watch-non-recursive (Rich Trott) #25386
  • [65dfeeb9a9] - test: fix test/pummel/test-fs-watch-non-recursive.js (Rich Trott) #25386
  • [bdcf8f4784] - test: fix test/pummel/test-fs-watch-file.js (Rich Trott) #25384
  • [be16cc9fd6] - test: set umask for tests (Rich Trott) #25229
  • [3bebcf0180] - test: fix failing assertion (Ruben Bridgewater) #25250
  • [201a8d9dc2] - test: refactor common.expectWarning() (Ruben Bridgewater) #25251
  • [f0202a7604] - test: fix test/pummel/test-fs-largefile.js (Rich Trott) #25372
  • [fc22df9552] - test: more tests for internal/util/types (ZYSzys) #25225
  • [c826af781f] - test: clean up wasm fixtures (Gus Caplan) #25360
  • [c1aa5f0dae] - test: tune test-uv-threadpool-schedule (Rich Trott) #25358
  • [f80fbd2c16] - test: remove redundant fchmod test (ZYSzys) #25282
  • [ce7bbd2ad9] - test: move test-tls-securepair-client out of pummel (Rich Trott) #25222
  • [7ac1db2c31] - test: fix test-tls-securepair-client (Rich Trott) #25222
  • [239d5ec92c] - test: http2 origin length ERR_HTTP2_ORIGIN_LENGTH (Furqan Shaikh) #25296
  • [456f76a48b] - test: remove flag for test-addon-uv-handle-leak (Rich Trott) #25327
  • [523872b37f] - test: fix test-benchmark-zlib (Rich Trott) #25365
  • [379260e4bd] - test: replace internals with public API (Rich Trott) #25309
  • [973b32d3c3] - test: set umask explicitly (Thomas Chung) #25213
  • [c10b131ec9] - test: make sure tmpdir is created before using it (Joyee Cheung) #25224
  • [5a5bc58b4f] - test: remove unused --expose-native-as V8 flag (peterwmwong) #25275
  • [61fc3bfd8e] - test: mark test-util-callbackify flaky on AIX (Rich Trott) #25284
  • [ee8a4a291d] - test: remove unnecessary test flags (cjihrig) #25277
  • [4ca4b546ab] - test: remove util.inherits() usage (ZYSzys) #25245
  • [11c9a82f0f] - test: slightly refactor test-child-process-execsync (Denys Otrishko) #25227
  • [05d1a536cc] - test: remove try/catch in common.isMainThread (Rich Trott) #25249
  • [b0b1414ad7] - test: regression test for uv threadpool congestion (Gireesh Punathil) #23099
  • [c7d2dbd5da] - test: add TODO to encoding tests that can be replaced with WPT (Joyee Cheung) #25155
  • [b45be671db] - test: rename custom encoding tests that cannot be replaced by WPT (Joyee Cheung) #25155
  • [be421823e5] - test: split encoding tests where some cases can be run without ICU (Joyee Cheung) #25155
  • [deceb26238] - test: split test-whatwg-encoding-textdecoder-fatal.js (Joyee Cheung) #25155
  • [a8f5191eb9] - test: split test-whatwg-encoding-textdecoder.js (Joyee Cheung) #25155
  • [7e2ae75a6b] - test: mark two tests as flaky in AIX (Gireesh Punathil) #25126
  • [e182ca9bdc] - test: add more inspect subclassing tests (Ruben Bridgewater) #25192
  • [58af085d9f] - test: refactor stdio handling in test-esm-cjs-main (Richard Lau) #25169
  • [91d1aea311] - test: refactor test-esm-namespace.mjs (Rich Trott) #25117
  • [b7b1d7eb88] - test: fix test-repl-envvars (Anna Henningsen) #25226
  • [95353c7c20] - test,doc: add tests and docs for addon unloading (Anna Henningsen) #24861
  • [a29adef252] - test,worker: simplify common.isMainThread (Rich Trott) #25426
  • [a6df7278d8] - test,worker: refactor test-worker-cleanup-handles (Rich Trott) #25401
  • [453bd18969] - tls: do not confuse TLSSocket and Socket (Sam Roberts) #25153
  • [f6b2ea8bb9] - tls: do not confuse session and session ID (Sam Roberts) #25153
  • [d5ba121e74] - tls: fix initRead socket argument name (Sam Roberts) #25153
  • [acf7802fe3] - tls: remove unused ocsp extension parsing (Sam Roberts) #25153
  • [f0409be2a7] - tools: lint for use of internalBinding() (cjihrig) #25395
  • [2a85cc7cae] - tools: update crypo check rule (cjihrig) #25399
  • [dcbf1d9da4] - tools: add openssl-cli to macos-firewall.sh (Daniel Bevenius) #25385
  • [ee4c46c72f] - tools: update ESLint to 5.12.0 (cjihrig) #25347
  • [1be566bd2f] - tools: replace NULL with nullptr (Juan José Arboleda) #25179
  • [fee8a11634] - tools: remove custom buffer-constructor lint rule (cjihrig) #25261
  • [ee43540aa7] - tools: enable no-buffer-constructor lint rule (cjihrig) #25261
  • [e6b5232381] - tools: enable no-useless-catch lint rule (cjihrig) #25236
  • [f944a75336] - tools: update ESLint to 5.11.1 (cjihrig) #25236
  • [19f1a506ee] - trace_events: move SetupTraceCategoryState into node_trace_events.cc (Joyee Cheung) #25128
  • [6e716ed1d6] - url: return backslashes from fileURLToPath on win (Kevin Smith) #25349
  • [71432c3d06] - util: fixes type in argument type validation error (Ankur Oberoi) #25103
  • [46ec26f8aa] - util: remove eslint comments and rename variables (Ruben Bridgewater) #25255
  • [7ff44105be] - util: remove outdated comment (Ruben Bridgewater) #25255
  • [45a8eb6ed3] - util: simpler module namespace code (Ruben Bridgewater) #25255
  • [a333272fb0] - util: code cleanup (Ruben Bridgewater) #25255
  • [7696d1fe84] - util: switch recurseTimes counter (Ruben Bridgewater) #25255
  • [2e6e4cfaf5] - util: add null prototype support for date (Anto Aravinth) #25144
  • [901d3d0959] - (SEMVER-MINOR) util: inspect ArrayBuffers contents as well (Ruben Bridgewater) #25006
  • [4ca0968918] - util: update comment in util.promisify (Kazushi Kitaya) #25323
  • [37976251b5] - util: fix util.inspect with proxied function (Weijia Wang) #25244
  • [88e73862ca] - util: simplify code (Kazushi Kitaya) #25162
  • [73f3a1c4e6] - util: make inspect aware of RegExp subclasses and null prototype (Ruben Bridgewater) #25192
  • [7f78137c37] - v8: enable inline WASM in serialization API (Anna Henningsen) #25313
  • [2df0d14e18] - win, build: fix building addons on Windows (Bartosz Sosnowski) #25108
  • [ab7284a01a] - worker: remove --experimental-worker flag (Anna Henningsen) #25361
  • [9c5db9375f] - worker: improve JS-side debugging (Anna Henningsen) #25312
  • [65c136f3de] - worker: partially remove --experimental-worker flag (Anna Henningsen) #25404
  • [7bb7b9a61f] - worker: set --experimental-worker always (Anna Henningsen) #25404
  • [dd8795f4a0] - worker: enable transferring WASM modules (Anna Henningsen) #25314
  • [2014eba782] - worker: use engine-provided deleter for SharedArrayBuffers (Anna Henningsen) #25307
  • [7edf8c7e74] - (SEMVER-MINOR) zlib: add brotli support (Anna Henningsen) #24938
  • [e534dcd75e] - zlib: split JS code as prep for non-zlib-backed streams (Anna Henningsen) #24939

addaleax and others added 30 commits December 30, 2018 19:33
In 180f865, the test was changed
so that the `env` argument of `createInternalRepl()` also contained
external environment variables, because keeping them can be necessary
for spawning processes on some systems.

However, this test does not spawn new processes, and relies on the
fact that the environment variables it tests are not already set
(and fails otherwise); therefore, reverting to the original state
should fix this.

Fixes: nodejs#21451
Fixes: nodejs/build#1377
Refs: nodejs#25219

PR-URL: nodejs#25226
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Denys Otrishko <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
PR-URL: nodejs#25216
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Benjamin Gruenbaum <[email protected]>
Reviewed-By: Vse Mozhet Byt <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Remove unused `name` argument that is different from a subsequent `name`
argument in a different but nearby function. This was mildly confusing
to me at first, so hopefully this change clarifies things for others
reading the test.

PR-URL: nodejs#25117
Reviewed-By: James M Snell <[email protected]>
'close' event isn't emitted on a TLS connection if it's been written to
(but 'end' and 'finish' events are).

PR-URL: nodejs#25026
Fixes: nodejs#24984
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Instead of using an undocumented underscore-prefixed property to
configure the writable stream instance to not encode strings as buffers,
use the public API which is an options property passed to the
constructor.

Refs: nodejs#445

PR-URL: nodejs#25201
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
We were previously reading from the wrong offset, namely
the one into the final results array, not the one for the
AAAA results itself, which could have lead to reading
uninitialized or out-of-bounds data.

Also, adjust the test accordingly; TTL values are not
modified by c-ares, but are only exposed for a subset
of all DNS record types.

PR-URL: nodejs#25187
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Khaidi Chu <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
This would otherwise be reported as a memory leak by automated tools.

PR-URL: nodejs#25180
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
During the time between nodejs#24234
being opened and it landing, a V8 update occurred that deprecated
several APIs. This commit fixes the following compiler warnings:

../src/node_crypto.cc:3342:11:
  warning: 'Set' is deprecated: Use maybe version

../src/node_crypto.cc:3345:13:
  warning: 'GetFunction' is deprecated: Use maybe version

PR-URL: nodejs#25205
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Daniel Bevenius <[email protected]>
Revise the "Breaking Changes to Internal Elements" section of
COLLABORATOR_GUIDE.md. Simplify wording, shorten sentences, and remove
redundant material.

PR-URL: nodejs#25190
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anto Aravinth <[email protected]>
PR-URL: nodejs#25207
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
This commit adds a DCHECK macro for consistency with the
other DCHECK_* macros.

PR-URL: nodejs#25207
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Set encoding on the stderr/stdout streams instead of calling
data.toString(). Don't assume the complete expected messages arrive in
a single event.

PR-URL: nodejs#25169
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Daniel Bevenius <[email protected]>
This adds support for inspect to distinguish regular expression
subclasses and ones with null prototype from "normal" regular
expressions.

PR-URL: nodejs#25192
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: James M Snell <[email protected]>
So far we do not test all data types for subclasses and this extends
the existing tests for WeakSet, WeakMap and BigInt64Array.

PR-URL: nodejs#25192
Reviewed-By: Anto Aravinth <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: nodejs#25149
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Denys Otrishko <[email protected]>
Simplify code by using return value of Object.defineProperty directly.

PR-URL: nodejs#25162
Reviewed-By: Vladimir de Turckheim <[email protected]>
Reviewed-By: Masashi Hirano <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Link to the cli docs for --tls-cipher-list, and link to and mention that
NODE_OPTIONS can also be used.

PR-URL: nodejs#25174
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Vse Mozhet Byt <[email protected]>
PR-URL: nodejs#25174
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Vse Mozhet Byt <[email protected]>
sequential/test-inspector-debug-end and
parallel/test-child-process-execfile

Off late these have been failing in AIX. Debugging core dump
suggested that this is a side effect of exit-race that is
described in nodejs#25007
Mart these  as flaky in AIX until that is resolved.

Refs: nodejs#25047
Refs: nodejs#25029

PR-URL: nodejs#25126
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Joyee Cheung <[email protected]>
This commit simplifies the calling of normalizeSpawnArguments()
and normalizeExecArguments(). Specifically, this commit replaces
apply() and the use of arguments with a normal function call.

PR-URL: nodejs#25194
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
The OCSP info from parsing the TLS ClientHello has not been used since
550c263, remove it.

See: nodejs#1464

PR-URL: nodejs#25153
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anatoli Papirovski <[email protected]>
"wrapped" argument is the caller's "socket", not its "wrap", and its
referred to as "socket" in the comments, so call it that.

PR-URL: nodejs#25153
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anatoli Papirovski <[email protected]>
session ID was named session in C++ and key in JS, Name them after what
they are, as the 'newSession' event docs do.

PR-URL: nodejs#25153
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anatoli Papirovski <[email protected]>
Its confusing to call a js class with a handle a "Wrap", usually it's
the C++ handle that is called a Wrap (tcp_wrap, tls_wrap, ...). Its
derived from Socket, and makes a JS stream look like a Socket, so call
it that. Also, remove use of lib/_stream_wrap.js so it can be deprecated
some time.

PR-URL: nodejs#25153
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anatoli Papirovski <[email protected]>
Split test-whatwg-encoding-textdecoder.js into:

- `test-whatwg-encoding-custom-textdecoder.js` which tests
  Node.js-specific behaviors
- `test-whatwg-encoding-custom-textdecoder-api-invalid-label.js` which
  is a customized version of the WPT counterpart
- `test-whatwg-encoding-custom-api-basics.js` which is the part of
  `test-whatwg-encoding-api-basics.js` that can be run without ICU
- `test-whatwg-encoding-api-basics.js` which can be replaced with WPT
  later.

PR-URL: nodejs#25155
Reviewed-By: James M Snell <[email protected]>
Split `test-whatwg-encoding-textdecoder-fatal.js` into

- `test-whatwg-encoding-custom-textdecoder-fatal.js` which
  is a customized version of the WPT that tests for Node.js-specific
  error codes.
- `test-whatwg-encoding-custom-textdecoder-invalid-arg` which
  tests `ERR_INVALID_ARG_TYPE`

PR-URL: nodejs#25155
Reviewed-By: James M Snell <[email protected]>
Split the following tests:

- `test-whatwg-encoding-textdecoder-utf16-surrogates.js`
- `test-whatwg-encoding-textdecoder-ignorebom.js`
- `test-whatwg-encoding-textdecoder-streaming.js`

Each into two files: one that can be run without ICU and one that has
to be run with ICU. The latter can be replaced with WPT later.

PR-URL: nodejs#25155
Reviewed-By: James M Snell <[email protected]>
This removes the `internalBinding('uv')` call from the normal
bootstrap for now, and avoids building `errmap` by default which
expands to a lot of calls into V8.

PR-URL: nodejs#25143
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Daniel Bevenius <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
@BridgeAR
Copy link
Member Author

There has been no argument about #22478, so I kept that commit.

@BridgeAR
Copy link
Member Author

CITGM looked fine, the CI was green (running the CI again after the last change should not be necessary).

Running the V8 CI again before publishing this as release: https://ci.nodejs.org/job/node-test-commit-v8-linux/2018/

@addaleax
Copy link
Member

addaleax commented Jan 17, 2019

There has been no argument about #22478, so I kept that commit.

I think that was before our whitelisting approach for process.binding(), so this is no longer something of concern. 👍

Fwiw, I’d also consider #25361 to be a notable change.

@BridgeAR
Copy link
Member Author

A single V8 test failed continuously: v8tests.mjsunit/wasm/jsapi-harness
https://ci.nodejs.org/job/node-test-commit-v8-linux/2014/testReport/
https://ci.nodejs.org/job/node-test-commit-v8-linux/2018/testReport/
https://ci.nodejs.org/job/node-test-commit-v8-linux/2019/testReport/

It seemed like it also failed on v11.6.1 (see https://ci.nodejs.org/job/node-test-commit-v8-linux/2020/testReport/) so I do not consider this blocking but we should have a closer look at that again.

Notable Changes

* compression / zlib:
  * Added brotli support (Anna Henningsen and Zach Vacura)
    nodejs#24938
* console:
  * Added `inspectOptions` option (Ruben Bridgewater)
    nodejs#24978
* crypto:
  * Always accept private keys as public keys (Tobias Nießen)
    nodejs#25217
* deps:
  * Upgrade npm to v6.5.0 (Jordan Harband)
    nodejs#25234
* fs:
  * Use internalBinding('fs') internally instead of
    process.binding('fs') (Masashi Hirano)
    nodejs#22478
* http(s):
  * Support overriding http\\s.globalAgent (Roy Sommer)
    nodejs#25170
* util:
  * Inspect ArrayBuffers contents closely (Ruben Bridgewater)
    nodejs#25006
* worker:
  * Expose workers by default and remove `--experimental-worker` flag
    (Anna Henningsen) nodejs#25361

PR-URL: nodejs#25537
@BridgeAR
Copy link
Member Author

I added #25361 as notable change.

@MylesBorins
Copy link
Contributor

why wasn't #22478 simply rebased off staging? Not blocking on that but confused on why it needs to exist on the release line.

@targos
Copy link
Member

targos commented Jan 18, 2019

Can we at least remove the **(SEMVER-MAJOR)** labels from the changelog?

@MylesBorins
Copy link
Contributor

Was just reviewing CITGM results and it seems like the node-report failure is legitimate.

@MylesBorins
Copy link
Contributor

it's --> #25258

specifically d718625

Can confirm that reverting the above commit fixes node-reports's test suite

/cc @gabrielf @addaleax @rnchamberlain @richardlau

error:                       | not ok 9 - test/test-api.js # time=231.79ms
error:                       | ---
error:                       | timeout: 300000
error:                       | file: test/test-api.js
error:                       | results:
error:                       | ok: false
error:                       | count: 3
error:                       | pass: 2
error:                       | fail: 1
error:                       | plan:
error:                       | start: 1
error:                       | end: 3
error:                       | exitCode: 1
error:                       | command: /usr/local/bin/node
error:                       | arguments:
error:                       | - test/test-api.js
error:                       | ...

@targos
Copy link
Member

targos commented Jan 18, 2019

@MylesBorins is it only in v11.x-staging or is node-report also broken with master?

@MylesBorins
Copy link
Contributor

MylesBorins commented Jan 18, 2019

@targos looking into that right now. Trying to make a reproduction but it looks like the failure is related to a native module.

here's where I'm at right now with a test

// node-report
if (process.argv[2] === 'child') {
  const api = require('../api');
  api.setEvents('signal');
} else {
  const assert = require('assert');
  const spawn = require('child_process').spawn;

  const child = spawn(process.execPath, [__filename, 'child']);
  child.on('exit', (code) => {
    assert.strictEqual(code, 0, `process exited with code: ${code}`);
  });
}

if we don't setEvents('signal') the below failure does not happen. api is a native module

assert.js:86
  throw new AssertionError(obj);
  ^

AssertionError [ERR_ASSERTION]: process exited with code: null
    at ChildProcess.child.on (/Users/mylesborins/code/node-report/test/test-api.js:10:12)
    at ChildProcess.emit (events.js:188:13)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:254:12)

edit:

here is the SetEvents method

https://github.com/nodejs/node-report/blob/master/src/module.cc#L103-L134

@tniessen
Copy link
Member

It would be great if #25562 could make it into the release.

@BridgeAR BridgeAR merged commit 5ee2bec into nodejs:v11.x Jan 18, 2019
BridgeAR added a commit that referenced this pull request Jan 18, 2019
Notable Changes

* compression / zlib:
  * Added brotli support (Anna Henningsen and Zach Vacura)
    #24938
* console:
  * Added `inspectOptions` option (Ruben Bridgewater)
    #24978
* crypto:
  * Always accept private keys as public keys (Tobias Nießen)
    #25217
* deps:
  * Upgrade npm to v6.5.0 (Jordan Harband)
    #25234
* fs:
  * Use internalBinding('fs') internally instead of
    process.binding('fs') (Masashi Hirano)
    #22478
* http(s):
  * Support overriding http\\s.globalAgent (Roy Sommer)
    #25170
* util:
  * Inspect ArrayBuffers contents closely (Ruben Bridgewater)
    #25006
* worker:
  * Expose workers by default and remove `--experimental-worker` flag
    (Anna Henningsen) #25361

PR-URL: #25537
@BridgeAR
Copy link
Member Author

I could not remove the mentioned commit anymore as I had a signed tag for the release before. I just released this as is and I am preparing a patch release now.

BridgeAR added a commit to BridgeAR/nodejs.org that referenced this pull request Jan 18, 2019
BridgeAR added a commit to nodejs/nodejs.org that referenced this pull request Jan 18, 2019
@MylesBorins
Copy link
Contributor

Please remove both commits from the offending pr

@addaleax
Copy link
Member

@MylesBorins @BridgeAR I’m sorry this bug slipped through – I’ve opened #25577 to address the issue. I’d prefer it if we could fix the bug directly, rather than first reverting the commits in question altogether?

@BridgeAR BridgeAR deleted the v11.7.0-proposal branch January 20, 2020 11:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
brotli Issues and PRs related to the brotli dependency. build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project. tools Issues and PRs related to the tools directory.
Projects
None yet
Development

Successfully merging this pull request may close these issues.