From da239c3944121df6a40907c68c8ca5ca1f12e72f Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Fri, 13 Oct 2023 13:25:03 +0000 Subject: [PATCH 01/14] Correct trimming errors. --- .../src/ILLink/ILLink.Substitutions.Browser.xml | 7 +++++-- src/mono/wasm/build/WasmApp.targets | 15 +++++++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml b/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml index d40b57078bd6b..0898f47db38e3 100644 --- a/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml +++ b/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml @@ -1,7 +1,10 @@ - - + + + + + diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index b4040156dfeab..9e8da9c377f5c 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -155,6 +155,21 @@ _framework true + + + false + false + true + false + false + true + false + false + false + <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true + false + true + false From 90f516643587b865461584cfa533ee7578403691 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Mon, 16 Oct 2023 10:00:10 +0000 Subject: [PATCH 02/14] Feedback --- .../src/ILLink/ILLink.Substitutions.Browser.xml | 6 +++--- src/mono/wasm/build/WasmApp.targets | 3 --- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml b/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml index 0898f47db38e3..17d40e10f6d54 100644 --- a/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml +++ b/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml @@ -1,10 +1,10 @@ - - - + + + diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index 9e8da9c377f5c..b6b318a98b7e6 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -154,12 +154,10 @@ false _framework - true false false - true false false true @@ -168,7 +166,6 @@ false <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true false - true false From 37c3ad4fae821339a95186da4d34114b9c969a80 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Wed, 18 Oct 2023 07:11:19 +0000 Subject: [PATCH 03/14] Fix WBT --- src/mono/wasm/build/WasmApp.targets | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index b6b318a98b7e6..4e65ea4be1e27 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -160,7 +160,6 @@ false false false - true false false false From 7a41bf7932551664376783eaaa8303bec50b10bc Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Wed, 18 Oct 2023 11:57:10 +0000 Subject: [PATCH 04/14] Allow trimming Settings class on Unix. --- .../src/ILLink/ILLink.Substitutions.Browser.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml b/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml index 17d40e10f6d54..c2e50a979ec7e 100644 --- a/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml +++ b/src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml @@ -1,9 +1,9 @@ - + - + From e65de59fc1fec22baf3acfcb7f7c6480dc0ebd3b Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Wed, 18 Oct 2023 11:57:55 +0000 Subject: [PATCH 05/14] Feature switches setting matter, not properties. Improve the approach to WBT fix. --- .../wasm/Wasm.Build.Tests/IcuTestsBase.cs | 6 ++--- src/mono/wasm/build/WasmApp.targets | 22 ++++++++++--------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/mono/wasm/Wasm.Build.Tests/IcuTestsBase.cs b/src/mono/wasm/Wasm.Build.Tests/IcuTestsBase.cs index 9d4911d5ca964..ed463752bddd3 100644 --- a/src/mono/wasm/Wasm.Build.Tests/IcuTestsBase.cs +++ b/src/mono/wasm/Wasm.Build.Tests/IcuTestsBase.cs @@ -108,9 +108,9 @@ protected void TestIcuShards(BuildArgs buildArgs, string shardName, string teste bool dotnetWasmFromRuntimePack = !(buildArgs.AOT || buildArgs.Config == "Release"); buildArgs = buildArgs with { ProjectName = projectName }; - string extraProperties = onlyPredefinedCultures ? - $"{shardName}true" : - $"{shardName}"; + string extraProperties = $"{shardName}false"; + if (onlyPredefinedCultures) + extraProperties = $"{extraProperties}true"; buildArgs = ExpandBuildArgs(buildArgs, extraProperties: extraProperties); string programText = GetProgramText(testedLocales, onlyPredefinedCultures); diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index 4e65ea4be1e27..8c803b050b3ba 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -155,20 +155,22 @@ _framework - - false - false + false - false - false - false - false - <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true - false - false + + + + + + + + + + + From c49e2eac5ae14fb5d32be5dc217882f858418c47 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 07:48:02 +0000 Subject: [PATCH 06/14] Users set properties, not features, so this is what we should test. --- .../System.Runtime.TrimmingTests.proj | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj b/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj index 4fe527aacc03f..0c5fe497a83a4 100644 --- a/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj +++ b/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj @@ -13,15 +13,15 @@ - System.Globalization.Invariant - System.Globalization.Hybrid + InvariantGlobalization + HybridGlobalization - System.Globalization.Invariant + InvariantGlobalization - System.Globalization.Hybrid - System.Globalization.Invariant;System.Globalization.PredefinedCulturesOnly + HybridGlobalization + InvariantGlobalization;PredefinedCulturesOnly - System.Resources.UseSystemResourceKeys + UseSystemResourceKeys - System.Runtime.InteropServices.BuiltInComInterop.IsSupported + BuiltInComInteropSupport - System.Reflection.NullabilityInfoContext.IsSupported + NullabilityInfoContextSupport - System.Reflection.NullabilityInfoContext.IsSupported + NullabilityInfoContextSupport From b8df428cba2b66671e385f3d62ec817554725157 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 07:48:58 +0000 Subject: [PATCH 07/14] Revert. --- src/mono/wasm/build/WasmApp.targets | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index 8c803b050b3ba..f91304cf7b842 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -155,22 +155,21 @@ _framework - + false + false + false + false + true + false + false + false + <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true + false + false - - - - - - - - - - - From 86263b207c42b9a8ce2c77ae0ff9b41e47292852 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 08:13:19 +0000 Subject: [PATCH 08/14] `DebuggerSupport` is false by default --- .../tests/TrimmingTests/System.Runtime.TrimmingTests.proj | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj b/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj index 0c5fe497a83a4..c786baba78e37 100644 --- a/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj +++ b/src/libraries/System.Runtime/tests/TrimmingTests/System.Runtime.TrimmingTests.proj @@ -6,8 +6,12 @@ osx-x64;linux-x64;browser-wasm - - + + DebuggerSupport + + + DebuggerSupport + From efd62a348069e8aae2fee2d796a9171ff86e5494 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 08:53:32 +0000 Subject: [PATCH 09/14] `EventSourceSupport` is trimmed when not enabled. --- .../System.Diagnostics.Tracing.TrimmingTests.proj | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj b/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj index 0081a36ebc69a..fd7a8e0180583 100644 --- a/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj +++ b/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj @@ -2,8 +2,12 @@ - - + + EventSourceSupport + + + EventSourceSupport + From 451708c535cea48c122b2f941eb6bff32b2b995a Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 13:36:53 +0000 Subject: [PATCH 10/14] Fix `WasmTestOnBrowser` scenario lib tests. --- eng/testing/tests.browser.targets | 1 + 1 file changed, 1 insertion(+) diff --git a/eng/testing/tests.browser.targets b/eng/testing/tests.browser.targets index 2ce5f332cb8ea..57b65d68b7bef 100644 --- a/eng/testing/tests.browser.targets +++ b/eng/testing/tests.browser.targets @@ -36,6 +36,7 @@ _GetRuntimePackNuGetsToBuild;_GetNugetsForAOT;$(GetNuGetsToBuildForWorkloadTestingDependsOn) <_BundleAOTTestWasmAppForHelixDependsOn>$(_BundleAOTTestWasmAppForHelixDependsOn);PrepareForWasmBuildApp;_PrepareForAOTOnHelix true + false From 8c3595be0f9a3724a62ee3d4a06aaa6276622390 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 15:21:34 +0000 Subject: [PATCH 11/14] Fixing another batch of lib failures. --- eng/testing/tests.browser.targets | 1 + 1 file changed, 1 insertion(+) diff --git a/eng/testing/tests.browser.targets b/eng/testing/tests.browser.targets index 57b65d68b7bef..5ad0fd05f4109 100644 --- a/eng/testing/tests.browser.targets +++ b/eng/testing/tests.browser.targets @@ -37,6 +37,7 @@ <_BundleAOTTestWasmAppForHelixDependsOn>$(_BundleAOTTestWasmAppForHelixDependsOn);PrepareForWasmBuildApp;_PrepareForAOTOnHelix true false + true From 2d2670026943b485de19a0289411947c69856a07 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Thu, 19 Oct 2023 19:25:11 +0000 Subject: [PATCH 12/14] Fix `System.Runtime` tests + partial feedback. --- eng/testing/tests.browser.targets | 1 + .../System.Diagnostics.Tracing.TrimmingTests.proj | 8 ++------ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/eng/testing/tests.browser.targets b/eng/testing/tests.browser.targets index 5ad0fd05f4109..2b383ef15054e 100644 --- a/eng/testing/tests.browser.targets +++ b/eng/testing/tests.browser.targets @@ -38,6 +38,7 @@ true false true + true diff --git a/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj b/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj index fd7a8e0180583..c58b6040e2927 100644 --- a/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj +++ b/src/libraries/System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj @@ -2,12 +2,8 @@ - - EventSourceSupport - - - EventSourceSupport - + + From 10a7269f7b5f2c73d05403789dcbe60a0c48677f Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Fri, 20 Oct 2023 09:20:18 +0000 Subject: [PATCH 13/14] @radical's feedback --- src/mono/wasm/build/WasmApp.targets | 1 - 1 file changed, 1 deletion(-) diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index f91304cf7b842..52be56302b94c 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -166,7 +166,6 @@ false <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true false - false From 09936a40963ba7bf6a68adc37aec5fe6adbf4796 Mon Sep 17 00:00:00 2001 From: Ilona Tomkowicz <32700855+ilonatommy@users.noreply.github.com> Date: Wed, 25 Oct 2023 10:44:03 +0000 Subject: [PATCH 14/14] Moving common properties to manifest. --- .../Microsoft.NET.Sdk.WebAssembly.Browser.targets | 9 --------- .../WorkloadManifest.targets.in | 12 ++++++++++++ src/mono/wasm/build/WasmApp.targets | 12 ------------ 3 files changed, 12 insertions(+), 21 deletions(-) diff --git a/src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/build/Microsoft.NET.Sdk.WebAssembly.Browser.targets b/src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/build/Microsoft.NET.Sdk.WebAssembly.Browser.targets index 324f36cad7957..b15c7298c8f26 100644 --- a/src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/build/Microsoft.NET.Sdk.WebAssembly.Browser.targets +++ b/src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/build/Microsoft.NET.Sdk.WebAssembly.Browser.targets @@ -63,16 +63,7 @@ Copyright (c) .NET Foundation. All rights reserved. true - false true - false - false - true - false - false - false - <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true - false true false diff --git a/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in b/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in index 061fea9acaa14..83f8783b6d1ef 100644 --- a/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in +++ b/src/mono/nuget/Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest/WorkloadManifest.targets.in @@ -37,6 +37,18 @@ $(WasmNativeWorkload) false $(WasmNativeWorkloadAvailable) + + + false + false + false + false + true + false + false + false + <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true + false diff --git a/src/mono/wasm/build/WasmApp.targets b/src/mono/wasm/build/WasmApp.targets index 52be56302b94c..db47100639c4f 100644 --- a/src/mono/wasm/build/WasmApp.targets +++ b/src/mono/wasm/build/WasmApp.targets @@ -154,18 +154,6 @@ false _framework - - - false - false - false - false - true - false - false - false - <_AggressiveAttributeTrimming Condition="'$(_AggressiveAttributeTrimming)' == ''">true - false