Skip to content

Comments

[browser] Emit symbols in WasmSDK#124500

Merged
pavelsavara merged 3 commits intodotnet:mainfrom
maraf:WasmSdkEmitSymbolMap
Feb 17, 2026
Merged

[browser] Emit symbols in WasmSDK#124500
pavelsavara merged 3 commits intodotnet:mainfrom
maraf:WasmSdkEmitSymbolMap

Conversation

@maraf
Copy link
Member

@maraf maraf commented Feb 17, 2026

Fixes #122385

@maraf maraf added this to the 11.0.0 milestone Feb 17, 2026
@maraf maraf self-assigned this Feb 17, 2026
Copilot AI review requested due to automatic review settings February 17, 2026 09:31
@maraf maraf added arch-wasm WebAssembly architecture area-Build-mono os-browser Browser variant of arch-wasm labels Feb 17, 2026
@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara
See info in area-owners.md if you want to be subscribed.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes issue #122385 by enabling the WebAssembly SDK to properly emit symbol map files (.symbols files) to the build output. Previously, when WasmEmitSymbolMap=true was set, emscripten would generate the dotnet.native.js.symbols file, but the WasmSDK tasks would filter it out, leaving it only in the obj directory instead of promoting it to the build output.

Changes:

  • Added EmitSymbolMap property to build and publish asset computation tasks
  • Updated filtering logic to respect the WasmEmitSymbolMap setting instead of unconditionally filtering .symbols files
  • Added fingerprinting support for .symbols files
  • Configured .symbols files to be treated as native WebAssembly resources

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
src/tasks/Microsoft.NET.Sdk.WebAssembly.Pack.Tasks/ComputeWasmPublishAssets.cs Added EmitSymbolMap property and passed it to the filtering helper method
src/tasks/Microsoft.NET.Sdk.WebAssembly.Pack.Tasks/ComputeWasmBuildAssets.cs Added EmitSymbolMap property, passed it to the filtering helper, and configured .symbols files as native WasmResource assets
src/tasks/Microsoft.NET.Sdk.WebAssembly.Pack.Tasks/AssetsComputingHelper.cs Updated ShouldFilterCandidate to accept emitSymbolMap parameter and changed filtering logic from always filtering .symbols files to only filtering when EmitSymbolMap is false
src/mono/nuget/Microsoft.NET.Sdk.WebAssembly.Pack/build/Microsoft.NET.Sdk.WebAssembly.Browser.targets Wired up EmitSymbolMap property to both build and publish tasks, and added fingerprinting pattern for .symbols files

@pavelsavara
Copy link
Member

image

@pavelsavara pavelsavara marked this pull request as ready for review February 17, 2026 14:15
Copilot AI review requested due to automatic review settings February 17, 2026 14:15
@pavelsavara pavelsavara enabled auto-merge (squash) February 17, 2026 14:15
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings February 17, 2026 14:59
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 6 out of 6 changed files in this pull request and generated no new comments.

@pavelsavara pavelsavara merged commit 766f6f1 into dotnet:main Feb 17, 2026
41 checks passed
@maraf maraf deleted the WasmSdkEmitSymbolMap branch February 17, 2026 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

arch-wasm WebAssembly architecture area-Build-mono os-browser Browser variant of arch-wasm

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[browser] Support emitting WebAssembly symbols to build output by WasmSDK

2 participants