electron/patches/node/test_make_test-node-output-v8-warning_generic.patch
Shelley Vohr c63d0d61e7
chore: bump Node.js to v22.9.0 (#44281)
* chore: bump Node.js to v22.9.0

* build: drop base64 dep in GN build

https://github.com/nodejs/node/pull/52856

* build,tools: make addons tests work with GN

https://github.com/nodejs/node/pull/50737

* fs: add fast api for InternalModuleStat

https://github.com/nodejs/node/pull/51344

* src: move package_json_reader cache to c++

https://github.com/nodejs/node/pull/50322

* crypto: disable PKCS#1 padding for privateDecrypt

https://github.com/nodejs-private/node-private/pull/525

* src: move more crypto code to ncrypto

https://github.com/nodejs/node/pull/54320

* crypto: ensure valid point on elliptic curve in SubtleCrypto.importKey

https://github.com/nodejs/node/pull/50234

* src: shift more crypto impl details to ncrypto

https://github.com/nodejs/node/pull/54028

* src: switch crypto APIs to use Maybe<void>

https://github.com/nodejs/node/pull/54775

* crypto: remove DEFAULT_ENCODING

https://github.com/nodejs/node/pull/47182

* deps: update libuv to 1.47.0

https://github.com/nodejs/node/pull/50650

* build: fix conflict gyp configs

https://github.com/nodejs/node/pull/53605

* lib,src: drop --experimental-network-imports

https://github.com/nodejs/node/pull/53822

* esm: align sync and async load implementations

https://github.com/nodejs/node/pull/49152

* esm: remove unnecessary toNamespacedPath calls

https://github.com/nodejs/node/pull/53656

* module: detect ESM syntax by trying to recompile as SourceTextModule

https://github.com/nodejs/node/pull/52413

* test: adapt debugger tests to V8 11.4

https://github.com/nodejs/node/pull/49639

* lib: update usage of always on Atomics API

https://github.com/nodejs/node/pull/49639

* test: adapt test-fs-write to V8 internal changes

https://github.com/nodejs/node/pull/49639

* test: adapt to new V8 trusted memory spaces

https://github.com/nodejs/node/pull/50115

* deps: update libuv to 1.47.0

https://github.com/nodejs/node/pull/50650

* src: use non-deprecated v8::Uint8Array::kMaxLength

https://github.com/nodejs/node/pull/50115

* src: update default V8 platform to override functions with location

https://github.com/nodejs/node/pull/51362

* src: add missing TryCatch

https://github.com/nodejs/node/pull/51362

* lib,test: handle new Iterator global

https://github.com/nodejs/node/pull/51362

* src: use non-deprecated version of CreateSyntheticModule

https://github.com/nodejs/node/pull/50115

* src: remove calls to recently deprecated V8 APIs

https://github.com/nodejs/node/pull/52996

* src: use new V8 API to define stream accessor

https://github.com/nodejs/node/pull/53084

* src: do not use deprecated V8 API

https://github.com/nodejs/node/pull/53084

* src: do not use soon-to-be-deprecated V8 API

https://github.com/nodejs/node/pull/53174

* src: migrate to new V8 interceptors API

https://github.com/nodejs/node/pull/52745

* src: use supported API to get stalled TLA messages

https://github.com/nodejs/node/pull/51362

* module: print location of unsettled top-level await in entry points

https://github.com/nodejs/node/pull/51999

* test: make snapshot comparison more flexible

https://github.com/nodejs/node/pull/54375

* test: do not set concurrency on parallelized runs

https://github.com/nodejs/node/pull/52177

* src: move FromNamespacedPath to path.cc

https://github.com/nodejs/node/pull/53540

* test: adapt to new V8 trusted memory spaces

https://github.com/nodejs/node/pull/50115

* build: add option to enable clang-cl on Windows

https://github.com/nodejs/node/pull/52870

* chore: fixup patch indices

* chore: add/remove changed files

* esm: drop support for import assertions

https://github.com/nodejs/node/pull/54890

* build: compile with C++20 support

https://github.com/nodejs/node/pull/52838

* deps: update nghttp2 to 1.62.1

https://github.com/nodejs/node/pull/52966

* src: parse inspector profiles with simdjson

https://github.com/nodejs/node/pull/51783

* build: add GN build files

https://github.com/nodejs/node/pull/47637

* deps,lib,src: add experimental web storage

https://github.com/nodejs/node/pull/52435

* build: add missing BoringSSL dep

* src: rewrite task runner in c++

https://github.com/nodejs/node/pull/52609

* fixup! build: add GN build files

* src: stop using deprecated fields of v8::FastApiCallbackOptions

https://github.com/nodejs/node/pull/54077

* fix: shadow variable

* build: add back incorrectly removed SetAccessor patch

* fixup! fixup! build: add GN build files

* crypto: fix integer comparison in crypto for BoringSSL

* src,lib: reducing C++ calls of esm legacy main resolve

https://github.com/nodejs/node/pull/48325

* src: move more crypto_dh.cc code to ncrypto

https://github.com/nodejs/node/pull/54459

* chore: fixup GN files for previous commit

* src: move more crypto code to ncrypto

https://github.com/nodejs/node/pull/54320

* Fixup Perfetto ifdef guards

* fix: missing electron_natives dep

* fix: node_use_node_platform = false

* fix: include src/node_snapshot_stub.cc in libnode

* 5507047: [import-attributes] Remove support for import assertions

https://chromium-review.googlesource.com/c/v8/v8/+/5507047

* fix: restore v8-sandbox.h in filenames.json

* fix: re-add original-fs generation logic

* fix: ngtcp2 openssl dep

* test: try removing NAPI_VERSION undef

* chore(deps): bump @types/node

* src: move more crypto_dh.cc code to ncrypto

https://github.com/nodejs/node/pull/54459

* esm: remove unnecessary toNamespacedPath calls

https://github.com/nodejs/node/pull/53656

* buffer: fix out of range for toString

https://github.com/nodejs/node/pull/54553

* lib: rewrite AsyncLocalStorage without async_hooks

https://github.com/nodejs/node/pull/48528

* module: print amount of load time of a cjs module

https://github.com/nodejs/node/pull/52213

* test: skip reproducible snapshot test on 32-bit

https://github.com/nodejs/node/pull/53592

* fixup! src: move more crypto_dh.cc code to ncrypto

* test: adjust emittedUntil return type

* chore: remove redundant wpt streams patch

* fixup! chore(deps): bump @types/node

* fix: gn executable name on Windows

* fix: build on Windows

* fix: rename conflicting win32 symbols in //third_party/sqlite

On Windows otherwise we get:

lld-link: error: duplicate symbol: sqlite3_win32_write_debug
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:47987
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_sleep
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48042
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_is_nt
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48113
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_utf8_to_unicode
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48470
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_unicode_to_utf8
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48486
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_mbcs_to_utf8
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48502
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_mbcs_to_utf8_v2
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48518
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_utf8_to_mbcs
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48534
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

lld-link: error: duplicate symbol: sqlite3_win32_utf8_to_mbcs_v2
>>> defined at .\..\..\third_party\electron_node\deps\sqlite\sqlite3.c:48550
>>>            obj/third_party/electron_node/deps/sqlite/sqlite/sqlite3.obj
>>> defined at obj/third_party/sqlite\chromium_sqlite3/sqlite3_shim.obj

* docs: remove unnecessary ts-expect-error after types bump

* src: move package resolver to c++

https://github.com/nodejs/node/pull/50322

* build: set ASAN detect_container_overflow=0

https://github.com/nodejs/node/issues/55584

* chore: fixup rebase

* test: disable failing ASAN test

* win: almost fix race detecting ESRCH in uv_kill

https://github.com/libuv/libuv/pull/4341
2024-11-04 13:41:56 -05:00

51 lines
2.3 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Shelley Vohr <shelley.vohr@gmail.com>
Date: Tue, 16 Jan 2024 14:53:31 +0100
Subject: test: make test-node-output-v8-warning generic
Ref https://github.com/nodejs/node/pull/50421.
The above CL migrated python snapshot testing to JS, and in the process
added string replace calls to change 'node' as a hardcoded string to an
asterisk. This was initially fixed in https://github.com/nodejs/node/pull/36489
before being regressed in the above, as that PR essentially makes the wildcard
meaningless. Fix it for now by replacing the process.argv0 basename instead.
Some form of fix for this should be upstreamed.
diff --git a/test/parallel/test-node-output-v8-warning.mjs b/test/parallel/test-node-output-v8-warning.mjs
index 309e904c49b7124b64831293e0473a5d35249081..6636144f5074811f95bbe53a62718c8084088bdc 100644
--- a/test/parallel/test-node-output-v8-warning.mjs
+++ b/test/parallel/test-node-output-v8-warning.mjs
@@ -2,11 +2,18 @@ import '../common/index.mjs';
import * as fixtures from '../common/fixtures.mjs';
import * as snapshot from '../common/assertSnapshot.js';
import { describe, it } from 'node:test';
+import { basename } from 'node:path';
function replaceNodeVersion(str) {
return str.replaceAll(process.version, '*');
}
+function replaceExecName(str) {
+ // Copied from lib/internal/process/warning.js
+ const baseName = basename(process.argv0 || 'node', '.exe');
+ return str.replaceAll(`${baseName} --`, '* --');
+}
+
describe('v8 output', { concurrency: !process.env.TEST_PARALLEL }, () => {
function normalize(str) {
return str.replaceAll(snapshot.replaceWindowsPaths(process.cwd()), '')
@@ -15,10 +22,10 @@ describe('v8 output', { concurrency: !process.env.TEST_PARALLEL }, () => {
.replaceAll('*test*', '*')
.replaceAll(/.*?\*fixtures\*v8\*/g, '(node:*) V8: *') // Replace entire path before fixtures/v8
.replaceAll('*fixtures*v8*', '*')
- .replaceAll('node --', '* --');
}
+
const common = snapshot
- .transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion);
+ .transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion, replaceExecName);
const defaultTransform = snapshot.transform(common, normalize);
const tests = [
{ name: 'v8/v8_warning.js' },