diff --git a/eng/testing/WasmRunnerAOTTemplate.sh b/eng/testing/WasmRunnerAOTTemplate.sh
index 61714318017ef5..856fb7ebbea1bc 100644
--- a/eng/testing/WasmRunnerAOTTemplate.sh
+++ b/eng/testing/WasmRunnerAOTTemplate.sh
@@ -34,10 +34,6 @@ if [[ -z "$XHARNESS_COMMAND" ]]; then
fi
if [[ "$XHARNESS_COMMAND" == "test" ]]; then
- if [[ -z "$JS_ENGINE_ARGS" ]]; then
- JS_ENGINE_ARGS="--engine-arg=--stack-trace-limit=1000 --engine-arg=--experimental-wasm-eh"
- fi
-
if [[ -z "$JS_ENGINE" ]]; then
if [[ "$SCENARIO" == "WasmTestOnNodeJS" || "$SCENARIO" == "wasmtestonnodejs" ]]; then
JS_ENGINE="--engine=NodeJS"
@@ -46,6 +42,16 @@ if [[ "$XHARNESS_COMMAND" == "test" ]]; then
fi
fi
+ if [[ -z "$JS_ENGINE_ARGS" ]]; then
+ JS_ENGINE_ARGS="--engine-arg=--stack-trace-limit=1000"
+ if [[ "$SCENARIO" != "WasmTestOnNodeJS" && "$SCENARIO" != "wasmtestonnodejs" ]]; then
+ JS_ENGINE_ARGS="$JS_ENGINE_ARGS --engine-arg=--module"
+ fi
+ if [[ "$SCENARIO" == "WasmTestOnNodeJS" || "$SCENARIO" == "wasmtestonnodejs" ]]; then
+ JS_ENGINE_ARGS="$JS_ENGINE_ARGS --engine-arg=--experimental-wasm-eh"
+ fi
+ fi
+
if [[ -z "$MAIN_JS" ]]; then
MAIN_JS="--js-file=test-main.js"
fi
diff --git a/eng/testing/WasmRunnerTemplate.cmd b/eng/testing/WasmRunnerTemplate.cmd
index 57e757233a2780..a8c9c0ac571269 100644
--- a/eng/testing/WasmRunnerTemplate.cmd
+++ b/eng/testing/WasmRunnerTemplate.cmd
@@ -45,7 +45,13 @@ if /I [%XHARNESS_COMMAND%] == [test] (
)
if [%JS_ENGINE_ARGS%] == [] (
- set "JS_ENGINE_ARGS=--engine-arg^=--stack-trace-limit^=1000 --engine-arg^=--experimental-wasm-eh"
+ set "JS_ENGINE_ARGS=--engine-arg^=--stack-trace-limit^=1000"
+ if /I NOT [%SCENARIO%] == [WasmTestOnNodeJS] (
+ set "JS_ENGINE_ARGS=%JS_ENGINE_ARGS% --engine-arg^=--module"
+ )
+ if /I [%SCENARIO%] == [WasmTestOnNodeJS] (
+ set "JS_ENGINE_ARGS=%JS_ENGINE_ARGS% --engine-arg^=--experimental-wasm-eh"
+ )
)
) else (
if [%BROWSER_PATH%] == [] if not [%HELIX_CORRELATION_PAYLOAD%] == [] (
diff --git a/eng/testing/WasmRunnerTemplate.sh b/eng/testing/WasmRunnerTemplate.sh
index 1865edb0fd7ac3..8b4e9adb10c2ef 100644
--- a/eng/testing/WasmRunnerTemplate.sh
+++ b/eng/testing/WasmRunnerTemplate.sh
@@ -47,7 +47,13 @@ if [[ "$XHARNESS_COMMAND" == "test" ]]; then
fi
if [[ -z "$JS_ENGINE_ARGS" ]]; then
- JS_ENGINE_ARGS="--engine-arg=--stack-trace-limit=1000 --engine-arg=--experimental-wasm-eh"
+ JS_ENGINE_ARGS="--engine-arg=--stack-trace-limit=1000"
+ if [[ "$SCENARIO" != "WasmTestOnNodeJS" && "$SCENARIO" != "wasmtestonnodejs" ]]; then
+ JS_ENGINE_ARGS="$JS_ENGINE_ARGS --engine-arg=--module"
+ fi
+ if [[ "$SCENARIO" == "WasmTestOnNodeJS" || "$SCENARIO" == "wasmtestonnodejs" ]]; then
+ JS_ENGINE_ARGS="$JS_ENGINE_ARGS --engine-arg=--experimental-wasm-eh"
+ fi
fi
fi
diff --git a/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System/Runtime/InteropServices/JavaScript/JSImportExportTest.cs b/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System/Runtime/InteropServices/JavaScript/JSImportExportTest.cs
index df2c3d67f091fa..a66720c9a88fd5 100644
--- a/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System/Runtime/InteropServices/JavaScript/JSImportExportTest.cs
+++ b/src/libraries/System.Runtime.InteropServices.JavaScript/tests/System.Runtime.InteropServices.JavaScript.UnitTests/System/Runtime/InteropServices/JavaScript/JSImportExportTest.cs
@@ -1428,7 +1428,10 @@ public void JsExportCatchStack()
{
var stack = JavaScriptTestHelper.catch1stack("-t-e-s-t-", nameof(JavaScriptTestHelper.ThrowFromJSExport));
Assert.Contains(nameof(JavaScriptTestHelper.ThrowFromJSExport), stack);
- Assert.Contains("catch1stack", stack);
+ if (PlatformDetection.IsBrowserDomSupportedOrNodeJS)
+ {
+ Assert.Contains("catch1stack", stack);
+ }
}
#endregion Exception
diff --git a/src/mono/sample/wasm/Directory.Build.targets b/src/mono/sample/wasm/Directory.Build.targets
index 0b45eb06b956bc..7ff3c4d09a7514 100644
--- a/src/mono/sample/wasm/Directory.Build.targets
+++ b/src/mono/sample/wasm/Directory.Build.targets
@@ -53,7 +53,7 @@
-
+
diff --git a/src/mono/sample/wasm/console-node/main.mjs b/src/mono/sample/wasm/console-node/main.mjs
index 4b1898c0335b93..3b9741a5398a73 100644
--- a/src/mono/sample/wasm/console-node/main.mjs
+++ b/src/mono/sample/wasm/console-node/main.mjs
@@ -3,7 +3,7 @@
import { dotnet } from './dotnet.js'
-dotnet
+await dotnet
.withDiagnosticTracing(false)
.withApplicationArguments("dotnet", "is", "great!")
.run()
\ No newline at end of file
diff --git a/src/mono/sample/wasm/console-v8/main.mjs b/src/mono/sample/wasm/console-v8/main.mjs
index f989302af6037b..b336fe2884fd53 100644
--- a/src/mono/sample/wasm/console-v8/main.mjs
+++ b/src/mono/sample/wasm/console-v8/main.mjs
@@ -3,7 +3,7 @@
import { dotnet } from './dotnet.js'
-dotnet
+await dotnet
.withDiagnosticTracing(false)
.withApplicationArguments(...arguments)
.run()
\ No newline at end of file
diff --git a/src/mono/sample/wasm/wasm.mk b/src/mono/sample/wasm/wasm.mk
index 67c4fa36207724..6984136c15d266 100644
--- a/src/mono/sample/wasm/wasm.mk
+++ b/src/mono/sample/wasm/wasm.mk
@@ -42,7 +42,7 @@ run-browser:
fi
run-console:
- cd bin/$(CONFIG)/AppBundle && $(V8_PATH) --stack-trace-limit=1000 --single-threaded --expose_wasm $(MAIN_JS) -- $(ARGS)
+ cd bin/$(CONFIG)/AppBundle && $(V8_PATH) --stack-trace-limit=1000 --single-threaded --expose_wasm --module $(MAIN_JS) -- $(ARGS)
run-console-node:
cd bin/$(CONFIG)/AppBundle && node --stack-trace-limit=1000 --single-threaded --expose_wasm $(MAIN_JS) $(ARGS)
diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets
index 0dcbdc6bc1c11a..0d50ada7ad3a20 100644
--- a/src/mono/wasm/build/WasmApp.targets
+++ b/src/mono/wasm/build/WasmApp.targets
@@ -424,7 +424,7 @@
diff --git a/src/mono/wasm/runtime/assets.ts b/src/mono/wasm/runtime/assets.ts
index fa9366d1bb60af..37977538ed3a01 100644
--- a/src/mono/wasm/runtime/assets.ts
+++ b/src/mono/wasm/runtime/assets.ts
@@ -514,9 +514,15 @@ export async function instantiate_wasm_asset(
}
const arrayBuffer = await response.arrayBuffer();
if (runtimeHelpers.diagnosticTracing) console.debug("MONO_WASM: instantiate_wasm_module buffered");
- const arrayBufferResult = await WebAssembly.instantiate(arrayBuffer, wasmModuleImports!);
- compiledInstance = arrayBufferResult.instance;
- compiledModule = arrayBufferResult.module;
+ if (ENVIRONMENT_IS_SHELL) {
+ // workaround for old versions of V8 with https://bugs.chromium.org/p/v8/issues/detail?id=13823
+ compiledModule = new WebAssembly.Module(arrayBuffer);
+ compiledInstance = new WebAssembly.Instance(compiledModule, wasmModuleImports);
+ } else {
+ const arrayBufferResult = await WebAssembly.instantiate(arrayBuffer, wasmModuleImports!);
+ compiledInstance = arrayBufferResult.instance;
+ compiledModule = arrayBufferResult.module;
+ }
}
successCallback(compiledInstance, compiledModule);
}
diff --git a/src/mono/wasm/runtime/jiterpreter.ts b/src/mono/wasm/runtime/jiterpreter.ts
index 30759e547a0e6d..1d355272ae85c3 100644
--- a/src/mono/wasm/runtime/jiterpreter.ts
+++ b/src/mono/wasm/runtime/jiterpreter.ts
@@ -1049,6 +1049,9 @@ export function mono_interp_tier_prepare_jiterpreter(
}
export function jiterpreter_dump_stats(b?: boolean, concise?: boolean) {
+ if (!runtimeHelpers.runtimeReady) {
+ return;
+ }
if (!mostRecentOptions || (b !== undefined))
mostRecentOptions = getOptions();
diff --git a/src/mono/wasm/runtime/package-lock.json b/src/mono/wasm/runtime/package-lock.json
index 4455b87ca645a2..5894b4ec3680c8 100644
--- a/src/mono/wasm/runtime/package-lock.json
+++ b/src/mono/wasm/runtime/package-lock.json
@@ -5,9 +5,9 @@
"requires": true,
"dependencies": {
"@babel/code-frame": {
- "version": "7.18.6",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@babel/code-frame/-/code-frame-7.18.6.tgz",
- "integrity": "sha1-OyXTjIlgC6otzCGe36iKdOssQno=",
+ "version": "7.21.4",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@babel/code-frame/-/code-frame-7.21.4.tgz",
+ "integrity": "sha1-0PqeRBOsqB8rI7lEJ5e9oYJu2zk=",
"dev": true,
"optional": true,
"requires": {
@@ -98,16 +98,31 @@
}
}
},
+ "@eslint-community/eslint-utils": {
+ "version": "4.4.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
+ "integrity": "sha1-ojUU6Pua8SadX3eIqlVnmNYca1k=",
+ "dev": true,
+ "requires": {
+ "eslint-visitor-keys": "^3.3.0"
+ }
+ },
+ "@eslint-community/regexpp": {
+ "version": "4.5.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@eslint-community/regexpp/-/regexpp-4.5.0.tgz",
+ "integrity": "sha1-9vcpsC/u4sdJ9X4zS3obX0CoFyQ=",
+ "dev": true
+ },
"@eslint/eslintrc": {
- "version": "1.3.3",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@eslint/eslintrc/-/eslintrc-1.3.3.tgz",
- "integrity": "sha1-KwRKs5/fp1tGiBhPnlc848Ww/5U=",
+ "version": "2.0.2",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@eslint/eslintrc/-/eslintrc-2.0.2.tgz",
+ "integrity": "sha1-AVdeOHB63Wd89zyhWJq7qNqJmgI=",
"dev": true,
"requires": {
"ajv": "^6.12.4",
"debug": "^4.3.2",
- "espree": "^9.4.0",
- "globals": "^13.15.0",
+ "espree": "^9.5.1",
+ "globals": "^13.19.0",
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
"js-yaml": "^4.1.0",
@@ -115,10 +130,16 @@
"strip-json-comments": "^3.1.1"
}
},
+ "@eslint/js": {
+ "version": "8.39.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@eslint/js/-/js-8.39.0.tgz",
+ "integrity": "sha1-WLU2vMhD9M0eAqfmFx2lwED01Es=",
+ "dev": true
+ },
"@humanwhocodes/config-array": {
- "version": "0.11.7",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@humanwhocodes/config-array/-/config-array-0.11.7.tgz",
- "integrity": "sha1-OK7ARMbIKPbtUdXXrj2bn69tuw8=",
+ "version": "0.11.8",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@humanwhocodes/config-array/-/config-array-0.11.8.tgz",
+ "integrity": "sha1-A1lawgdaTcDxkcwhMd4U+9fUELk=",
"dev": true,
"requires": {
"@humanwhocodes/object-schema": "^1.2.1",
@@ -139,9 +160,9 @@
"dev": true
},
"@jridgewell/gen-mapping": {
- "version": "0.3.2",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz",
- "integrity": "sha1-wa7cYehT8rufXf5tRELTtWWyU7k=",
+ "version": "0.3.3",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
+ "integrity": "sha1-fgLm6135AartsIUUIDsJZhQCQJg=",
"dev": true,
"requires": {
"@jridgewell/set-array": "^1.0.1",
@@ -162,9 +183,9 @@
"dev": true
},
"@jridgewell/source-map": {
- "version": "0.3.2",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/source-map/-/source-map-0.3.2.tgz",
- "integrity": "sha1-9FNRqu1FJ6KYUS7HL4EEDJmFgPs=",
+ "version": "0.3.3",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/source-map/-/source-map-0.3.3.tgz",
+ "integrity": "sha1-gQgmVlnUwz5y/+FOM9bMXrWfL9o=",
"dev": true,
"requires": {
"@jridgewell/gen-mapping": "^0.3.0",
@@ -172,19 +193,27 @@
}
},
"@jridgewell/sourcemap-codec": {
- "version": "1.4.14",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
- "integrity": "sha1-rdTJjTQUcqKJGQtCTvvbCWmRuyQ=",
+ "version": "1.4.15",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+ "integrity": "sha1-18bmdVx4VnqVHgSrUu8P0m3lnzI=",
"dev": true
},
"@jridgewell/trace-mapping": {
- "version": "0.3.17",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz",
- "integrity": "sha1-eTBBJ3r5BzsJUaf+Dw2MTJjDaYU=",
+ "version": "0.3.18",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz",
+ "integrity": "sha1-JXg7IIba9v8dy1PJJJrkgOTdTNY=",
"dev": true,
"requires": {
"@jridgewell/resolve-uri": "3.1.0",
"@jridgewell/sourcemap-codec": "1.4.14"
+ },
+ "dependencies": {
+ "@jridgewell/sourcemap-codec": {
+ "version": "1.4.14",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz",
+ "integrity": "sha1-rdTJjTQUcqKJGQtCTvvbCWmRuyQ=",
+ "dev": true
+ }
}
},
"@nodelib/fs.scandir": {
@@ -214,18 +243,20 @@
}
},
"@rollup/plugin-terser": {
- "version": "0.1.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@rollup/plugin-terser/-/plugin-terser-0.1.0.tgz",
- "integrity": "sha1-dTDA8RZnY3QZ1xggRhZGxBhSYEE=",
+ "version": "0.4.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@rollup/plugin-terser/-/plugin-terser-0.4.1.tgz",
+ "integrity": "sha1-XDI/0GY1UFYiS2mT/LFMQJ0phz4=",
"dev": true,
"requires": {
+ "serialize-javascript": "^6.0.0",
+ "smob": "^0.0.6",
"terser": "^5.15.1"
}
},
"@rollup/plugin-typescript": {
- "version": "9.0.2",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@rollup/plugin-typescript/-/plugin-typescript-9.0.2.tgz",
- "integrity": "sha1-wM36OeJn8wb/cxZAWjVAbVgh6qc=",
+ "version": "11.1.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@rollup/plugin-typescript/-/plugin-typescript-11.1.0.tgz",
+ "integrity": "sha1-TdKphHWnkSANPk3RuCNAc62WxTU=",
"dev": true,
"requires": {
"@rollup/pluginutils": "^5.0.1",
@@ -250,9 +281,9 @@
}
},
"@types/estree": {
- "version": "1.0.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@types/estree/-/estree-1.0.0.tgz",
- "integrity": "sha1-X7LlNsGum/NTZu7Yeegn+lnKQcI=",
+ "version": "1.0.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@types/estree/-/estree-1.0.1.tgz",
+ "integrity": "sha1-qiJ1CWLzvw5511PTzAZ/AQyV8ZQ=",
"dev": true
},
"@types/json-schema": {
@@ -268,70 +299,71 @@
"dev": true
},
"@typescript-eslint/eslint-plugin": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.44.0.tgz",
- "integrity": "sha1-EFeI8pkFDJF+uFxNn9BLCJ43QN4=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.1.tgz",
+ "integrity": "sha1-mwnuFUG/8dLOvcuH585KQAOs3gg=",
"dev": true,
"requires": {
- "@typescript-eslint/scope-manager": "5.44.0",
- "@typescript-eslint/type-utils": "5.44.0",
- "@typescript-eslint/utils": "5.44.0",
+ "@eslint-community/regexpp": "^4.4.0",
+ "@typescript-eslint/scope-manager": "5.59.1",
+ "@typescript-eslint/type-utils": "5.59.1",
+ "@typescript-eslint/utils": "5.59.1",
"debug": "^4.3.4",
+ "grapheme-splitter": "^1.0.4",
"ignore": "^5.2.0",
"natural-compare-lite": "^1.4.0",
- "regexpp": "^3.2.0",
"semver": "^7.3.7",
"tsutils": "^3.21.0"
}
},
"@typescript-eslint/parser": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/parser/-/parser-5.44.0.tgz",
- "integrity": "sha1-meLHEKIlIZHnp5ETJk9Dgzi4Rq0=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/parser/-/parser-5.59.1.tgz",
+ "integrity": "sha1-c8LBISfFwRgtLltxqPoqhdIVy7Q=",
"dev": true,
"requires": {
- "@typescript-eslint/scope-manager": "5.44.0",
- "@typescript-eslint/types": "5.44.0",
- "@typescript-eslint/typescript-estree": "5.44.0",
+ "@typescript-eslint/scope-manager": "5.59.1",
+ "@typescript-eslint/types": "5.59.1",
+ "@typescript-eslint/typescript-estree": "5.59.1",
"debug": "^4.3.4"
}
},
"@typescript-eslint/scope-manager": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/scope-manager/-/scope-manager-5.44.0.tgz",
- "integrity": "sha1-mIw/NLRbNHTrn/BnTBgwne38PgQ=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/scope-manager/-/scope-manager-5.59.1.tgz",
+ "integrity": "sha1-iiAiJxnOvFGYYYpdRBE3BbUf1/4=",
"dev": true,
"requires": {
- "@typescript-eslint/types": "5.44.0",
- "@typescript-eslint/visitor-keys": "5.44.0"
+ "@typescript-eslint/types": "5.59.1",
+ "@typescript-eslint/visitor-keys": "5.59.1"
}
},
"@typescript-eslint/type-utils": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/type-utils/-/type-utils-5.44.0.tgz",
- "integrity": "sha1-vFpuigJphQcUqHDJJowDgVDfs8c=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/type-utils/-/type-utils-5.59.1.tgz",
+ "integrity": "sha1-Y5gdYWhP0k7aL58IwKR+ywAKIRE=",
"dev": true,
"requires": {
- "@typescript-eslint/typescript-estree": "5.44.0",
- "@typescript-eslint/utils": "5.44.0",
+ "@typescript-eslint/typescript-estree": "5.59.1",
+ "@typescript-eslint/utils": "5.59.1",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
}
},
"@typescript-eslint/types": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/types/-/types-5.44.0.tgz",
- "integrity": "sha1-8/C4mq/3jwl6KSf+VojAfnhqAkE=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/types/-/types-5.59.1.tgz",
+ "integrity": "sha1-A/P+3RwETLM268NMx4VfEhmR9B0=",
"dev": true
},
"@typescript-eslint/typescript-estree": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/typescript-estree/-/typescript-estree-5.44.0.tgz",
- "integrity": "sha1-BGGzhiA+jTg7sSaLHtHam8kFsEU=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.1.tgz",
+ "integrity": "sha1-SqVG0n/Q1HfGGPDKALSD8OyExDw=",
"dev": true,
"requires": {
- "@typescript-eslint/types": "5.44.0",
- "@typescript-eslint/visitor-keys": "5.44.0",
+ "@typescript-eslint/types": "5.59.1",
+ "@typescript-eslint/visitor-keys": "5.59.1",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -340,35 +372,35 @@
}
},
"@typescript-eslint/utils": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/utils/-/utils-5.44.0.tgz",
- "integrity": "sha1-1zPaTXnWww8aaLUxzdoeDB8A1S0=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/utils/-/utils-5.59.1.tgz",
+ "integrity": "sha1-2J/HWK0j0hV8+uU/C0Kb3xXblHM=",
"dev": true,
"requires": {
+ "@eslint-community/eslint-utils": "^4.2.0",
"@types/json-schema": "^7.0.9",
"@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.44.0",
- "@typescript-eslint/types": "5.44.0",
- "@typescript-eslint/typescript-estree": "5.44.0",
+ "@typescript-eslint/scope-manager": "5.59.1",
+ "@typescript-eslint/types": "5.59.1",
+ "@typescript-eslint/typescript-estree": "5.59.1",
"eslint-scope": "^5.1.1",
- "eslint-utils": "^3.0.0",
"semver": "^7.3.7"
}
},
"@typescript-eslint/visitor-keys": {
- "version": "5.44.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/visitor-keys/-/visitor-keys-5.44.0.tgz",
- "integrity": "sha1-EHQNwokCu5A9Eu46AFzDpwIH1DM=",
+ "version": "5.59.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.1.tgz",
+ "integrity": "sha1-DZbDbvtlYNf7jrhd4QRCwQ2PYFg=",
"dev": true,
"requires": {
- "@typescript-eslint/types": "5.44.0",
+ "@typescript-eslint/types": "5.59.1",
"eslint-visitor-keys": "^3.3.0"
}
},
"acorn": {
- "version": "8.8.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/acorn/-/acorn-8.8.1.tgz",
- "integrity": "sha1-Cj+cvsxOw76m8KgLZq6N0tolC3M=",
+ "version": "8.8.2",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/acorn/-/acorn-8.8.2.tgz",
+ "integrity": "sha1-Gy8l2wKvllOZuXdrDCw5EnbTfEo=",
"dev": true
},
"acorn-jsx": {
@@ -550,13 +582,16 @@
"dev": true
},
"eslint": {
- "version": "8.28.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint/-/eslint-8.28.0.tgz",
- "integrity": "sha1-gaaAcyY0Z3zIkBNLzdn9/qjmPW4=",
+ "version": "8.39.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint/-/eslint-8.39.0.tgz",
+ "integrity": "sha1-f9IKKV75LUOAnpFLcMOf1aI88/E=",
"dev": true,
"requires": {
- "@eslint/eslintrc": "^1.3.3",
- "@humanwhocodes/config-array": "^0.11.6",
+ "@eslint-community/eslint-utils": "^4.2.0",
+ "@eslint-community/regexpp": "^4.4.0",
+ "@eslint/eslintrc": "^2.0.2",
+ "@eslint/js": "8.39.0",
+ "@humanwhocodes/config-array": "^0.11.8",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
"ajv": "^6.10.0",
@@ -565,17 +600,16 @@
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.1.1",
- "eslint-utils": "^3.0.0",
- "eslint-visitor-keys": "^3.3.0",
- "espree": "^9.4.0",
- "esquery": "^1.4.0",
+ "eslint-scope": "^7.2.0",
+ "eslint-visitor-keys": "^3.4.0",
+ "espree": "^9.5.1",
+ "esquery": "^1.4.2",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
"file-entry-cache": "^6.0.1",
"find-up": "^5.0.0",
"glob-parent": "^6.0.2",
- "globals": "^13.15.0",
+ "globals": "^13.19.0",
"grapheme-splitter": "^1.0.4",
"ignore": "^5.2.0",
"import-fresh": "^3.0.0",
@@ -590,16 +624,15 @@
"minimatch": "^3.1.2",
"natural-compare": "^1.4.0",
"optionator": "^0.9.1",
- "regexpp": "^3.2.0",
"strip-ansi": "^6.0.1",
"strip-json-comments": "^3.1.0",
"text-table": "^0.2.0"
},
"dependencies": {
"eslint-scope": {
- "version": "7.1.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-scope/-/eslint-scope-7.1.1.tgz",
- "integrity": "sha1-//NIlML2XlIm0wQaxIC0UToWNkI=",
+ "version": "7.2.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-scope/-/eslint-scope-7.2.0.tgz",
+ "integrity": "sha1-8h69r9oCNS8QNjS5bdR9n4HKEXs=",
"dev": true,
"requires": {
"esrecurse": "^4.3.0",
@@ -611,15 +644,6 @@
"resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/estraverse/-/estraverse-5.3.0.tgz",
"integrity": "sha1-LupSkHAvJquP5TcDcP+GyWXSESM=",
"dev": true
- },
- "glob-parent": {
- "version": "6.0.2",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha1-bSN9mQg5UMeSkPJMdkKj3poo+eM=",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.3"
- }
}
}
},
@@ -633,44 +657,27 @@
"estraverse": "^4.1.1"
}
},
- "eslint-utils": {
- "version": "3.0.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-utils/-/eslint-utils-3.0.0.tgz",
- "integrity": "sha1-iuuvrOc0W7M1WdsKHxOh0tSMNnI=",
- "dev": true,
- "requires": {
- "eslint-visitor-keys": "^2.0.0"
- },
- "dependencies": {
- "eslint-visitor-keys": {
- "version": "2.1.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
- "integrity": "sha1-9lMoJZMFknOSyTjtROsKXJsr0wM=",
- "dev": true
- }
- }
- },
"eslint-visitor-keys": {
- "version": "3.3.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
- "integrity": "sha1-9kgPprHzDv4tGWiqisdFuGJGmCY=",
+ "version": "3.4.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz",
+ "integrity": "sha1-x/D5VhJM5ncEfdvBkqaPmZRU3tw=",
"dev": true
},
"espree": {
- "version": "9.4.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/espree/-/espree-9.4.1.tgz",
- "integrity": "sha1-UdYJJhVWeiws/3gzRF43wowAZb0=",
+ "version": "9.5.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/espree/-/espree-9.5.1.tgz",
+ "integrity": "sha1-Tyak1fGJBb9PLgvZkAKquAfpbdQ=",
"dev": true,
"requires": {
"acorn": "^8.8.0",
"acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.3.0"
+ "eslint-visitor-keys": "^3.4.0"
}
},
"esquery": {
- "version": "1.4.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/esquery/-/esquery-1.4.0.tgz",
- "integrity": "sha1-IUj/w4uC6McFff7UhCWz5h8PJKU=",
+ "version": "1.5.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/esquery/-/esquery-1.5.0.tgz",
+ "integrity": "sha1-bOF3ON6Fd2lO3XNhxXGCrIyw2ws=",
"dev": true,
"requires": {
"estraverse": "^5.1.0"
@@ -753,6 +760,17 @@
"glob-parent": "^5.1.2",
"merge2": "^1.3.0",
"micromatch": "^4.0.4"
+ },
+ "dependencies": {
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha1-hpgyxYA0/mikCTwX3BXoNA2EAcQ=",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ }
}
},
"fast-json-stable-stringify": {
@@ -768,9 +786,9 @@
"dev": true
},
"fastq": {
- "version": "1.13.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/fastq/-/fastq-1.13.0.tgz",
- "integrity": "sha1-YWdg+Ip1Jr38WWt8q4wYk4w2uYw=",
+ "version": "1.15.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/fastq/-/fastq-1.15.0.tgz",
+ "integrity": "sha1-0E0HxqKmj+RZn+qNLhA6k3+uazo=",
"dev": true,
"requires": {
"reusify": "^1.0.4"
@@ -874,18 +892,18 @@
}
},
"glob-parent": {
- "version": "5.1.2",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha1-hpgyxYA0/mikCTwX3BXoNA2EAcQ=",
+ "version": "6.0.2",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha1-bSN9mQg5UMeSkPJMdkKj3poo+eM=",
"dev": true,
"requires": {
- "is-glob": "^4.0.1"
+ "is-glob": "^4.0.3"
}
},
"globals": {
- "version": "13.18.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/globals/-/globals-13.18.0.tgz",
- "integrity": "sha1-+yJNrusrt9JUzSxkDwA1KLjQwdw=",
+ "version": "13.20.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/globals/-/globals-13.20.0.tgz",
+ "integrity": "sha1-6idqHlCP/U8WEoiPnRutHicXv4I=",
"dev": true,
"requires": {
"type-fest": "^0.20.2"
@@ -933,9 +951,9 @@
"dev": true
},
"ignore": {
- "version": "5.2.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ignore/-/ignore-5.2.0.tgz",
- "integrity": "sha1-bTusj6f+DUXZ+b57rC/CeVd+NFo=",
+ "version": "5.2.4",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ignore/-/ignore-5.2.4.tgz",
+ "integrity": "sha1-opHAxheP8blgvv5H/N7DAWdKYyQ=",
"dev": true
},
"import-fresh": {
@@ -971,9 +989,9 @@
"dev": true
},
"is-core-module": {
- "version": "2.11.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-core-module/-/is-core-module-2.11.0.tgz",
- "integrity": "sha1-rUyz44Y+gUUjyW8/WNJsxXD/AUQ=",
+ "version": "2.12.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-core-module/-/is-core-module-2.12.0.tgz",
+ "integrity": "sha1-Nq1i9vc8glP9ZHJRehJIPPA+fsQ=",
"dev": true,
"requires": {
"has": "^1.0.3"
@@ -1124,9 +1142,9 @@
"dev": true
},
"js-sdsl": {
- "version": "4.2.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/js-sdsl/-/js-sdsl-4.2.0.tgz",
- "integrity": "sha1-J46Yt76libi6rwSMIK6xnretCdA=",
+ "version": "4.4.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/js-sdsl/-/js-sdsl-4.4.0.tgz",
+ "integrity": "sha1-i0N9vmQtqpV2BAC2AjeO2P/qhDA=",
"dev": true
},
"js-tokens": {
@@ -1192,12 +1210,12 @@
}
},
"magic-string": {
- "version": "0.26.7",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/magic-string/-/magic-string-0.26.7.tgz",
- "integrity": "sha1-yvfa9hs06ZgvgijEUnR02siYHW8=",
+ "version": "0.30.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/magic-string/-/magic-string-0.30.0.tgz",
+ "integrity": "sha1-/VikdIxcRUczikJOkPpd0X9N5Sk=",
"dev": true,
"requires": {
- "sourcemap-codec": "^1.4.8"
+ "@jridgewell/sourcemap-codec": "^1.4.13"
}
},
"merge-stream": {
@@ -1388,9 +1406,9 @@
}
},
"punycode": {
- "version": "2.1.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha1-tYsBCsQMIsVldhbI0sLALHv0eew=",
+ "version": "2.3.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/punycode/-/punycode-2.3.0.tgz",
+ "integrity": "sha1-9n+mfJTaj00M//mBruQRgGQZm48=",
"dev": true
},
"queue-microtask": {
@@ -1399,19 +1417,22 @@
"integrity": "sha1-SSkii7xyTfrEPg77BYyve2z7YkM=",
"dev": true
},
- "regexpp": {
- "version": "3.2.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/regexpp/-/regexpp-3.2.0.tgz",
- "integrity": "sha1-BCWido2PI7rXDKS5BGH6LxIT4bI=",
- "dev": true
+ "randombytes": {
+ "version": "2.1.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/randombytes/-/randombytes-2.1.0.tgz",
+ "integrity": "sha1-32+ENy8CcNxlzfYpE0mrekc9Tyo=",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "^5.1.0"
+ }
},
"resolve": {
- "version": "1.22.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/resolve/-/resolve-1.22.1.tgz",
- "integrity": "sha1-J8suu1P5GrtJRwqSi7p1WAZqwXc=",
+ "version": "1.22.2",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/resolve/-/resolve-1.22.2.tgz",
+ "integrity": "sha1-DtCUPU4wGGeVV2bJ8+GubQHGhF8=",
"dev": true,
"requires": {
- "is-core-module": "^2.9.0",
+ "is-core-module": "^2.11.0",
"path-parse": "^1.0.7",
"supports-preserve-symlinks-flag": "^1.0.0"
}
@@ -1438,22 +1459,22 @@
}
},
"rollup": {
- "version": "3.4.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/rollup/-/rollup-3.4.0.tgz",
- "integrity": "sha1-PzY9RkdN61Tm2jjTmMOvhFwbfUM=",
+ "version": "3.21.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/rollup/-/rollup-3.21.1.tgz",
+ "integrity": "sha1-1W8y7gQTg7YJCePTGVtUtpkS27A=",
"dev": true,
"requires": {
"fsevents": "~2.3.2"
}
},
"rollup-plugin-dts": {
- "version": "5.0.0",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/rollup-plugin-dts/-/rollup-plugin-dts-5.0.0.tgz",
- "integrity": "sha1-1kXyIupvfWt9236pjEWg5aOlaew=",
+ "version": "5.3.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/rollup-plugin-dts/-/rollup-plugin-dts-5.3.0.tgz",
+ "integrity": "sha1-gKlZiAAvGI43b22zt+L1NnkWiVc=",
"dev": true,
"requires": {
"@babel/code-frame": "^7.18.6",
- "magic-string": "^0.26.7"
+ "magic-string": "^0.30.0"
}
},
"run-parallel": {
@@ -1465,15 +1486,30 @@
"queue-microtask": "^1.2.2"
}
},
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY=",
+ "dev": true
+ },
"semver": {
- "version": "7.3.8",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/semver/-/semver-7.3.8.tgz",
- "integrity": "sha1-B6eP6vs/ezI0fXJeM95+Ki32d5g=",
+ "version": "7.5.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/semver/-/semver-7.5.0.tgz",
+ "integrity": "sha1-7YxdyO+2xinIiyPUHcm/QMHZbNA=",
"dev": true,
"requires": {
"lru-cache": "^6.0.0"
}
},
+ "serialize-javascript": {
+ "version": "6.0.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/serialize-javascript/-/serialize-javascript-6.0.1.tgz",
+ "integrity": "sha1-sgbvsnw9oLCra1L0jRcLeZZFjlw=",
+ "dev": true,
+ "requires": {
+ "randombytes": "^2.1.0"
+ }
+ },
"shebang-command": {
"version": "2.0.0",
"resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/shebang-command/-/shebang-command-2.0.0.tgz",
@@ -1501,6 +1537,12 @@
"integrity": "sha1-ZTm+hwwWWtvVJAIg2+Nh8bxNRjQ=",
"dev": true
},
+ "smob": {
+ "version": "0.0.6",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/smob/-/smob-0.0.6.tgz",
+ "integrity": "sha1-CbJo/qkWFYongcFSBExhVa27iqE=",
+ "dev": true
+ },
"source-map": {
"version": "0.6.1",
"resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/source-map/-/source-map-0.6.1.tgz",
@@ -1517,12 +1559,6 @@
"source-map": "^0.6.0"
}
},
- "sourcemap-codec": {
- "version": "1.4.8",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
- "integrity": "sha1-6oBL2UhXQC5pktBaOO8a41qatMQ=",
- "dev": true
- },
"strip-ansi": {
"version": "6.0.1",
"resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/strip-ansi/-/strip-ansi-6.0.1.tgz",
@@ -1566,9 +1602,9 @@
"dev": true
},
"terser": {
- "version": "5.15.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/terser/-/terser-5.15.1.tgz",
- "integrity": "sha1-hWGvbg/W2DlmnHO5K91Xd9hw7Ww=",
+ "version": "5.17.1",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/terser/-/terser-5.17.1.tgz",
+ "integrity": "sha1-lI8QgwRUdh4u7txt6+RcUyyD/Wk=",
"dev": true,
"requires": {
"@jridgewell/source-map": "^0.3.2",
@@ -1593,9 +1629,9 @@
}
},
"tslib": {
- "version": "2.4.1",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/tslib/-/tslib-2.4.1.tgz",
- "integrity": "sha1-DQv7qsKIC5HiLfB2jlW+l1OlsX4=",
+ "version": "2.5.0",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/tslib/-/tslib-2.5.0.tgz",
+ "integrity": "sha1-Qr/thvV4eutB0DGGbI9AJCng/d8=",
"dev": true
},
"tsutils": {
@@ -1631,9 +1667,9 @@
"dev": true
},
"typescript": {
- "version": "4.9.3",
- "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/typescript/-/typescript-4.9.3.tgz",
- "integrity": "sha1-OuowfBdGuMOEQ12Kw2uKLlgNhds=",
+ "version": "5.0.4",
+ "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/typescript/-/typescript-5.0.4.tgz",
+ "integrity": "sha1-shf9IBGb1hqU1AESdOCrNpBY2js=",
"dev": true
},
"uri-js": {
diff --git a/src/mono/wasm/runtime/package.json b/src/mono/wasm/runtime/package.json
index 96adfde687dd34..46345ab644ff7c 100644
--- a/src/mono/wasm/runtime/package.json
+++ b/src/mono/wasm/runtime/package.json
@@ -21,18 +21,18 @@
"author": "Microsoft",
"license": "MIT",
"devDependencies": {
- "@rollup/plugin-typescript": "9.0.2",
+ "@rollup/plugin-typescript": "11.1.0",
"@rollup/plugin-virtual": "3.0.1",
- "@rollup/plugin-terser": "0.1.0",
- "@typescript-eslint/eslint-plugin": "5.44.0",
- "@typescript-eslint/parser": "5.44.0",
- "eslint": "8.28.0",
+ "@rollup/plugin-terser": "0.4.1",
+ "@typescript-eslint/eslint-plugin": "5.59.1",
+ "@typescript-eslint/parser": "5.59.1",
+ "eslint": "8.39.0",
"fast-glob": "3.2.12",
"git-commit-info": "2.0.1",
- "rollup": "3.4.0",
- "rollup-plugin-dts": "5.0.0",
- "terser": "5.15.1",
- "tslib": "2.4.1",
- "typescript": "4.9.3"
+ "rollup": "3.21.1",
+ "rollup-plugin-dts": "5.3.0",
+ "terser": "5.17.1",
+ "tslib": "2.5.0",
+ "typescript": "5.0.4"
}
}
diff --git a/src/mono/wasm/runtime/polyfills.ts b/src/mono/wasm/runtime/polyfills.ts
index 7185f3579c7152..4edfffe60f4675 100644
--- a/src/mono/wasm/runtime/polyfills.ts
+++ b/src/mono/wasm/runtime/polyfills.ts
@@ -190,6 +190,9 @@ export async function init_polyfills_async(): Promise {
const { performance } = INTERNAL.require("perf_hooks");
globalThis.performance = performance;
}
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore:
+ INTERNAL.process = await import(/* webpackIgnore: true */"process");
if (!globalThis.crypto) {
globalThis.crypto = {};
diff --git a/src/mono/wasm/runtime/run-outer.ts b/src/mono/wasm/runtime/run-outer.ts
index b28dc694a25e9a..0321cd8e574100 100644
--- a/src/mono/wasm/runtime/run-outer.ts
+++ b/src/mono/wasm/runtime/run-outer.ts
@@ -60,7 +60,7 @@ export class HostBuilder implements DotnetHostBuilder {
const handler = function fatal_handler(event: Event, error: any) {
event.preventDefault();
try {
- mono_exit(1, error);
+ if (!error || !error.silent) mono_exit(1, error);
} catch (err) {
// no not re-throw from the fatal handler
}
diff --git a/src/mono/wasm/runtime/run.ts b/src/mono/wasm/runtime/run.ts
index 1c1d805e3a7dfa..9b92f33555e65d 100644
--- a/src/mono/wasm/runtime/run.ts
+++ b/src/mono/wasm/runtime/run.ts
@@ -1,7 +1,7 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
-import { ENVIRONMENT_IS_WEB, Module, runtimeHelpers } from "./globals";
+import { ENVIRONMENT_IS_NODE, ENVIRONMENT_IS_WEB, INTERNAL, Module, runtimeHelpers } from "./globals";
import { mono_wasm_wait_for_debugger } from "./debug";
import { abort_startup, mono_wasm_set_main_args } from "./startup";
import cwraps from "./cwraps";
@@ -127,7 +127,11 @@ function set_exit_code_and_quit_now(exit_code: number, reason?: any): void {
logErrorOnExit(exit_code, reason);
appendElementOnExit(exit_code);
if (exit_code !== 0 || !ENVIRONMENT_IS_WEB) {
- if (runtimeHelpers.quit) {
+ if (ENVIRONMENT_IS_NODE && INTERNAL.process) {
+ INTERNAL.process.exit(exit_code);
+ throw reason;
+ }
+ else if (runtimeHelpers.quit) {
runtimeHelpers.quit(exit_code, reason);
} else {
throw reason;
diff --git a/src/mono/wasm/runtime/startup.ts b/src/mono/wasm/runtime/startup.ts
index a6d20cd699a857..1ae473cf243389 100644
--- a/src/mono/wasm/runtime/startup.ts
+++ b/src/mono/wasm/runtime/startup.ts
@@ -106,6 +106,7 @@ export function configureEmscriptenStartup(module: DotnetModuleInternal): void {
// - here we resolve the promise returned by createDotnetRuntime export
// - any code after createDotnetRuntime is executed now
dotnetReady.promise_control.resolve(exportedRuntimeAPI);
+ runtimeHelpers.runtimeReady = true;
}).catch(err => {
dotnetReady.promise_control.reject(err);
});
diff --git a/src/mono/wasm/runtime/types.ts b/src/mono/wasm/runtime/types.ts
index 53e493077afd1a..3f1c811dceccb0 100644
--- a/src/mono/wasm/runtime/types.ts
+++ b/src/mono/wasm/runtime/types.ts
@@ -135,6 +135,7 @@ export type RuntimeHelpers = {
preferredIcuAsset: string | null,
invariantMode: boolean,
updateMemoryViews: () => void
+ runtimeReady: boolean,
}
export type AOTProfilerOptions = {
diff --git a/src/mono/wasm/test-main.js b/src/mono/wasm/test-main.js
index 6dcf03a8ab48cc..63dc5d143f7aff 100644
--- a/src/mono/wasm/test-main.js
+++ b/src/mono/wasm/test-main.js
@@ -4,13 +4,13 @@
//
// Run runtime tests under a JS shell or a browser
//
-"use strict";
+import { dotnet, exit } from './dotnet.js';
/*****************************************************************************
* Please don't use this as template for startup code.
* There are simpler and better samples like src\mono\sample\wasm\browser\main.js
- * This one is not ES6 nor CJS, doesn't use top level await and has edge case polyfills.
+ * It has edge case polyfills.
* It handles strange things which happen with XHarness.
****************************************************************************/
@@ -296,8 +296,7 @@ async function dry_run(runArgs) {
try {
console.log("Silently starting separate runtime instance as another ES6 module to populate caches...");
// this separate instance of the ES6 module, in which we just populate the caches
- const { dotnet, exit } = await import('./dotnet.js?dry_run=true');
- mono_exit = exit;
+ const { dotnet } = await import('./dotnet.js?dry_run=true');
configureRuntime(dotnet, runArgs);
// silent minimal startup
await dotnet.withConfig({
@@ -310,12 +309,14 @@ async function dry_run(runArgs) {
// If there was previously a matching snapshot, it will be used.
exitAfterSnapshot: true
}).create();
+ console.log("Separate runtime instance finished loading.");
} catch (err) {
- if (err && err.status !== 0) {
- return false;
+ if (err && err.status === 0) {
+ return true;
}
+ console.log("Separate runtime instance failed loading.", err);
+ return false;
}
- console.log("Separate runtime instance finished loading.");
return true;
}
@@ -334,7 +335,6 @@ async function run() {
// this is subsequent run with the actual tests. It will use whatever was cached in the previous run.
// This way, we are testing that the cached version works.
- const { dotnet, exit, INTERNAL } = await import('./dotnet.js');
mono_exit = exit;
if (runArgs.applicationArguments.length == 0) {
@@ -342,7 +342,7 @@ async function run() {
return;
}
- configureRuntime(dotnet, runArgs, INTERNAL);
+ configureRuntime(dotnet, runArgs);
App.runtime = await dotnet.create();
App.runArgs = runArgs
@@ -398,4 +398,4 @@ async function run() {
}
}
-run();
+await run();