-
Notifications
You must be signed in to change notification settings - Fork 29.6k
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
http: preserve raw header duplicates in writeHead after setHeader calls #50394
http: preserve raw header duplicates in writeHead after setHeader calls #50394
Conversation
writeHead accepts a raw header array, which is intended to allow directly specifying raw header details, such as ordering, duplicates and header key casing. When used by itself this works correctly. However, if setHeader was called first, it effectively changed the behaviour of subsequent writeHead calls, so that even if a raw header array was provided, duplicates were collapsed, losing raw header data. This change preserves the raw headers passed to writeHead, while still maintaining the 'writeHead overwrites setHeader' behaviour.
Review requested:
|
The PR looks fine in general. @nodejs/http WDYT? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm -1 for this change for two reasons:
writeHead
is the fast path for writing out headers, adding a loop is probably not a goot idea. This should land only if there are no performance regressions, but I expect them to be there.- this is a breaking change. I think Fastify relies on the previous behavior of this function.
But isn't this only in the already slow path? Does it really matter? If you want performance you should only use |
@ronag Yes, that only happens in the slow path. I agree it will probably affect performance, but as Robert said it's a very weird scenario. Personally my choice would be not to allow to mix the APIs but unfortunately we already have it there so... |
@mcollina are you sure? Can you share more information on that? It sounds surprising to me that Fastify would depend on passing duplicates values to writeHead while expecting them not to be sent because of this bug. Note that this doesn't have any effect if you just use Imo 'breaking' is technically debatable, since the existing behaviour is clearly wrong and disagrees with the docs and behaviour elsewhere, but it's yes sensible to do as a semver major anyway just to reduce the risk of unexpected response changes.
It will be possible to improve performance here I'd expect, reimplementing more of the header update logic inline, rather than calling into both remove/appendHeader (which will mildly duplicate some checks) but it'll be significantly more complicated & awkward to maintain, risks diverging behaviour, and this is explicitly the slow path anyway. Happy to explore that if people would prefer, but personally I'd lean towards keeping it simpler, and recommending that people don't mix setHeader/writeHead in performance-sensitive environments. I think that's a reasonable recommendation that most code written for such scenarios will likely be doing anyway. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
I didn't notice the extra loop only applied to the array variant of writeHead
. I don't think this is a popular API and would slow down anyone.
Having said that, I think we might want to have a fast-path to avoid the extra loop in case there are no existing headers set.
One failure in CI here (in node-test-binary-armv7l), but definitely seems unrelated. That test is failing because the git clone fails:
and then the subsequent test steps fails due to missing tests, with:
Suggests this will probably pass happily if somebody can retrigger the CI. |
Landed in 4b76cce |
Notable Changes: TBD Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: TBD Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Notable Changes: TBD Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: TBD Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Notable Changes: TBD Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Notable Changes: TBD Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Notable Changes: TBD Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Notable Changes: TBD Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Semver-Major Commits: build: * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52293 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #52293 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (Stefan Stojanovic) #52293 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52293 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52293 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52293 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52293 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52293 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 12.3.219.16 (Michaël Zasso) #52293 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 126 (Michaël Zasso) #52293 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Semver-Major Commits: build: * (SEMVER-MAJOR) compile with C++20 support on Windows (StefanStojanovic) #52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52293 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) #52465 * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #52465 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #52465 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52465 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52465 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52465 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52465 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52465 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52465 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52465 * (SEMVER-MAJOR) update V8 to 12.4.254.14 (Michaël Zasso) #52465 * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) #52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #52293 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (Stefan Stojanovic) #52293 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52293 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52293 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52293 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52293 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52293 * (SEMVER-MAJOR) update V8 to 12.3.219.16 (Michaël Zasso) #52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 127 (Michaël Zasso) #52465 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 126 (Michaël Zasso) #52293 * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) update V8 gypfiles for 12.4 (Michaël Zasso) #52465 * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Semver-Major Commits: build: * (SEMVER-MAJOR) compile with C++20 support on Windows (StefanStojanovic) #52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52293 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) #52465 * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #52465 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #52465 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52465 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52465 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52465 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52465 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52465 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52465 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52465 * (SEMVER-MAJOR) update V8 to 12.4.254.14 (Michaël Zasso) #52465 * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) #52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #52293 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (Stefan Stojanovic) #52293 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52293 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52293 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52293 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52293 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52293 * (SEMVER-MAJOR) update V8 to 12.3.219.16 (Michaël Zasso) #52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 127 (Michaël Zasso) #52465 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 126 (Michaël Zasso) #52293 * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) update V8 gypfiles for 12.4 (Michaël Zasso) #52465 * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Semver-Major Commits: build: * (SEMVER-MAJOR) compile with C++20 support on Windows (StefanStojanovic) #52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #52293 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) #50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) #49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) #52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) #51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) #50973 deps: * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) #52465 * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) #52465 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #52465 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52465 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52465 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52465 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52465 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52465 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52465 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52465 * (SEMVER-MAJOR) update V8 to 12.4.254.14 (Michaël Zasso) #52465 * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) #52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #52293 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (Stefan Stojanovic) #52293 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #52293 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #52293 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #52293 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #52293 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #52293 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #52293 * (SEMVER-MAJOR) update V8 to 12.3.219.16 (Michaël Zasso) #52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) #51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) #51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) #51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) #51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) #50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) #50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) #50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) #50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) #50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) #50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) #50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) #50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) #50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) #50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) #50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) #51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) #51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) #50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) #52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) #51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) #50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) #50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) #51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) #51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) #52172 src: * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 127 (Michaël Zasso) #52465 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 126 (Michaël Zasso) #52293 * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) #51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) #51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) #51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) #51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) #50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) #50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) #50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) #52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) #51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) #51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) #50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) #50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) #50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) #52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) #51577 tools: * (SEMVER-MAJOR) update V8 gypfiles for 12.4 (Michaël Zasso) #52465 * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) #51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) #51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) #51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) #50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) #50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) #51360 PR-URL: #52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Semver-Major Commits: build: * (SEMVER-MAJOR) compile with C++20 support on Windows (StefanStojanovic) nodejs#52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) reset embedder string to "-node.0" (Michaël Zasso) nodejs#50115 console: * (SEMVER-MAJOR) treat non-strings as separate argument in console.assert() (Jacob Hummer) nodejs#49722 crypto: * (SEMVER-MAJOR) runtime deprecate hmac constructor (Marco Ippolito) nodejs#52071 * (SEMVER-MAJOR) runtime deprecate Hash constructor (Marco Ippolito) nodejs#51880 * (SEMVER-MAJOR) move createCipher and createDecipher to eol (Marco Ippolito) nodejs#50973 deps: * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) nodejs#52465 * (SEMVER-MAJOR) V8: revert CL 5331688 (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) nodejs#52465 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) update V8 to 12.4.254.14 (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) V8: cherry-pick cd10ad7cdbe5 (Joyee Cheung) nodejs#52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) nodejs#52293 * (SEMVER-MAJOR) silence internal V8 deprecation warning (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (Stefan Stojanovic) nodejs#52293 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) update V8 to 12.3.219.16 (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) V8: backport c4be0a97f981 (Richard Lau) nodejs#51362 * (SEMVER-MAJOR) V8: cherry-pick f8d5e576b814 (Richard Lau) nodejs#51362 * (SEMVER-MAJOR) patch V8 to support compilation with MSVC (StefanStojanovic) nodejs#51362 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) update V8 to 12.2.281.27 (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) V8: cherry-pick de611e69ad51 (Keyhan Vakil) nodejs#50115 * (SEMVER-MAJOR) V8: cherry-pick 0fd478bcdabd (Joyee Cheung) nodejs#50115 * (SEMVER-MAJOR) V8: cherry-pick 0f9ebbc672c7 (Chengzhong Wu) nodejs#50115 * (SEMVER-MAJOR) V8: cherry-pick 8f0b94671ddb (Lu Yahan) nodejs#50115 * (SEMVER-MAJOR) V8: cherry-pick f7d000a7ae7b (Luke Albao) nodejs#50115 * (SEMVER-MAJOR) V8: cherry-pick 25902244ad1a (Joyee Cheung) nodejs#50115 * (SEMVER-MAJOR) patch V8 to avoid duplicated zlib symbol (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) remove usage of a C++20 feature from V8 (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) avoid compilation error with ASan (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) disable V8 concurrent sparkplug compilation (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) silence irrelevant V8 warning (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) always define V8_EXPORT_PRIVATE as no-op (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) update V8 to 11.9.169.7 (Michaël Zasso) nodejs#50115 doc: * (SEMVER-MAJOR) runtime deprecate flag --trace-atomics-wait (marco-ippolito) nodejs#51179 * (SEMVER-MAJOR) bump FreeBSD experimental support to 13.2 (Michaël Zasso) nodejs#51231 * (SEMVER-MAJOR) add migration paths for deprecated utils (Marco Ippolito) nodejs#50488 fs: * (SEMVER-MAJOR) runtime deprecate fs.Stats constructor (Marco Ippolito) nodejs#52067 * (SEMVER-MAJOR) use private fields instead of symbols for `Dir` (Jungku Lee) nodejs#51037 * (SEMVER-MAJOR) make stats date fields lazy (Yagiz Nizipli) nodejs#50908 http: * (SEMVER-MAJOR) preserve raw header duplicates in writeHead after setHeader calls (Tim Perry) nodejs#50394 lib: * (SEMVER-MAJOR) enable WebSocket by default (Aras Abbasi) nodejs#51594 lib,test: * (SEMVER-MAJOR) handle new Iterator global (Michaël Zasso) nodejs#51362 process: * (SEMVER-MAJOR) wait for `'exit'` before printing result (Antoine du Hamel) nodejs#52172 src: * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 127 (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 126 (Michaël Zasso) nodejs#52293 * (SEMVER-MAJOR) use supported API to get stalled TLA messages (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) update default V8 platform to override functions with location (Etienne Pierre-Doray) nodejs#51362 * (SEMVER-MAJOR) add missing TryCatch (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 124 (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) use non-deprecated v8::Uint8Array::kMaxLength (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) adapt to v8::Exception API change (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) use non-deprecated version of CreateSyntheticModule (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) update NODE_MODULE_VERSION to 122 (Michaël Zasso) nodejs#50115 stream: * (SEMVER-MAJOR) bump default highWaterMark (Robert Nagy) nodejs#52037 test: * (SEMVER-MAJOR) mark test-worker-arraybuffer-zerofill as flaky (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) mark some GC-related tests as flaky (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) allow slightly more diff in memory leak test (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) replace always-opt flag with alway-turbofan (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) remove tests that create very large buffers (Michaël Zasso) nodejs#50115 * (SEMVER-MAJOR) adapt to new V8 trusted memory spaces (Michaël Zasso) nodejs#50115 test_runner: * (SEMVER-MAJOR) omit filtered test from output (Colin Ihrig) nodejs#52221 * (SEMVER-MAJOR) improve `--test-name-pattern` to allow matching single test (Michał Drobniak) nodejs#51577 tools: * (SEMVER-MAJOR) update V8 gypfiles for 12.4 (Michaël Zasso) nodejs#52465 * (SEMVER-MAJOR) roughly port v8_abseil to gyp (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.2 (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.1 (Michaël Zasso) nodejs#51362 * (SEMVER-MAJOR) update V8 gypfiles for 12.0 (Michaël Zasso) nodejs#51362 trace_events: * (SEMVER-MAJOR) use private fields instead of symbols for `Tracing` (Jungku Lee) nodejs#51180 util: * (SEMVER-MAJOR) runtime deprecate util.log (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isUndefined (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isSymbol (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isString (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isRegExp (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isPrimitive (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isObject (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isNumber (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isNullOrUndefined (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isNull (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isFunction (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isError (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isDate (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecation util.isBuffer (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecation util.isBoolean (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecate util.isArray (Marco Ippolito) nodejs#50488 * (SEMVER-MAJOR) runtime deprecation util._extend (Marco Ippolito) nodejs#50488 v8: * (SEMVER-MAJOR) enable maglev on supported architectures (Keyhan Vakil) nodejs#51360 PR-URL: nodejs#52505 Co-Authored-By: Marco Ippolito <marcoippolito54@gmail.com>
Fixes #50387
writeHead
accepts a raw header array (flattened as[k1, v1, k2, v2, k3, v3, ...]
) which is allows directly specifying raw header data - preserving ordering, duplicates and header key casing. When used by itself this works totally fine.However, if
setHeader
was called first, it effectively changes the behaviour of subsequentwriteHead
calls, so that even if a raw header array was provided, duplicates are collapsed and lost entirely.This change preserves the duplicate headers passed to
writeHead
, while still maintaining the 'writeHead overwrites setHeader' behaviour from the docs which say:This works by switching from setHeader to appendHeader, which does support duplicates. Unfortunately doing that by itself would break the above constraint, because it would merge all setHeader headers with writeHead headers (instead of overwriting them) so instead we first remove conflicting cases (i.e. all the setHeader headers that would be overwritten) and then we can use appendHeader safely, since there are now no remaining conflicts.
An extra loop here may have a small performance implications and I'm sure that writing server responses is a high-sensitivity area there, but notably this is in the section already marked "Slow-case" directly above. In performance sensitive scenarios, applications shouldn't really mix headers between setHeader and writeHead regardless.
Any suggestions to improve that (or anything else) very welcome!