Stream: git-wasmtime

Topic: wasmtime / PR #13630 Add a tunable to remove symbols from...


view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton opened PR #13630 from alexcrichton:remove-symbolt-able to bytecodealliance:main:

This commit adds a tunable option via -Dsymbols={y,n} or Config::debug_symbols to disable generation of symbols in output *.cwasm artifacts. This can help minimize the size of an artifact to the absolute bare minimum in some scenarios.

This additionally adds documentation of how to build a minimal *.cwasm with all the various options that can be used which affect the output artifact.

<!--
Please make sure you include the following information:

Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.html

Please ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton requested fitzgen for a review on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton requested wasmtime-core-reviewers for a review on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton requested wasmtime-fuzz-reviewers for a review on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton requested wasmtime-compiler-reviewers for a review on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton requested wasmtime-default-reviewers for a review on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 00:19):

alexcrichton edited PR #13630:

This commit adds a tunable option via -Dsymbols={y,n} or Config::debug_symbols to disable generation of symbols in output *.cwasm artifacts. This can help minimize the size of an artifact to the absolute bare minimum in some scenarios.

This additionally adds documentation of how to build a minimal *.cwasm with all the various options that can be used which affect the output artifact.

Closes #10286

<!--
Please make sure you include the following information:

Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.html

Please ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 02:35):

github-actions[bot] added the label fuzzing on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 02:35):

github-actions[bot] added the label wasmtime:api on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 02:35):

github-actions[bot] added the label wasmtime:config on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 02:35):

github-actions[bot] added the label wasmtime:docs on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 02:35):

github-actions[bot] added the label winch on PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 02:35):

github-actions[bot] commented on PR #13630:

Subscribe to Label Action

cc @fitzgen, @saulecabrera

<details>
This issue or pull request has been labeled: "fuzzing", "wasmtime:api", "wasmtime:config", "wasmtime:docs", "winch"

Thus the following users have been cc'd because of the following labels:

To subscribe or unsubscribe from this label, edit the <code>.github/subscribe-to-label.json</code> configuration file.

Learn more.
</details>

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 04:04):

github-actions[bot] commented on PR #13630:

Label Messager: wasmtime:config

It looks like you are changing Wasmtime's configuration options. Make sure to
complete this check list:

[fuzzing-config]: https://github.com/bytecodealliance/wasmtime/blob/ca0e8d0a1d8cefc0496dba2f77a670571d8fdcab/crates/fuzzing/src/generators.rs#L182-L194
[fuzzing-docs]: https://docs.wasmtime.dev/contributing-fuzzing.html


<details>

To modify this label's message, edit the <code>.github/label-messager/wasmtime-config.md</code> file.

To add new label messages or remove existing label messages, edit the
<code>.github/label-messager.json</code> configuration file.

Learn more.

</details>

view this post on Zulip Wasmtime GitHub notifications bot (Jun 13 2026 at 17:55):

alexcrichton updated PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

Maybe note at the start of this paragraph that these are implementation details that are subject to change at any time and should never be relied upon by embedders?

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:thumbs_up: fitzgen submitted PR review:

r=me with below addressed

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

Not obvious why it might look like that, suggest explicitly adding "because it removed ~24.75M of binary size when compiling the .wasm to .cwasm" or some such

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

Link to https://webassembly.github.io/spec/core/appendix/custom.html#name-section perhaps?

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

I would rephrase "not optimized for this use case" as we have in fact been doing a lot of optimizations for this use case of the last year. It is not tuned for that use case by default, but that is pretty different from being "not optimized for" the use case (which I imagine would make many folks disregard Wasmtime for their use case).

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

Is there some canonical page we can link to for minimizing Rust's binary size? Otherwise this will feel like arcane magical incantations to folks who aren't familiar with rustc flags (which is most people).

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

* Pass `-Dsymbols=n` to diasble symbols used for debugging/profiling in the
  output artifact.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:26):

:speech_balloon: fitzgen created PR review comment:

Again, I worry that we are sharing implementation details that we don't want people to rely on. Like we can say the same thing but be more vague:

Wasmtime's .cwasm artifacts are designed to integrate with the system's native profiler and other developer tools like wasmtime objdump by default, but this information isn't needed to actually run the program and is safe to remove.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 16:30):

:speech_balloon: fitzgen created PR review comment:

I think all these will want to be shell-session instead of bash

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 17:58):

alexcrichton updated PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 17:59):

alexcrichton commented on PR #13630:

All excellent suggestions, thanks!

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 18:11):

alexcrichton added PR #13630 Add a tunable to remove symbols from *.cwasm files to the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 18:27):

alexcrichton has enabled auto merge for PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 18:36):

:check: alexcrichton merged PR #13630.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 15 2026 at 18:36):

alexcrichton removed PR #13630 Add a tunable to remove symbols from *.cwasm files from the merge queue.


Last updated: Jul 29 2026 at 05:03 UTC