diff --git a/eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml b/eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml index 0c66abfa042d03..1fd298c4ecead8 100644 --- a/eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml +++ b/eng/pipelines/extra-platforms/runtime-extra-platforms-wasm.yml @@ -155,7 +155,7 @@ jobs: - wasi_wasm - wasi_wasm_win nameSuffix: '_Smoke' - extraBuildArgs: /p:EnableAggressiveTrimming=true /p:RunWasmSamples=true /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) + extraBuildArgs: /p:EnableAggressiveTrimming=true /p:RunWasmSamples=false /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) shouldRunSmokeOnly: true # ignore test failures for runtime-extra-platforms, but not when this # is run as part of a wasm specific pipeline like runtime-wasm @@ -218,7 +218,8 @@ jobs: platforms: - wasi_wasm - wasi_wasm_win - extraBuildArgs: /p:EnableAggressiveTrimming=true /p:RunWasmSamples=true /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) + extraBuildArgs: /p:EnableAggressiveTrimming=true /p:RunWasmSamples=false /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) + shouldRunSmokeOnly: true # always run for wasm only pipelines alwaysRun: ${{ parameters.isWasmOnlyBuild }} isExtraPlatformsBuild: ${{ parameters.isExtraPlatformsBuild }} diff --git a/eng/pipelines/runtime-wasm.yml b/eng/pipelines/runtime-wasm.yml index 5727ff30b86a74..44710d10d3aa57 100644 --- a/eng/pipelines/runtime-wasm.yml +++ b/eng/pipelines/runtime-wasm.yml @@ -24,3 +24,4 @@ extends: isExtraPlatformsBuild: ${{ variables.isExtraPlatformsBuild }} isWasmOnlyBuild: ${{ variables.isWasmOnlyBuild }} isRollingBuild: ${{ variables.isRollingBuild }} + excludeOptional: false diff --git a/eng/testing/tests.wasm.targets b/eng/testing/tests.wasm.targets index 8bf322e1e8bb9d..24b79d0334c443 100644 --- a/eng/testing/tests.wasm.targets +++ b/eng/testing/tests.wasm.targets @@ -56,7 +56,7 @@ local - + + wasi diff --git a/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs b/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs index 645d2845d112c9..0df7cb5f484b63 100644 --- a/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs +++ b/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs @@ -3153,6 +3153,7 @@ public static void DCJS_MyPersonSurrogate() } [Fact] + [SkipOnPlatform(TestPlatforms.Wasi, "/tmp is not preopened in the wasmtime '--dir .' sandbox, so temp files cannot be created.")] public static void DCJS_FileStreamSurrogate() { using (var testFile = TempFile.Create()) diff --git a/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs b/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs index 5bd4acafb98b98..49ffb75707f0f3 100644 --- a/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs +++ b/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs @@ -4221,6 +4221,7 @@ public static void DCS_MyPersonSurrogate() } [Fact] + [SkipOnPlatform(TestPlatforms.Wasi, "/tmp is not preopened in the wasmtime '--dir .' sandbox, so temp files cannot be created.")] public static void DCS_FileStreamSurrogate() { using (var testFile = TempFile.Create()) diff --git a/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs b/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs index e0b76d99ce73fb..4f532cd5228720 100644 --- a/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs +++ b/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs @@ -142,7 +142,7 @@ public static IEnumerable NativeDigitTestData() : new string[] { "\u06F0", "\u06F1", "\u06F2", "\u06F3", "\u06F4", "\u06F5", "\u06F6", "\u06F7", "\u06F8", "\u06F9" }}; } - public static bool FullICUPlatform => PlatformDetection.ICUVersion.Major >= 66 && PlatformDetection.IsNotBrowser; + public static bool FullICUPlatform => PlatformDetection.ICUVersion.Major >= 66 && !PlatformDetection.IsWasm; [ConditionalTheory(typeof(NumberFormatInfoMiscTests), nameof(FullICUPlatform))] [MemberData(nameof(NativeDigitTestData))] diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.Generic.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.Generic.cs index e6ac3da7f45900..55e28ac81317a3 100644 --- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.Generic.cs +++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.Generic.cs @@ -49,7 +49,7 @@ public void CreateInstanceT_StructWithPublicDefaultConstructor_InvokesConstructo Assert.True(Activator.CreateInstance().ConstructorInvoked); [Fact] - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] public void CreateInstanceT_StructWithPrivateDefaultConstructor_ThrowsMissingMethodException() => Assert.Throws(() => Activator.CreateInstance()); diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.cs index f281cf8e905ae2..94c2b580c12939 100644 --- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.cs +++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ActivatorTests.cs @@ -782,7 +782,7 @@ public static void TestingCreateInstanceFromObjectHandle(string assemblyFile, st }; [ConditionalTheory(typeof(PlatformDetection), nameof(PlatformDetection.IsAssemblyLoadingSupported))] - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] [MemberData(nameof(TestingCreateInstanceObjectHandleData))] public static void TestingCreateInstanceObjectHandle(string assemblyName, string type, string returnedFullNameType, Type exceptionType, bool returnNull) { @@ -861,7 +861,7 @@ public static IEnumerable TestingCreateInstanceFromObjectHandleFullSig } [ConditionalTheory(typeof(PlatformDetection), nameof(PlatformDetection.IsAssemblyLoadingSupported))] - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] [MemberData(nameof(TestingCreateInstanceObjectHandleFullSignatureData))] public static void TestingCreateInstanceObjectHandleFullSignature(string assemblyName, string type, bool ignoreCase, BindingFlags bindingAttr, Binder binder, object[] args, CultureInfo culture, object[] activationAttributes, string returnedFullNameType, bool returnNull) { diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs index 2e560b1aca8c7e..83e6466ec0279e 100644 --- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs +++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/NullableMetadataTests.cs @@ -10,7 +10,7 @@ namespace System.Runtime.Tests { - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] public static class NullableMetadataTests { private const string NullableAttributeFullName = "System.Runtime.CompilerServices.NullableAttribute"; @@ -133,6 +133,7 @@ public static void NullableAttributesOnPublicApiOnly(Type type) [InlineData("mscorlib")] [InlineData("System.Threading.Overlapped")] [ActiveIssue("https://github.com/dotnet/runtime/issues/99592", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsAppleMobile))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", TestPlatforms.Wasi)] public static void ShimsHaveOnlyTypeForwards(string assemblyName) { Assembly assembly = Assembly.Load(assemblyName); @@ -143,6 +144,7 @@ public static void ShimsHaveOnlyTypeForwards(string assemblyName) } [Fact] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", TestPlatforms.Wasi)] public static void ShimsDontHaveNullablePublicOnlyAttribute() { Assembly assembly = Assembly.Load("mscorlib"); diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Reflection/ModuleTests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Reflection/ModuleTests.cs index df758d8faca60c..f3d92ac54d3241 100644 --- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Reflection/ModuleTests.cs +++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Reflection/ModuleTests.cs @@ -213,7 +213,7 @@ public void GetMethod_NullTypes() } [Fact] - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] public void GetMethod_AmbiguousMatch() { var ex = Assert.Throws(() => TestModule.GetMethod("TestMethodFoo")); @@ -222,7 +222,7 @@ public void GetMethod_AmbiguousMatch() } [Fact] - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] public void GetMethod() { var method = TestModule.GetMethod("TestMethodFoo", Type.EmptyTypes); @@ -239,7 +239,7 @@ public void GetMethod() } [Fact] - [ActiveIssue("https://github.com/dotnet/runtime/issues/51912", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsBrowser))] + [ActiveIssue("https://github.com/dotnet/runtime/issues/129223", typeof(PlatformDetection), nameof(PlatformDetection.IsBuiltWithAggressiveTrimming), nameof(PlatformDetection.IsWasm))] public void GetMethods() { var methodNames = TestModule.GetMethods().Select(m => m.Name).ToArray(); diff --git a/src/mono/sample/wasi/jco/.npmrc b/src/mono/sample/wasi/jco/.npmrc deleted file mode 100644 index 33312472ae5bf4..00000000000000 --- a/src/mono/sample/wasi/jco/.npmrc +++ /dev/null @@ -1 +0,0 @@ -registry=https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ \ No newline at end of file diff --git a/src/mono/sample/wasi/jco/Program.cs b/src/mono/sample/wasi/jco/Program.cs deleted file mode 100644 index d6637f711e578c..00000000000000 --- a/src/mono/sample/wasi/jco/Program.cs +++ /dev/null @@ -1,41 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System; -using System.Net.Http.Headers; -using System.Net.Http; -using System.Threading.Tasks; -using System.Threading; -using System.Runtime.CompilerServices; - -// keep in sync with src\mono\wasi\testassets\Http.cs -public static class WasiMainWrapper -{ - public static async Task MainAsync(string[] args) - { - await Task.Delay(100); - - using HttpClient client = new(); - client.DefaultRequestHeaders.Accept.Clear(); - client.DefaultRequestHeaders.Add("User-Agent", "dotnet WASI unit test"); - - var query="https://corefx-net-http11.azurewebsites.net/Echo.ashx"; - var json = await client.GetStringAsync(query); - - Console.WriteLine(); - Console.WriteLine("GET "+query); - Console.WriteLine(); - Console.WriteLine(json); - - return 0; - } - - public static int Main(string[] args) - { - return PollWasiEventLoopUntilResolved((Thread)null!, MainAsync(args)); - - [UnsafeAccessor(UnsafeAccessorKind.StaticMethod, Name = "PollWasiEventLoopUntilResolved")] - static extern int PollWasiEventLoopUntilResolved(Thread t, Task mainTask); - } - -} diff --git a/src/mono/sample/wasi/jco/Wasi.Jco.Http.Sample.csproj b/src/mono/sample/wasi/jco/Wasi.Jco.Http.Sample.csproj deleted file mode 100644 index 7fbbc7083e6b8b..00000000000000 --- a/src/mono/sample/wasi/jco/Wasi.Jco.Http.Sample.csproj +++ /dev/null @@ -1,10 +0,0 @@ - - - $(NetCoreAppCurrent) - <_WasiNeedsHttp>true - true - true - - - - diff --git a/src/mono/sample/wasi/jco/main.mjs b/src/mono/sample/wasi/jco/main.mjs deleted file mode 100644 index c6979504523038..00000000000000 --- a/src/mono/sample/wasi/jco/main.mjs +++ /dev/null @@ -1,3 +0,0 @@ -import { run } from './Wasi.Jco.Http.Sample.js'; - -run.run(); diff --git a/src/mono/sample/wasi/jco/package-lock.json b/src/mono/sample/wasi/jco/package-lock.json deleted file mode 100644 index 7f4379b3bc33f0..00000000000000 --- a/src/mono/sample/wasi/jco/package-lock.json +++ /dev/null @@ -1,912 +0,0 @@ -{ - "name": "jco", - "lockfileVersion": 2, - "requires": true, - "packages": { - "": { - "devDependencies": { - "@bytecodealliance/jco": "1.5.0" - } - }, - "node_modules/@bytecodealliance/componentize-js": { - "version": "0.11.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/componentize-js/-/componentize-js-0.11.4.tgz", - "integrity": "sha1-vD4DqeyGtXWn2m0req3EQaYD+M0=", - "dev": true, - "workspaces": [ - "." - ], - "dependencies": { - "@bytecodealliance/jco": "1.4.4", - "@bytecodealliance/wizer": "^7.0.4", - "es-module-lexer": "^1.5.4" - } - }, - "node_modules/@bytecodealliance/componentize-js/node_modules/@bytecodealliance/jco": { - "version": "1.4.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/jco/-/jco-1.4.4.tgz", - "integrity": "sha1-ogqFzKrFpvgHbtqzWxuhwQvU8Gw=", - "dev": true, - "license": "(Apache-2.0 WITH LLVM-exception)", - "workspaces": [ - "packages/preview2-shim" - ], - "dependencies": { - "@bytecodealliance/preview2-shim": "^0.16.5", - "binaryen": "^118.0.0", - "chalk-template": "^1", - "commander": "^12", - "mkdirp": "^3", - "ora": "^8", - "terser": "^5" - }, - "bin": { - "jco": "src/jco.js" - } - }, - "node_modules/@bytecodealliance/jco": { - "version": "1.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/jco/-/jco-1.5.0.tgz", - "integrity": "sha1-yJZfRrdmgncpVuk9dVjEgW7Xg30=", - "dev": true, - "license": "(Apache-2.0 WITH LLVM-exception)", - "workspaces": [ - "packages/preview2-shim" - ], - "dependencies": { - "@bytecodealliance/componentize-js": "^0.11.3", - "@bytecodealliance/preview2-shim": "^0.16.5", - "binaryen": "^118.0.0", - "chalk-template": "^1", - "commander": "^12", - "mkdirp": "^3", - "ora": "^8", - "terser": "^5" - }, - "bin": { - "jco": "src/jco.js" - } - }, - "node_modules/@bytecodealliance/preview2-shim": { - "version": "0.16.5", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/preview2-shim/-/preview2-shim-0.16.5.tgz", - "integrity": "sha1-JNmvYkPsqxnU/5exhq9ZFeopB0E=", - "dev": true, - "license": "(Apache-2.0 WITH LLVM-exception)" - }, - "node_modules/@bytecodealliance/wizer": { - "version": "7.0.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/wizer/-/wizer-7.0.4.tgz", - "integrity": "sha1-/4B8pOvUdUhGD/AUDL7dT8k1Pbk=", - "dev": true, - "license": "Apache-2.0", - "bin": { - "wizer": "wizer.js" - }, - "engines": { - "node": ">=16" - }, - "optionalDependencies": { - "@bytecodealliance/wizer-darwin-arm64": "7.0.4", - "@bytecodealliance/wizer-darwin-x64": "7.0.4", - "@bytecodealliance/wizer-linux-arm64": "7.0.4", - "@bytecodealliance/wizer-linux-s390x": "7.0.4", - "@bytecodealliance/wizer-linux-x64": "7.0.4", - "@bytecodealliance/wizer-win32-x64": "7.0.4" - } - }, - "node_modules/@bytecodealliance/wizer-darwin-arm64": { - "version": "7.0.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/wizer-darwin-arm64/-/wizer-darwin-arm64-7.0.4.tgz", - "integrity": "sha1-wlz5h/ndwFEUCmezfbOyrBS5QnE=", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "Apache-2.0", - "optional": true, - "os": [ - "darwin" - ], - "bin": { - "wizer-darwin-arm64": "wizer" - } - }, - "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha1-3M5q/3S99trRqVgCtpsEovyx+zY=", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha1-eg7mAfYPmaIMfHxf8MgDiMEYm9Y=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha1-VY+2Ry7RakyFC4iVMOazZDjEkoA=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@jridgewell/source-map": { - "version": "0.3.6", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha1-nXHKiG4yUC65NiyadKRnh8Nt+Bo=", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, - "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha1-MYi8snOkFLDSFf0ipYVAuYm5QJo=", - "dev": true, - "license": "MIT" - }, - "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha1-FfGQ6YiV8/wjJ27hS8drZ1wuUPA=", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha1-cWFr3MviXielRDngBG6JynbfIkg=", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha1-MYPjj66aZdfLXlOUXNWJfQJgoGo=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "node_modules/binaryen": { - "version": "118.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/binaryen/-/binaryen-118.0.0.tgz", - "integrity": "sha1-pOqWZdVXz8gOYvH/VzsEimOYt64=", - "dev": true, - "license": "Apache-2.0", - "bin": { - "wasm-as": "bin/wasm-as", - "wasm-ctor-eval": "bin/wasm-ctor-eval", - "wasm-dis": "bin/wasm-dis", - "wasm-merge": "bin/wasm-merge", - "wasm-metadce": "bin/wasm-metadce", - "wasm-opt": "bin/wasm-opt", - "wasm-reduce": "bin/wasm-reduce", - "wasm-shell": "bin/wasm-shell", - "wasm2js": "bin/wasm2js" - } - }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha1-KxRqb9cugLT1XSVfNe1Zo6mkG9U=", - "dev": true, - "license": "MIT" - }, - "node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha1-Z8IKfr73Dn85cKAfkPohDLaGA4U=", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/chalk-template": { - "version": "1.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/chalk-template/-/chalk-template-1.1.0.tgz", - "integrity": "sha1-/8Vdtt10XpOUuFMnyKyEZu23p7E=", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.2.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/chalk/chalk-template?sponsor=1" - } - }, - "node_modules/cli-cursor": { - "version": "4.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha1-POz+NzS/T+Aqg2HL3A9v4oxqV+o=", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-spinners": { - "version": "2.9.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha1-F3Oo9LnE1qwxVj31Oz/B15Ri/kE=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/commander": { - "version": "12.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/commander/-/commander-12.1.0.tgz", - "integrity": "sha1-AUI7NvUBJZ/arE0OTWDJbJkVhdM=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "node_modules/emoji-regex": { - "version": "10.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha1-dpmLkmhAnrPa496YklTUVucM/iM=", - "dev": true, - "license": "MIT" - }, - "node_modules/es-module-lexer": { - "version": "1.5.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha1-qO/sOj2pkeYO+mtjOnytarjSa3g=", - "dev": true, - "license": "MIT" - }, - "node_modules/get-east-asian-width": { - "version": "1.2.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", - "integrity": "sha1-Xm69m67m+4t7a9UFIhBl8M2R9k4=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-interactive": { - "version": "2.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-interactive/-/is-interactive-2.0.0.tgz", - "integrity": "sha1-QMV2FFk4JtoRAK3mBZd41ZfxbpA=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-unicode-supported": { - "version": "2.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", - "integrity": "sha1-/fMt+a6Y/2qyztwVWlpuiVcBxFE=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols": { - "version": "6.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/log-symbols/-/log-symbols-6.0.0.tgz", - "integrity": "sha1-u5Xl8FMiZRysMMD+tkBPnyqKlDk=", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.3.0", - "is-unicode-supported": "^1.3.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha1-2CSYS2FsKSouGYIH1KYJmDhC9xQ=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/mkdirp": { - "version": "3.0.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha1-5E5MVgf7J5wWgkFxPMbg/qmty1A=", - "dev": true, - "license": "MIT", - "bin": { - "mkdirp": "dist/cjs/src/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha1-0Oluu1awdHbfHdnEgG5SN5hcpF4=", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora": { - "version": "8.0.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ora/-/ora-8.0.1.tgz", - "integrity": "sha1-bcuSUKYpZCy+DS3zpjMa1veirz4=", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.3.0", - "cli-cursor": "^4.0.0", - "cli-spinners": "^2.9.2", - "is-interactive": "^2.0.0", - "is-unicode-supported": "^2.0.0", - "log-symbols": "^6.0.0", - "stdin-discarder": "^0.2.1", - "string-width": "^7.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/restore-cursor": { - "version": "4.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha1-UZVgpDGJdQlt725gnUQQDtqkzLk=", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha1-qaF2f4r4QVURTqq9c/mSc8j1mtk=", - "dev": true, - "license": "ISC" - }, - "node_modules/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", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/source-map-support": { - "version": "0.5.21", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha1-BP58f54e0tZiIzwoyys1ufY/bk8=", - "dev": true, - "license": "MIT", - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/stdin-discarder": { - "version": "0.2.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/stdin-discarder/-/stdin-discarder-0.2.2.tgz", - "integrity": "sha1-OQA39ExK4aGuU1xf443Dq6jZl74=", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/string-width": { - "version": "7.2.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/string-width/-/string-width-7.2.0.tgz", - "integrity": "sha1-tbuOIWXOJ11NQ0dt0nAK2Qkdttw=", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha1-1bZWjKaJ2FYTcLBwdoXSJDT6/0U=", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/terser": { - "version": "5.31.6", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/terser/-/terser-5.31.6.tgz", - "integrity": "sha1-xjhYoPBwOYjQJmqC/L8te6dkIrE=", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "bin": { - "terser": "bin/terser" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/terser/node_modules/commander": { - "version": "2.20.3", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/commander/-/commander-2.20.3.tgz", - "integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=", - "dev": true, - "license": "MIT" - } - }, - "dependencies": { - "@bytecodealliance/componentize-js": { - "version": "0.11.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/componentize-js/-/componentize-js-0.11.4.tgz", - "integrity": "sha1-vD4DqeyGtXWn2m0req3EQaYD+M0=", - "dev": true, - "requires": { - "@bytecodealliance/jco": "1.4.4", - "@bytecodealliance/wizer": "^7.0.4", - "es-module-lexer": "^1.5.4" - }, - "dependencies": { - "@bytecodealliance/jco": { - "version": "1.4.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/jco/-/jco-1.4.4.tgz", - "integrity": "sha1-ogqFzKrFpvgHbtqzWxuhwQvU8Gw=", - "dev": true, - "requires": { - "@bytecodealliance/preview2-shim": "^0.16.5", - "binaryen": "^118.0.0", - "chalk-template": "^1", - "commander": "^12", - "mkdirp": "^3", - "ora": "^8", - "terser": "^5" - } - } - } - }, - "@bytecodealliance/jco": { - "version": "1.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/jco/-/jco-1.5.0.tgz", - "integrity": "sha1-yJZfRrdmgncpVuk9dVjEgW7Xg30=", - "dev": true, - "requires": { - "@bytecodealliance/componentize-js": "^0.11.3", - "@bytecodealliance/preview2-shim": "^0.16.5", - "binaryen": "^118.0.0", - "chalk-template": "^1", - "commander": "^12", - "mkdirp": "^3", - "ora": "^8", - "terser": "^5" - } - }, - "@bytecodealliance/preview2-shim": { - "version": "0.16.5", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/preview2-shim/-/preview2-shim-0.16.5.tgz", - "integrity": "sha1-JNmvYkPsqxnU/5exhq9ZFeopB0E=", - "dev": true - }, - "@bytecodealliance/wizer": { - "version": "7.0.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/wizer/-/wizer-7.0.4.tgz", - "integrity": "sha1-/4B8pOvUdUhGD/AUDL7dT8k1Pbk=", - "dev": true, - "requires": { - "@bytecodealliance/wizer-darwin-arm64": "7.0.4", - "@bytecodealliance/wizer-darwin-x64": "7.0.4", - "@bytecodealliance/wizer-linux-arm64": "7.0.4", - "@bytecodealliance/wizer-linux-s390x": "7.0.4", - "@bytecodealliance/wizer-linux-x64": "7.0.4", - "@bytecodealliance/wizer-win32-x64": "7.0.4" - } - }, - "@bytecodealliance/wizer-darwin-arm64": { - "version": "7.0.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@bytecodealliance/wizer-darwin-arm64/-/wizer-darwin-arm64-7.0.4.tgz", - "integrity": "sha1-wlz5h/ndwFEUCmezfbOyrBS5QnE=", - "dev": true, - "optional": true - }, - "@jridgewell/gen-mapping": { - "version": "0.3.5", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", - "integrity": "sha1-3M5q/3S99trRqVgCtpsEovyx+zY=", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.2.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.24" - } - }, - "@jridgewell/resolve-uri": { - "version": "3.1.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - "integrity": "sha1-eg7mAfYPmaIMfHxf8MgDiMEYm9Y=", - "dev": true - }, - "@jridgewell/set-array": { - "version": "1.2.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/set-array/-/set-array-1.2.1.tgz", - "integrity": "sha1-VY+2Ry7RakyFC4iVMOazZDjEkoA=", - "dev": true - }, - "@jridgewell/source-map": { - "version": "0.3.6", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/source-map/-/source-map-0.3.6.tgz", - "integrity": "sha1-nXHKiG4yUC65NiyadKRnh8Nt+Bo=", - "dev": true, - "requires": { - "@jridgewell/gen-mapping": "^0.3.5", - "@jridgewell/trace-mapping": "^0.3.25" - } - }, - "@jridgewell/sourcemap-codec": { - "version": "1.5.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", - "integrity": "sha1-MYi8snOkFLDSFf0ipYVAuYm5QJo=", - "dev": true - }, - "@jridgewell/trace-mapping": { - "version": "0.3.25", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", - "integrity": "sha1-FfGQ6YiV8/wjJ27hS8drZ1wuUPA=", - "dev": true, - "requires": { - "@jridgewell/resolve-uri": "^3.1.0", - "@jridgewell/sourcemap-codec": "^1.4.14" - } - }, - "acorn": { - "version": "8.12.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha1-cWFr3MviXielRDngBG6JynbfIkg=", - "dev": true - }, - "ansi-regex": { - "version": "6.0.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha1-MYPjj66aZdfLXlOUXNWJfQJgoGo=", - "dev": true - }, - "binaryen": { - "version": "118.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/binaryen/-/binaryen-118.0.0.tgz", - "integrity": "sha1-pOqWZdVXz8gOYvH/VzsEimOYt64=", - "dev": true - }, - "buffer-from": { - "version": "1.1.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha1-KxRqb9cugLT1XSVfNe1Zo6mkG9U=", - "dev": true - }, - "chalk": { - "version": "5.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha1-Z8IKfr73Dn85cKAfkPohDLaGA4U=", - "dev": true - }, - "chalk-template": { - "version": "1.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/chalk-template/-/chalk-template-1.1.0.tgz", - "integrity": "sha1-/8Vdtt10XpOUuFMnyKyEZu23p7E=", - "dev": true, - "requires": { - "chalk": "^5.2.0" - } - }, - "cli-cursor": { - "version": "4.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha1-POz+NzS/T+Aqg2HL3A9v4oxqV+o=", - "dev": true, - "requires": { - "restore-cursor": "^4.0.0" - } - }, - "cli-spinners": { - "version": "2.9.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha1-F3Oo9LnE1qwxVj31Oz/B15Ri/kE=", - "dev": true - }, - "commander": { - "version": "12.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/commander/-/commander-12.1.0.tgz", - "integrity": "sha1-AUI7NvUBJZ/arE0OTWDJbJkVhdM=", - "dev": true - }, - "emoji-regex": { - "version": "10.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha1-dpmLkmhAnrPa496YklTUVucM/iM=", - "dev": true - }, - "es-module-lexer": { - "version": "1.5.4", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/es-module-lexer/-/es-module-lexer-1.5.4.tgz", - "integrity": "sha1-qO/sOj2pkeYO+mtjOnytarjSa3g=", - "dev": true - }, - "get-east-asian-width": { - "version": "1.2.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", - "integrity": "sha1-Xm69m67m+4t7a9UFIhBl8M2R9k4=", - "dev": true - }, - "is-interactive": { - "version": "2.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-interactive/-/is-interactive-2.0.0.tgz", - "integrity": "sha1-QMV2FFk4JtoRAK3mBZd41ZfxbpA=", - "dev": true - }, - "is-unicode-supported": { - "version": "2.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", - "integrity": "sha1-/fMt+a6Y/2qyztwVWlpuiVcBxFE=", - "dev": true - }, - "log-symbols": { - "version": "6.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/log-symbols/-/log-symbols-6.0.0.tgz", - "integrity": "sha1-u5Xl8FMiZRysMMD+tkBPnyqKlDk=", - "dev": true, - "requires": { - "chalk": "^5.3.0", - "is-unicode-supported": "^1.3.0" - }, - "dependencies": { - "is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha1-2CSYS2FsKSouGYIH1KYJmDhC9xQ=", - "dev": true - } - } - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", - "dev": true - }, - "mkdirp": { - "version": "3.0.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/mkdirp/-/mkdirp-3.0.1.tgz", - "integrity": "sha1-5E5MVgf7J5wWgkFxPMbg/qmty1A=", - "dev": true - }, - "onetime": { - "version": "5.1.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha1-0Oluu1awdHbfHdnEgG5SN5hcpF4=", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "ora": { - "version": "8.0.1", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/ora/-/ora-8.0.1.tgz", - "integrity": "sha1-bcuSUKYpZCy+DS3zpjMa1veirz4=", - "dev": true, - "requires": { - "chalk": "^5.3.0", - "cli-cursor": "^4.0.0", - "cli-spinners": "^2.9.2", - "is-interactive": "^2.0.0", - "is-unicode-supported": "^2.0.0", - "log-symbols": "^6.0.0", - "stdin-discarder": "^0.2.1", - "string-width": "^7.0.0", - "strip-ansi": "^7.1.0" - } - }, - "restore-cursor": { - "version": "4.0.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha1-UZVgpDGJdQlt725gnUQQDtqkzLk=", - "dev": true, - "requires": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - } - }, - "signal-exit": { - "version": "3.0.7", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha1-qaF2f4r4QVURTqq9c/mSc8j1mtk=", - "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", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", - "dev": true - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha1-BP58f54e0tZiIzwoyys1ufY/bk8=", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - }, - "stdin-discarder": { - "version": "0.2.2", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/stdin-discarder/-/stdin-discarder-0.2.2.tgz", - "integrity": "sha1-OQA39ExK4aGuU1xf443Dq6jZl74=", - "dev": true - }, - "string-width": { - "version": "7.2.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/string-width/-/string-width-7.2.0.tgz", - "integrity": "sha1-tbuOIWXOJ11NQ0dt0nAK2Qkdttw=", - "dev": true, - "requires": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - } - }, - "strip-ansi": { - "version": "7.1.0", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha1-1bZWjKaJ2FYTcLBwdoXSJDT6/0U=", - "dev": true, - "requires": { - "ansi-regex": "^6.0.1" - } - }, - "terser": { - "version": "5.31.6", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/terser/-/terser-5.31.6.tgz", - "integrity": "sha1-xjhYoPBwOYjQJmqC/L8te6dkIrE=", - "dev": true, - "requires": { - "@jridgewell/source-map": "^0.3.3", - "acorn": "^8.8.2", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" - }, - "dependencies": { - "commander": { - "version": "2.20.3", - "resolved": "https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public-npm/npm/registry/commander/-/commander-2.20.3.tgz", - "integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=", - "dev": true - } - } - } - } -} diff --git a/src/mono/sample/wasi/jco/package.json b/src/mono/sample/wasi/jco/package.json deleted file mode 100644 index a55cb04e7ca4c3..00000000000000 --- a/src/mono/sample/wasi/jco/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "type": "module", - "devDependencies": { - "@bytecodealliance/jco": "1.5.0" - }, - "scripts": { - "transpile": "npx jco transpile --no-typescript bin/wasi-wasm/AppBundle/Wasi.Jco.Http.Sample.wasm -o bin/wasi-wasm/JCOBundle/ && powershell cp ./main.mjs ./bin/wasi-wasm/JCOBundle/main.mjs", - "run": "node bin/wasi-wasm/JCOBundle/main.mjs" - } -} \ No newline at end of file diff --git a/src/mono/wasi/runtime/driver.c b/src/mono/wasi/runtime/driver.c index b9f01df2c659af..1515b2dda35fbf 100644 --- a/src/mono/wasi/runtime/driver.c +++ b/src/mono/wasi/runtime/driver.c @@ -41,6 +41,9 @@ int monoeg_g_setenv(const char *variable, const char *value, int overwrite); int32_t monoeg_g_hasenv(const char *variable); void mono_free (void*); char *mono_method_get_full_name (MonoMethod *method); + +// Exported by libmono (MONO_API_DATA gboolean, see options-def.h). gboolean is int. +extern int mono_opt_aot_lazy_assembly_load; #ifdef WASM_SINGLE_FILE extern void mono_register_assemblies_bundle (void); extern void mono_register_runtimeconfig_bin (void); @@ -243,6 +246,16 @@ mono_wasm_load_runtime (int debug_level) { const char *interp_opts = ""; + // Load assemblies referenced by AOT images lazily instead of eagerly. + // On WASI assemblies are resolved through filesystem probing, which is not yet + // available while corlib itself is being set up. Eagerly loading the assemblies + // referenced by corlib's AOT image (e.g. System.Security.Claims) during that early + // phase falls back to the managed AssemblyLoadContext resolving event, which needs + // the corlib metadata that isn't initialized yet, aborting with a "Runtime critical + // type System.Runtime.Loader.AssemblyLoadContext not found" error. Deferring the + // load until the referenced assembly is actually needed avoids this reentrancy. + mono_opt_aot_lazy_assembly_load = 1; + #ifndef INVARIANT_GLOBALIZATION char* invariant_globalization = monoeg_g_getenv ("DOTNET_SYSTEM_GLOBALIZATION_INVARIANT"); if (strcmp(invariant_globalization, "true") != 0 && strcmp(invariant_globalization, "1") != 0)