From 20a30bb36d11cb2ad30b5a00a029f018dd58d85b Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 9 Dec 2025 02:29:15 +0800 Subject: [PATCH] Update dependency oxc-parser to v0.102.0 (#18448) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: fisker --- package.json | 2 +- scripts/build/hacks/build-oxc-wasm-parser.js | 11 +- website/static/worker.mjs | 52 ++++-- yarn.lock | 158 +++++++++---------- 4 files changed, 126 insertions(+), 97 deletions(-) diff --git a/package.json b/package.json index 6a1e60b4d..6adfb1267 100644 --- a/package.json +++ b/package.json @@ -93,7 +93,7 @@ "minimist": "1.2.8", "n-readlines": "3.4.0", "outdent": "0.8.0", - "oxc-parser": "0.101.0", + "oxc-parser": "0.102.0", "parse-json": "8.3.0", "picocolors": "1.1.1", "please-upgrade-node": "3.2.0", diff --git a/scripts/build/hacks/build-oxc-wasm-parser.js b/scripts/build/hacks/build-oxc-wasm-parser.js index bd36b0546..48e659077 100644 --- a/scripts/build/hacks/build-oxc-wasm-parser.js +++ b/scripts/build/hacks/build-oxc-wasm-parser.js @@ -48,25 +48,26 @@ async function inlineWasmBinary(directory) { const wasmFile = new URL("./parser.wasm32-wasi.wasm", packageDirectory); let text = await fs.readFile(entryFile, "utf8"); - const wasm = await fs.readFile(wasmFile, "base64"); + const wasmBase64String = await fs.readFile(wasmFile, "base64"); + // https://issues.chromium.org/issues/467033528 text = outdent` import { decode as __decode } from "base64-arraybuffer-es6"; const __base64ToArrayBuffer = Uint8Array.fromBase64 - ? (string) => Uint8Array.fromBase64(string).buffer + ? (string) => Uint8Array.from(Uint8Array.fromBase64(string)).buffer : __decode; ${text} `; text = text.replaceAll( - /new URL\(".*?", import\.meta\.url\)/gu, - "{url:undefined}", + /new URL\((?".*?"), import\.meta\.url\)/gu, + "{/* $ */}", ); text = text.replace( "await fetch(__wasmUrl).then((res) => res.arrayBuffer())", - `__base64ToArrayBuffer(${JSON.stringify(wasm)})`, + `__base64ToArrayBuffer(${JSON.stringify(wasmBase64String)})`, ); await fs.writeFile(entryFile, text); diff --git a/website/static/worker.mjs b/website/static/worker.mjs index c5c1a1c87..c5c92cf63 100644 --- a/website/static/worker.mjs +++ b/website/static/worker.mjs @@ -10,8 +10,10 @@ async function importPlugin(plugin) { try { return await pluginLoadPromises.get(plugin); - } catch { - throw new Error(`Load plugin '${plugin.file}' failed.`); + } catch (error) { + // eslint-disable-next-line no-console + console.error(error); + throw new Error(`Load plugin '${plugin.file}' failed.`, { cause: error }); } } @@ -51,12 +53,26 @@ self.onmessage = async function (event) { }); }; +function serializeError(error) { + const serialized = { + name: error.name, + message: error.message, + ...error, + }; + + if (error.cause instanceof Error) { + serialized.cause = serializeError(error.cause); + } + + return serialized; +} + function serializeAst(ast) { return JSON.stringify( ast, (_, value) => value instanceof Error - ? { name: value.name, message: value.message, ...value } + ? serializeError(value) : typeof value === "bigint" ? `BigInt('${String(value)}')` : typeof value === "symbol" @@ -195,21 +211,33 @@ async function formatCode(text, options, rethrowEmbedErrors) { } // Likely a bug in Prettier // Provide the whole stack for debugging - return { formatted: stringifyError(error), error: true }; + return { + formatted: stringifyError(error), + error: true, + }; } finally { self.PRETTIER_DEBUG = undefined; } } function stringifyError(error) { - const stringified = String(error); - if (typeof error.stack !== "string") { - return stringified; + const { stack, cause } = error; + + let stringified = String(error); + + if (typeof stack === "string") { + if (stack.includes(stringified)) { + // Chrome + stringified = stack; + } else { + // Firefox + stringified += "\n" + error.stack; + } } - if (error.stack.includes(stringified)) { - // Chrome - return error.stack; + + if (cause instanceof Error) { + stringified += "\nCause: " + stringifyError(cause); } - // Firefox - return stringified + "\n" + error.stack; + + return stringified; } diff --git a/yarn.lock b/yarn.lock index ffde218b0..0d0b3ab92 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1059,7 +1059,7 @@ __metadata: languageName: node linkType: hard -"@emnapi/core@npm:^1.4.3, @emnapi/core@npm:^1.5.0": +"@emnapi/core@npm:^1.4.3, @emnapi/core@npm:^1.7.1": version: 1.7.1 resolution: "@emnapi/core@npm:1.7.1" dependencies: @@ -1069,7 +1069,7 @@ __metadata: languageName: node linkType: hard -"@emnapi/runtime@npm:^1.4.3, @emnapi/runtime@npm:^1.5.0": +"@emnapi/runtime@npm:^1.4.3, @emnapi/runtime@npm:^1.7.1": version: 1.7.1 resolution: "@emnapi/runtime@npm:1.7.1" dependencies: @@ -1947,14 +1947,14 @@ __metadata: languageName: node linkType: hard -"@napi-rs/wasm-runtime@npm:^1.0.7": - version: 1.0.7 - resolution: "@napi-rs/wasm-runtime@npm:1.0.7" +"@napi-rs/wasm-runtime@npm:^1.0.7, @napi-rs/wasm-runtime@npm:^1.1.0": + version: 1.1.0 + resolution: "@napi-rs/wasm-runtime@npm:1.1.0" dependencies: - "@emnapi/core": "npm:^1.5.0" - "@emnapi/runtime": "npm:^1.5.0" + "@emnapi/core": "npm:^1.7.1" + "@emnapi/runtime": "npm:^1.7.1" "@tybys/wasm-util": "npm:^0.10.1" - checksum: 10/6bc32d32d486d07b83220a9b7b2b715e39acacbacef0011ebca05c00b41d80a0535123da10fea7a7d6d7e206712bb50dc50ac3cf88b770754d44378570fb5c05 + checksum: 10/87c7ab4685527aa4820320020e2af5879b99d88e94b42cdc3690646722536f14656667392975a9576bf411a3804a464949fadbc343a646a2c2a8b2f10d921f6c languageName: node linkType: hard @@ -2007,117 +2007,117 @@ __metadata: languageName: node linkType: hard -"@oxc-parser/binding-android-arm64@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-android-arm64@npm:0.101.0" +"@oxc-parser/binding-android-arm64@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-android-arm64@npm:0.102.0" conditions: os=android & cpu=arm64 languageName: node linkType: hard -"@oxc-parser/binding-darwin-arm64@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-darwin-arm64@npm:0.101.0" +"@oxc-parser/binding-darwin-arm64@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-darwin-arm64@npm:0.102.0" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@oxc-parser/binding-darwin-x64@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-darwin-x64@npm:0.101.0" +"@oxc-parser/binding-darwin-x64@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-darwin-x64@npm:0.102.0" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@oxc-parser/binding-freebsd-x64@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-freebsd-x64@npm:0.101.0" +"@oxc-parser/binding-freebsd-x64@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-freebsd-x64@npm:0.102.0" conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@oxc-parser/binding-linux-arm-gnueabihf@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-arm-gnueabihf@npm:0.101.0" +"@oxc-parser/binding-linux-arm-gnueabihf@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-arm-gnueabihf@npm:0.102.0" conditions: os=linux & cpu=arm languageName: node linkType: hard -"@oxc-parser/binding-linux-arm64-gnu@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-arm64-gnu@npm:0.101.0" +"@oxc-parser/binding-linux-arm64-gnu@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-arm64-gnu@npm:0.102.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@oxc-parser/binding-linux-arm64-musl@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-arm64-musl@npm:0.101.0" +"@oxc-parser/binding-linux-arm64-musl@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-arm64-musl@npm:0.102.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@oxc-parser/binding-linux-riscv64-gnu@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-riscv64-gnu@npm:0.101.0" +"@oxc-parser/binding-linux-riscv64-gnu@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-riscv64-gnu@npm:0.102.0" conditions: os=linux & cpu=riscv64 & libc=glibc languageName: node linkType: hard -"@oxc-parser/binding-linux-s390x-gnu@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-s390x-gnu@npm:0.101.0" +"@oxc-parser/binding-linux-s390x-gnu@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-s390x-gnu@npm:0.102.0" conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@oxc-parser/binding-linux-x64-gnu@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-x64-gnu@npm:0.101.0" +"@oxc-parser/binding-linux-x64-gnu@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-x64-gnu@npm:0.102.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@oxc-parser/binding-linux-x64-musl@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-linux-x64-musl@npm:0.101.0" +"@oxc-parser/binding-linux-x64-musl@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-linux-x64-musl@npm:0.102.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@oxc-parser/binding-openharmony-arm64@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-openharmony-arm64@npm:0.101.0" +"@oxc-parser/binding-openharmony-arm64@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-openharmony-arm64@npm:0.102.0" conditions: os=openharmony & cpu=arm64 languageName: node linkType: hard -"@oxc-parser/binding-wasm32-wasi@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-wasm32-wasi@npm:0.101.0" +"@oxc-parser/binding-wasm32-wasi@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-wasm32-wasi@npm:0.102.0" dependencies: - "@napi-rs/wasm-runtime": "npm:^1.0.7" + "@napi-rs/wasm-runtime": "npm:^1.1.0" conditions: cpu=wasm32 languageName: node linkType: hard -"@oxc-parser/binding-win32-arm64-msvc@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-win32-arm64-msvc@npm:0.101.0" +"@oxc-parser/binding-win32-arm64-msvc@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-win32-arm64-msvc@npm:0.102.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@oxc-parser/binding-win32-x64-msvc@npm:0.101.0": - version: 0.101.0 - resolution: "@oxc-parser/binding-win32-x64-msvc@npm:0.101.0" +"@oxc-parser/binding-win32-x64-msvc@npm:0.102.0": + version: 0.102.0 + resolution: "@oxc-parser/binding-win32-x64-msvc@npm:0.102.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@oxc-project/types@npm:^0.101.0": - version: 0.101.0 - resolution: "@oxc-project/types@npm:0.101.0" - checksum: 10/43a29933af8d29ed71e5c3f9d5bc23e41c629ed2a00bb53b661c278d6d64771caff8879047cad11ce511868eaeb16da9b132fd1d856bcda258eba91b9296cb32 +"@oxc-project/types@npm:^0.102.0": + version: 0.102.0 + resolution: "@oxc-project/types@npm:0.102.0" + checksum: 10/a2f5a4637f0c96e7a63a9974e4901dfc9fbd808047a1fed491c789648995dc5148ce02d54476fc6020e8cf35b42f0bb37ec3a333366e09eb1ff3e1a9dcda1ca3 languageName: node linkType: hard @@ -7047,26 +7047,26 @@ __metadata: languageName: node linkType: hard -"oxc-parser@npm:0.101.0": - version: 0.101.0 - resolution: "oxc-parser@npm:0.101.0" +"oxc-parser@npm:0.102.0": + version: 0.102.0 + resolution: "oxc-parser@npm:0.102.0" dependencies: - "@oxc-parser/binding-android-arm64": "npm:0.101.0" - "@oxc-parser/binding-darwin-arm64": "npm:0.101.0" - "@oxc-parser/binding-darwin-x64": "npm:0.101.0" - "@oxc-parser/binding-freebsd-x64": "npm:0.101.0" - "@oxc-parser/binding-linux-arm-gnueabihf": "npm:0.101.0" - "@oxc-parser/binding-linux-arm64-gnu": "npm:0.101.0" - "@oxc-parser/binding-linux-arm64-musl": "npm:0.101.0" - "@oxc-parser/binding-linux-riscv64-gnu": "npm:0.101.0" - "@oxc-parser/binding-linux-s390x-gnu": "npm:0.101.0" - "@oxc-parser/binding-linux-x64-gnu": "npm:0.101.0" - "@oxc-parser/binding-linux-x64-musl": "npm:0.101.0" - "@oxc-parser/binding-openharmony-arm64": "npm:0.101.0" - "@oxc-parser/binding-wasm32-wasi": "npm:0.101.0" - "@oxc-parser/binding-win32-arm64-msvc": "npm:0.101.0" - "@oxc-parser/binding-win32-x64-msvc": "npm:0.101.0" - "@oxc-project/types": "npm:^0.101.0" + "@oxc-parser/binding-android-arm64": "npm:0.102.0" + "@oxc-parser/binding-darwin-arm64": "npm:0.102.0" + "@oxc-parser/binding-darwin-x64": "npm:0.102.0" + "@oxc-parser/binding-freebsd-x64": "npm:0.102.0" + "@oxc-parser/binding-linux-arm-gnueabihf": "npm:0.102.0" + "@oxc-parser/binding-linux-arm64-gnu": "npm:0.102.0" + "@oxc-parser/binding-linux-arm64-musl": "npm:0.102.0" + "@oxc-parser/binding-linux-riscv64-gnu": "npm:0.102.0" + "@oxc-parser/binding-linux-s390x-gnu": "npm:0.102.0" + "@oxc-parser/binding-linux-x64-gnu": "npm:0.102.0" + "@oxc-parser/binding-linux-x64-musl": "npm:0.102.0" + "@oxc-parser/binding-openharmony-arm64": "npm:0.102.0" + "@oxc-parser/binding-wasm32-wasi": "npm:0.102.0" + "@oxc-parser/binding-win32-arm64-msvc": "npm:0.102.0" + "@oxc-parser/binding-win32-x64-msvc": "npm:0.102.0" + "@oxc-project/types": "npm:^0.102.0" dependenciesMeta: "@oxc-parser/binding-android-arm64": optional: true @@ -7098,7 +7098,7 @@ __metadata: optional: true "@oxc-parser/binding-win32-x64-msvc": optional: true - checksum: 10/fa321cb3feb397eb114c9ddb946ed504b6488403a7cfadd8fbe9a62ce583d367619779190a4b2f5c17e8ab41ef4a6eca199d0c337e44fc6ece792e29dca82e8c + checksum: 10/707778b0e2647d082a2a3c69e1373bb1d0a5007c35ff4050feaf128847cc708f9e8d25cf0387480772d173ac104e28c268ebd33534f5f5ed4207fe5bfdaffc7f languageName: node linkType: hard @@ -7612,7 +7612,7 @@ __metadata: npm-run-all2: "npm:8.0.4" open-editor: "npm:6.0.0" outdent: "npm:0.8.0" - oxc-parser: "npm:0.101.0" + oxc-parser: "npm:0.102.0" parse-json: "npm:8.3.0" picocolors: "npm:1.1.1" please-upgrade-node: "npm:3.2.0"