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

v8.13.0 proposal #23974

Merged
merged 129 commits into from Nov 20, 2018
Merged

v8.13.0 proposal #23974

merged 129 commits into from Nov 20, 2018

Conversation

BethGriggs
Copy link
Member

@BethGriggs BethGriggs commented Oct 30, 2018

2018-11-20, Version 8.13.0 'Carbon' (LTS), @BethGriggs

Notable changes

  • assert:
    • backport some assert commits (Ruben Bridgewater) #23223
  • deps:
    • upgrade to libuv 1.23.2 (cjihrig) #23336
    • V8: cherry-pick 64-bit hash seed commits (Yang Guo) #23274
  • http:
    • added aborted property to request (Robert Nagy) #20094
  • http2:
    • graduate from experimental (James M Snell) #22466

Commits

  • [0d241ba385] - assert: ensure .rejects() disallows sync throws (Teddy Katz) #19650
  • [3babc5bb53] - (SEMVER-MINOR) assert: add rejects() and doesNotReject() (feugy) #18023
  • [18071db274] - assert: fix throws trace (Ruben Bridgewater) #18595
  • [562787efb2] - assert: fix strict regression (Ruben Bridgewater) #17903
  • [f2af930ebb] - (SEMVER-MINOR) assert: .throws accept objects (Ruben Bridgewater) #17584
  • [147aeedc8d] - (SEMVER-MINOR) assert: improve assert.throws (Ruben Bridgewater) #17585
  • [c9d84b6d4f] - assert: fix throws and doesNotThrow stack frames (Ruben Bridgewater) #17703
  • [a42d0726ac] - assert: use object argument in innerFail (Ruben Bridgewater) #17582
  • [84948cf14f] - assert: fix .throws operator (Ruben Bridgewater) #17575
  • [c6d94f8fa5] - (SEMVER-MINOR) assert: add strict functionality export (Ruben Bridgewater) #17002
  • [26d145a77f] - async_hooks: add missing async_hooks destroys in AsyncReset (Bastian Krol) #23272
  • [104fbc64ed] - build: update arm64 minimum supported platform (Gibson Fahnestock) #19164
  • [afcf059898] - build: do not cd on vcbuild help (Vse Mozhet Byt) #19291
  • [ca8d4e3450] - build: define NOMINMAX on windows (Ben Noordhuis) #22731
  • [5245d6ac97] - deps: V8: partially revert d868eb7 (Ali Ijaz Sheikh) #24499
  • [62dd1d7bd4] - deps: upgrade to libuv 1.23.2 (cjihrig) #23336
  • [b38190ebb0] - deps: upgrade to libuv 1.23.1 (cjihrig) #22997
  • [d9d541c415] - deps: upgrade to libuv 1.23.0 (cjihrig) #22365
  • [e3d08af7c1] - deps: upgrade to libuv 1.22.0 (cjihrig) #21731
  • [11cb09b25a] - deps: upgrade to libuv 1.21.0 (cjihrig) #21466
  • [c54f4bc8e8] - deps: upgrade to libuv 1.20.3 (cjihrig) #20585
  • [2307653abf] - deps: upgrade to libuv 1.20.2 (cjihrig) #20129
  • [a1b94d35e7] - deps: upgrade libuv to 1.20.0 (cjihrig) #19758
  • [ce65d84537] - deps: backport a8f6869 from upstream V8 (Ben Newman) #22714
  • [7ab253f62e] - deps: V8: cherry-pick 64-bit hash seed commits (Yang Guo) #23274
  • [60f7bfa4d7] - deps: update to nghttp2 1.33.0 (Anna Henningsen) #22649
  • [48f31bdf20] - deps: V8: backport 20 CPU profiler commits from upstream (Peter Marshall) #21558
  • [9e2077afee] - deps: backport 9a23bdd from upstream V8 (Daniel Beckert) #22418
  • [610297e2ab] - doc: improve best practices in onboarding-extras (Rich Trott) #19315
  • [9446bb68ea] - doc: fix minor issues in async_hooks.md (Rich Trott) #19313
  • [5b9af6ea73] - doc: update username and email (Yuta Hiroto) #19338
  • [bae7c608e2] - doc: document http2 timeouts (Sagi Tsofan) #22798
  • [d0be932375] - doc: simplify http2 wording and formatting (Rich Trott) #22541
  • [3fe9293efc] - doc: make createPushResponse() more detailled (MaleDong) #22366
  • [3980ca1840] - doc: clarify http2 docs around class exports (James M Snell) #22247
  • [32bfd7ebfb] - doc: add missing require to example in http2.md (Kevin Simper) #21858
  • [2116ace0ad] - doc: fix http2stream.pushStream error doc (Сковорода Никита Андреевич) #21487
  • [4228141012] - doc: Improve doc for Http2 headers object (Gerhard Stoebich) #21296
  • [11a63ddf48] - doc: fix typo in http2.md (Keita Akutsu) #20843
  • [4f0035485f] - doc: add parameters for Http2Stream:error event (Ujjwal Sharma) #20610
  • [77acef4af2] - doc: add params for ClientHttp2Session:altsvc (Ujjwal Sharma) #20598
  • [448922d0de] - doc: add parameters for Http2Session:stream event (Ujjwal Sharma) #20547
  • [41e89316e6] - doc: add parameters for settings events (Ujjwal Sharma) #20371
  • [1a6a054899] - doc: improve parameters for Http2Session:goaway event (Ujjwal Sharma)
  • [98ed30f3f5] - doc: improve docs for Http2Session:frameError (Ujjwal Sharma) #20236
  • [b32cf8fa40] - doc: add parameters for Http2Session:error event (Ujjwal Sharma) #20206
  • [c0d1423bd3] - doc: close event does not take arguments (Indranil Dasgupta) #20031
  • [459690aca4] - doc: improve style guide text (Rich Trott) #19269
  • [eaabbf4ff0] - doc: make caveat in stream.md more concise (Rich Trott) #19251
  • [0340dd8c8d] - doc: add and unify return statements in crypto.md (Vse Mozhet Byt) #19853
  • [b0d6067d87] - doc: fix 8.12.0 changelog (Myles Borins) #22803
  • [af5cebb326] - doc,http2: add parameters for Http2Session:connect event (Ujjwal Sharma) #20193
  • [57618aae0a] - errors: fix undefined HTTP2 and tls errors (Shailesh Shekhawat) #21564
  • [e3bddeec18] - http: fix undefined error in parser event (Anatoli Papirovski) #20029
  • [1edd7f6393] - (SEMVER-MINOR) http: added aborted property to request (Robert Nagy) #20094
  • [7f34c277ac] - http2: simplify timeout tracking (Anna Henningsen) #19206
  • [18a2b3dc8e] - (SEMVER-MINOR) http2: graduate from experimental (James M Snell) #22466
  • [10576d6e77] - (SEMVER-MINOR) http2: add ping event (James M Snell) #23009
  • [ca933ce577] - http2: do not falsely emit 'aborted' on push (Anatoli Papirovski) #22878
  • [49f44f3b44] - (SEMVER-MINOR) http2: add origin frame support (James M Snell) #22956
  • [9f7934159e] - http2: check if stream is not destroyed before sending trailers (Matteo Collina) #22896
  • [2de17ead89] - (SEMVER-MINOR) http2: add http2stream.endAfterHeaders property (James M Snell) #22843
  • [805bf40bfd] - http2: don't expose the original socket through the socket proxy (Szymon Marczak) #22650
  • [6a396ff911] - http2: throw better error when accessing unbound socket proxy (James M Snell) #22486
  • [348cde07fd] - http2: emit timeout on compat request and response (James M Snell) #22252
  • [cc561cc5a7] - http2: explicitly disallow nested push streams (James M Snell) #22245
  • [5c3edd3479] - http2: avoid race condition in OnHeaderCallback (James M Snell) #22256
  • [f2f66b4cfb] - http2: remove streamError from docs (James M Snell) #22246
  • [d602c7a2ed] - http2: release request()'s "connect" event listener after it runs (James Ide) #21916
  • [745e1e6192] - http2: remove unused nghttp2 error list (Anna Henningsen) #21827
  • [e5175e6596] - http2: remove waitTrailers listener after closing a stream (RidgeA) #21764
  • [071a022dbc] - http2: order declarations in core.js (Rich Trott) #21689
  • [1cdf93ecdc] - http2: pass incoming set-cookie header as array (Gerhard Stoebich) #21360
  • [20b72fc94d] - http2: track memory allocated by nghttp2 (Anna Henningsen) #21374
  • [e9e4f434b3] - http2: fix memory leak when headers are not emitted (Anna Henningsen) #21373
  • [0f3e65099d] - http2: fix memory leak for uncommon headers (Anna Henningsen) #21336
  • [0a8d0861f2] - http2: safer Http2Session destructor (Anatoli Papirovski) #21194
  • [3c8c53f4f4] - http2: fix premature destroy (Anatoli Papirovski) #21051
  • [b22266cc97] - http2: force through RST_STREAM in destroy (Anatoli Papirovski) #21016
  • [91be1dc2a5] - http2: delay closing stream (Anatoli Papirovski) #20997
  • [0a6672fbcf] - http2: fix several serious bugs (Anatoli Papirovski) #20772
  • [b0c92cadfa] - http2: fix end without read (Anatoli Papirovski) #20621
  • [d1b78252b1] - http2: avoid bind and properly clean up in compat (Robert Nagy) #20374
  • [395ce845da] - http2: rename http2_state class to Http2State (Daniel Bevenius) #20423
  • [74192ddb66] - http2: reduce require calls in http2/core (Daniel Bevenius) #20422
  • [28a6e59bd3] - http2: fix ping callback (Ruben Bridgewater) #20311
  • [41dca9e851] - http2: fix responses to long payload reqs (Anatoli Papirovski) #20084
  • [fa5a3809a3] - http2: refactor how trailers are done (James M Snell) #19959
  • [5862d0372c] - http2: fix ping duration calculation (James M Snell) #19956
  • [2ae98ce7cb] - lib: define printErr() in script string (cjihrig) #19285
  • [b0e3ce9c4b] - net,http2: refactor _write and _writev (Ujjwal Sharma) #20643
  • [0187e3bef8] - process: avoid using the same fd for ipc and stdio (cjihrig) #21466
  • [5b2f6508f9] - src: make AsyncWrap constructors delegate (Daniel Bevenius) #19366
  • [9e8f4e5047] - src: remove unused uv.h include from async_wrap.cc (Daniel Bevenius) #19342
  • [042434f9af] - src: fix indenting of wrap->EmitTraceEventBefore (Daniel Bevenius) #19340
  • [3ad10e5789] - src: add extractPromiseWrap function (Daniel Bevenius) #19340
  • [b67bf38f31] - src: fix fs.write() externalized string handling (Ben Noordhuis) #18216
  • [0157e3ebca] - src,deps: add ABI safe use of CheckMemoryPressure (Ali Ijaz Sheikh) #24499
  • [dbc7d9baae] - test: read() on dir on AIX does not return EISDIR (Ben Noordhuis) #23330
  • [3cd4462370] - test: ensure failed assertions cause build to fail (Teddy Katz) #19650
  • [9f15bc40b8] - test: skip failing tests for osx mojave (jn99) #23550
  • [aba1ff202c] - test: refactor test-fs-readfile-tostring-fail (Rich Trott) #19404
  • [38ed6c2b25] - test: fix flaky test-http2-ping-flood (Rich Trott) #19395
  • [b407060556] - test: fix flaky test-http2-settings-flood (Rich Trott) #19349
  • [069fd79424] - test: improve debugging information for http2 test (Rich Trott) #23058
  • [c0f8e49c32] - test: remove setImmediate from timeout test (Rich Trott) #23058
  • [b66cba0766] - test: add test-http2-large-file sequential test (James M Snell) #22254
  • [7ea08eedac] - test: improve reliability in http2-session-timeout (Rich Trott) #22026
  • [dcf04dc7df] - test: refactor test-http2-compat-serverresponse-finished.js (Anto Aravinth) #21929
  • [322f39d490] - test: minor adjustments to test-http2-respond-file (Anna Henningsen) #21098
  • [5d29e2c631] - test: fix flaky http2-session-unref (Anatoli Papirovski) #20772
  • [e5f8b08305] - test: improve reliability of http2-session-timeout (Rich Trott) #20692
  • [c30a8f468d] - test: fix flaky http2-flow-control test (Anatoli Papirovski) #20556
  • [aa341d1d3d] - test: verify arguments length in common.expectsError (Ruben Bridgewater) #20311
  • [c7ba556264] - test: removed assert.strictEqual message (kailash k yogeshwar) #20223
  • [5abe246a44] - test: add strictEqual method to assert (Christine E. Taylor) #20189
  • [887417eb37] - test: remove message from strictEqual assertions (Bryan Azofeifa) #20174
  • [fe3836a871] - test: delete test/parallel/test-regress-GH-4948 (Ujjwal Sharma)
  • [4bcdc1b83c] - test: fix assertion argument order (Rich Trott) #19264
  • [534bc82578] - test: name test files appropriately (Ujjwal Sharma) #19212
  • [d58867a6a7] - test: call gc() explicitly to avoid OOM (Refael Ackermann) #22301
  • [8209ccb313] - test: prepare test-assert for strictEqual linting (Rich Trott) #22849
  • [52b21caff2] - test: remove string literal from assertion (Rich Trott) #22849
  • [976d55f9e3] - test: remove string literal from assertion (Rich Trott) #22849
  • [702d67f4c4] - test: refactor flag check (Rich Trott) #22849
  • [e9416d4f67] - test: simplify assertion in http2 tests (Rich Trott) #22849
  • [f2158f30fb] - test: improve assertion in test-inspector.js (Rich Trott) #22849
  • [f5985c734c] - tls,http2: handle writes after SSL destroy more gracefully (Anna Henningsen) #18987

cjihrig and others added 30 commits September 13, 2018 10:49
This commit moves the printErr() function, used by the
tick profiler processer, into the code string passed to
vm.runInThisContext().

PR-URL: #19285
Fixes: #19260
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
PR-URL: #22803
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Conform return statements to the style guide and tool parsers.

Also bring back a description fragment
that seems to be erroneously deleted in
1e07acd

Backport-PR-URL: #22870
PR-URL: #19853
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
Remove an unecessary string literal from assert.strictEqual() call in
test-inspector.js. The string literal is printed instead of the value
that causes an error. Removing the string literal allows the value that
caused the error to be printed. This improves the troubleshooting
experience when the test fails due to that assertion.

Backport-PR-URL: #22888
PR-URL: #22849
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
In test-http2-timeout-large-write.js and
test-http2-timeout-large-write-file.js:

Use assert.ok() on a boolean that the test itself creates and sets,
rather than assert.strictEqual(). This allows us to use a static message
without running afoul of the upcoming "do not use string literals with
assert.strictEqual()" lint rule.

Backport-PR-URL: #22888
PR-URL: #22849
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Refactor test-vm-run-in-new-context so that check for `--expose-gc` flag
will not run afoul of an upcoming lint rule that checks that string
literals are not used for the `message` argument of
`assert.strictEqual()`.

Backport-PR-URL: #22888
PR-URL: #22849
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Remove string literal from `assert.strictEqual()` call `message`
parameter and make it a comment above the assertion instead.

Backport-PR-URL: #22888
PR-URL: #22849
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Remove string literal as assertion message in call to
assert.strictEqual() in test-dns-resolveany-bad-ancount.

Backport-PR-URL: #22888
PR-URL: #22849
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Make minor modifications to test-assert.js to prepare it for linting
rule that forbids the use of string literals for the third argument of
assert.strictEqual().

Backport-PR-URL: #22888
PR-URL: #22849
Reviewed-By: Teddy Katz <teddy.katz@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
This might otherwise result in a hard crash when trying
to write to a socket after a sudden disconnect.

Note that the test here uses an aborted `h2load` run to create
the failing requests; That’s far from ideal, but it provides
a reasonably reliably reproduction at this point.

Backport-PR-URL: #22924
PR-URL: #18987
Fixes: #18973
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
PR-URL: #22301
Refs: nodejs/reliability#12
Refs: #16354
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Original commit message:

    [Isolate] Fix Isolate::PrintCurrentStackTrace for interpreted frames

    Previously we were getting the code object from the stack, so printed incorrect
    position details for interpreted frames.

    BUG=v8:7916

    Change-Id: I2f87584117d88b7db3f3b9bdbfe793c4d3e33fe9
    Reviewed-on: https://chromium-review.googlesource.com/1126313
    Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#54253}

Refs: v8/v8@9a23bdd
Fixes: #21988

PR-URL: #22418
Refs: #22338
Reviewed-By: Matheus Marchini <mat@mmarchini.me>
Reviewed-By: Ujjwal Sharma <usharma1998@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
PR-URL: #19251
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Rename the tests appropriately alongside mentioning the subsystem.
Also, make a few basic changes to make sure the test conforms
to the standard test structure.

This renames:
- test-regress-GH-1531
- test-regress-GH-2245
- test-regress-GH-3238
- test-regress-GH-3542
- test-regress-GH-3739
- test-regress-GH-4256

PR-URL: #19212
Refs: #19105
Refs: https://github.com/nodejs/node/blob/master/doc/guides/writing-tests.md#test-structure
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
[cpu-profiler] Fix bugs and add tests for JITLineInfoTable
https://chromium.googlesource.com/v8/v8/+/4feb5ce7fd5ef8c933f3f5dff2eca1173f85c1e9

[cpu-profiler] Fix incorrect line number calculation.
https://chromium.googlesource.com/v8/v8/+/ddb2856f39632f9e9f623d3cdb4600e636172031

[cpu-profiler] Use std::unordered_map for hashmaps.
https://chromium.googlesource.com/v8/v8/+/35985ce6abc80b85264fe3b87b246fed5f1806e6

[cpu-profiler] Do not store CodeEntries between profiling sessions.
https://chromium.googlesource.com/v8/v8.git/+/8ec48b2117b8092c4956f1ee11a0c85bec3ba1f8

[cpu-profiler] Remove name_prefix field from CodeEntry
https://chromium.googlesource.com/v8/v8.git/+/6f72af25fe43218b60c68129073ddcddb631566e

[cpu-profiler] Extract rare used fields of CodeEntry to an optional object.
https://chromium.googlesource.com/v8/v8.git/+/fcc1ebb55aab38013855834f556f6e874e0eb8b3

[profiler] Refactoring: decouple StringsStorage from Heap object.
https://chromium.googlesource.com/v8/v8/+/a31320f59c911a277566d6c2fa0b0f2ac83e0748

[cpu-profiler] Add a HandleScope to limit memory consumption.
https://chromium.googlesource.com/v8/v8.git/+/3e9f8a4f635e2d946651d6a4df81378266f32dc9

[cpu-profiler] Lazily create CPU profiler.
https://chromium.googlesource.com/v8/v8/+/1426ea1d6d45be0b4d9476bdb5bf3f27cfe578a0

[cpu-profiler] turn several std::map's into unordered_map's.
https://chromium.googlesource.com/v8/v8/+/3ed5dfb8a3cbc7aa0017bd01c2fdd6227485b8ad

[cpu-profiler] Eagerly delete not used CodeEntry'es
https://chromium.googlesource.com/v8/v8.git/+/c6c28f7a412a88df12055e953630a9e93cc64d49

[cpu-profiler] Move bailout reason into rare_info struct
https://chromium.googlesource.com/v8/v8.git/+/29ea4d1ef5360e71c61ecf8db6a5a0a0c3391fd1

[cpu-profiler] Save space in the SourcePositionTable by using a vector.
https://chromium.googlesource.com/v8/v8.git/+/1cb19f0e0a93adbac8c11bc906f951bd8098722d

[cpu-profiler] Only store deopt inline frames for functions that need it
https://chromium.googlesource.com/v8/v8.git/+/0bfcbdd4726920755e51dab28c18ab93e050819b

[cpu-profiler] Add a new profiling mode with a more detailed call tree.
https://chromium.googlesource.com/v8/v8.git/+/ecae80cdb350dde1e654c531b56f5b6c44dc8c77

[cpu-profiler] Reuse free slots in code_entries_
https://chromium.googlesource.com/v8/v8.git/+/3e1126bf15e62c433c4e9cb21316d182f691c63a

[cpu-profiler] Use instruction start as the key for the CodeMap
https://chromium.googlesource.com/v8/v8.git/+/ba752ea4c50713dff1e94f45a79db3ba968a8d66

[cpu-profiler] Add flag to always generate accurate line info.
https://chromium.googlesource.com/v8/v8/+/56baf56790de439b3f69e887e94beb3b301ed77c

[cpu-profiler] Turn on detailed line info for optimized code
https://chromium.googlesource.com/v8/v8/+/84894ce6d2af7feb9e1f5574409355120887326c

[cpu-profiler] Separate the flags for generating extra line information
https://chromium.googlesource.com/v8/v8/+/30ff6719db441cc7ef220d449970cc169067e256

Backport-PR-URL: #21558
PR-URL: #21558
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Rod Vagg <rod@vagg.org>
Build with `-DNOMINMAX` to stop `<windows.h>` from defining macros that
conflict with `std::min()` and `std::max()`.

Backport-PR-URL: #22731
PR-URL: #18216
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>

PR-URL: #22731
* Respect `encoding` argument when the string is externalized.

* Copy the string when the write request can outlive the externalized
  string.

This commit removes `StringBytes::GetExternalParts()` because it is
fundamentally broken.

Fixes: #18146
Fixes: #22728
Backport-PR-URL: #22731
PR-URL: #18216

Reviewed-By: James M Snell <jasnell@gmail.com>
Fix the assertion argument order so that it will report "actual" and
"expected" correctly when the test fails.

Ref: #19263

PR-URL: #19264
Refs: #19263
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Tobias Nießen <tniessen@tnie.de>
* Specify that personal pronouns are OK in colloquial documentation
  rather than just pronouns. Pronouns are OK in all documentation. (For
  example, "it" is a pronoun and is acceptable in all types of
  documentation.) Specify "personal pronouns" for clarity.
* more colloquial -> colloquial
* like -> such as
* Remove "mass nouns" as no mass nouns are given as examples. Plural
  nouns seems to be what was meant, so use that instead.
* Repeat "gender-neutral" to make it clear that it refers to both terms
  and not merely the first term it appears before.
* Remove "non-comprehensive examples". Examples are, by definition,
  non-comprehensive. No need to announce that the examples are examples.
  It is obvious.

PR-URL: #19269
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Backport-PR-URL: #22850
PR-URL: #19956
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Explicitly added in the docs that the close event does not expect
any arguments when invoked.

Fixes: #20018

Backport-PR-URL: #22850
PR-URL: #20031
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Rather than an option, introduce a method and an event...

```js
server.on('stream', (stream) => {
  stream.respond(undefined, { waitForTrailers: true });
  stream.on('wantTrailers', () => {
    stream.sendTrailers({ abc: 'xyz'});
  });
  stream.end('hello world');
});
```

This is a breaking change in the API such that the prior
`options.getTrailers` is no longer supported at all.
Ordinarily this would be semver-major and require a
deprecation but the http2 stuff is still experimental.

Backport-PR-URL: #22850
PR-URL: #19959
Reviewed-By: Yuta Hiroto <hello@hiroppy.me>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
When an AssertionError happens, the value of headers['set-cookie']
is not reported. That information is useful for debugging.
Hence removed the value passed as the message in deepStrictEqual
assertions of test/parallel/test-http2-cookies.js

Backport-PR-URL: #22850
PR-URL: #20174
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Add parameters for the callback for the Http2Session:connect event
inline with the pattern in the rest of the documentation.

Refs: nodejs/help#877 (comment)

Backport-PR-URL: #22850
PR-URL: #20193
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Adds strictEqual method to assert on stream.session.alpnProtocol
to verify expected value 'h2'. This changes 'h2' from an assertion
error message to the value expected from stream.session.alpnProtocol.

Backport-PR-URL: #22850
PR-URL: #20189
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Add parameters for the callback for the Http2Session:error event
inline with the pattern in the rest of the documentation.

Refs: nodejs/help#877 (comment)

Backport-PR-URL: #22850
PR-URL: #20206
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Improve documentation regarding the callback parameters for the
frameError event for instances of Http2Session, making it inline with
the currently accepted structure, like the rest of the documentation.

Refs: nodejs/help#877 (comment)

Backport-PR-URL: #22850
PR-URL: #20236
Reviewed-By: Vse Mozhet Byt <vsemozhetbyt@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Backport-PR-URL: #22850
PR-URL: #20094
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Backport-PR-URL: #22850
PR-URL: #20223
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
@MylesBorins
Copy link
Member

One more CI: https://ci.nodejs.org/job/node-test-pull-request/18760/
V8-CI looks green
CITGM: https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker/1634/

Could have sworn we had an RC but don't see any on the download page

rc.1: https://nodejs.org/download/rc/v8.13.0-rc.1/

@MylesBorins
Copy link
Member

CI looks good. One more citgm to compare failures. Was not able to re-create the BSON failure locally

https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker/1635/

@MylesBorins
Copy link
Member

BSON was failing due to now requiring headless chrome. Other failures cannot be re-created on other systems / are flaky fails.

One more citgm: https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker/1636/

One more citgm: https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker-nobuild/​421/ for a comparison against v8.12.0

Copy link
Member

@mcollina mcollina left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@MylesBorins
Copy link
Member

I think we need to include #24499 to fix an abi breakage that ended up in 8.12.0

Also here's a CITGM of 8.12.0 for comparison: https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker/1637/

BethGriggs added a commit that referenced this pull request Nov 20, 2018
Notable changes:

* **assert**:
  - backport some assert commits (Ruben Bridgewater) [#23223](#23223)
* **deps**:
  - V8: cherry-pick 64-bit hash seed commits (Yang Guo) [#23274](#23274)
* **http**:
  - added aborted property to request (Robert Nagy) [#20094](#20094)
* **http2**:
  - backport http2 changes from 10.x (Kelvin Jin) [#22850](#22850)

PR-URL: #23974
d868eb7 ended up being an inadvertant ABI change. Remove the call to
CheckMemoryPressure from the header itself.

PR-URL: #24499
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
CheckMemoryPressure cannot be used ABI-safely from v8.h. Add a alternate
implementation of AdjustAmountOfExternalAllocatedMemory and then use
that from Node.

PR-URL: #24499
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
@MylesBorins
Copy link
Member

MylesBorins commented Nov 20, 2018

one last CI: https://ci.nodejs.org/job/node-test-pull-request/18808/
one more citgm: https://ci.nodejs.org/view/Node.js-citgm/job/citgm-smoker/1638/

🤞🏽

edit:

CI is green and CITGM has no new failure... moving forward with release

Notable changes:

* **assert**:
  - backport some assert commits (Ruben Bridgewater)
    [#23223](#23223)
* **deps**:
  - upgrade to libuv 1.23.2 (cjihrig)
    [#23336](#23336)
  - V8: cherry-pick 64-bit hash seed commits (Yang Guo)
    [#23274](#23274)
* **http**:
  - added aborted property to request (Robert Nagy)
    [#20094](#20094)
* **http2**:
  - graduate from experimental (James M Snell)
    [#22466](#22466)

PR-URL: #23974
@MylesBorins MylesBorins merged commit 90c7bfa into v8.x Nov 20, 2018
MylesBorins added a commit that referenced this pull request Nov 20, 2018
MylesBorins pushed a commit that referenced this pull request Nov 20, 2018
Notable changes:

* **assert**:
  - backport some assert commits (Ruben Bridgewater)
    [#23223](#23223)
* **deps**:
  - upgrade to libuv 1.23.2 (cjihrig)
    [#23336](#23336)
  - V8: cherry-pick 64-bit hash seed commits (Yang Guo)
    [#23274](#23274)
* **http**:
  - added aborted property to request (Robert Nagy)
    [#20094](#20094)
* **http2**:
  - graduate from experimental (James M Snell)
    [#22466](#22466)

PR-URL: #23974
@benjamn
Copy link
Contributor

benjamn commented Nov 20, 2018

Awesome, thanks everyone!

One question about the release process: I noticed there's no node-v8.13.0-linux-x86.tar.xz file in http://nodejs.org/dist/latest-v8.x/ yet. Will that magically appear once all the CI jobs have finished, or is that something a human would have to trigger?

@MylesBorins
Copy link
Member

@benjamn it appears the linux-x86 tarballs didn't end up in there at all. We'll get those built and released ASAP.

/cc @nodejs/build any idea why these assets didn't build?

@MylesBorins
Copy link
Member

@benjamingr we found the problem in our infra that caused this... assets are being built and will be promoted asap

@MylesBorins
Copy link
Member

@benjamn linux 32 is released!

still waiting on arm6 builds to complete

@rvagg rvagg deleted the v8.13.0-proposal branch November 23, 2018 06:44
@rvagg
Copy link
Member

rvagg commented Nov 23, 2018

@MylesBorins please promote the armv6 binaries, they're waiting in staging.

@MylesBorins
Copy link
Member

MylesBorins commented Nov 23, 2018 via email

@kelp404
Copy link

kelp404 commented Nov 25, 2018

Hello,

When will v8.13.0 be published on Docker Hub? https://hub.docker.com/_/node/

@cjihrig
Copy link
Contributor

cjihrig commented Nov 25, 2018

cc: @nodejs/docker

@SimenB
Copy link
Member

SimenB commented Nov 25, 2018

Hey, sorry about the delay! This fell through the cracks in between other updates we're doing to the images.

Follow docker-library/official-images#5102. Once that's merged, it should be available after a couple of hours.

refack pushed a commit to refack/node that referenced this pull request Jan 14, 2019
Notable changes:

* **assert**:
  - backport some assert commits (Ruben Bridgewater)
    [nodejs#23223](nodejs#23223)
* **deps**:
  - upgrade to libuv 1.23.2 (cjihrig)
    [nodejs#23336](nodejs#23336)
  - V8: cherry-pick 64-bit hash seed commits (Yang Guo)
    [nodejs#23274](nodejs#23274)
* **http**:
  - added aborted property to request (Robert Nagy)
    [nodejs#20094](nodejs#20094)
* **http2**:
  - graduate from experimental (James M Snell)
    [nodejs#22466](nodejs#22466)

PR-URL: nodejs#23974
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. http2 Issues or PRs related to the http2 subsystem. meta Issues and PRs related to the general management of the project.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet