-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[browser] Trim globalization code #93473
Conversation
Tagging subscribers to 'arch-wasm': @lewing Issue DetailsIn the measurements a sample WASM app is used with added a few Globalization method calls. Goal:
Changes:
Results:
Quoted sizes of
|
src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml
Outdated
Show resolved
Hide resolved
src/libraries/System.Private.CoreLib/src/ILLink/ILLink.Substitutions.Browser.xml
Outdated
Show resolved
Hide resolved
...System.Diagnostics.Tracing/tests/TrimmingTests/System.Diagnostics.Tracing.TrimmingTests.proj
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me 👍
* Correct trimming errors. * Feedback * Fix WBT * Allow trimming Settings class on Unix. * Feature switches setting matter, not properties. Improve the approach to WBT fix. * Users set properties, not features, so this is what we should test. * Revert. * `DebuggerSupport` is false by default * `EventSourceSupport` is trimmed when not enabled. * Fix `WasmTestOnBrowser` scenario lib tests. * Fixing another batch of lib failures. * Fix `System.Runtime` tests + partial feedback. * @radical's feedback * Moving common properties to manifest.
In the measurements a sample WASM app is used with added a few Globalization method calls.
Goal:
Changes:
System.Globalization.Hybrid
feature switch substitution,_GetWasmGenerateAppBundleDependencies
that was setting MsBuild properties for feature switches used to be run afterIILink
task. From this reason, all unset MsBuild properties that were planned to be substituted when they are "false" were ignored. Initial feature switches setup was copied fromruntime/src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/build/Microsoft.NET.Sdk.WebAssembly.Browser.targets
Line 65 in e8b8a77
WasmApp.targets
. They were changed to property switches.DebuggerTypeProxyAttributeTests
andDebuggerVisualizerAttributeTests
need to setDebuggerSupport=true
in order not to have the debugger code trimmed:runtime/docs/workflow/trimming/feature-switches.md
Line 11 in 04ede0d
The test used to expect the debugger code to be preserved even though it did not set the property to
true
.Same thing for
EventSourcePropertyValueTest
,EventSourceManifestTest
.Results:
Quoted sizes of
AppBundles
are not brotlied.