wasm-pack can be configured via the
package.metadata.wasm-pack key in
Cargo.toml. Every option has a default, and is not required.
There are three profiles:
release. These correspond to
--release flags passed to
The available configuration options and their default values are shown below:
[package.metadata.wasm-pack.profile.dev] # Should `wasm-opt` be used to further optimize the wasm binary generated after # the Rust compiler has finished? Using `wasm-opt` can often further decrease # binary size or do clever tricks that haven't made their way into LLVM yet. # # Configuration is set to `false` by default for the dev profile, but it can # be set to an array of strings which are explicit arguments to pass to # `wasm-opt`. For example `['-Os']` would optimize for size while `['-O4']` # would execute very expensive optimizations passes wasm-opt = ['-O'] [package.metadata.wasm-pack.profile.dev.wasm-bindgen] # Should we enable wasm-bindgen's debug assertions in its generated JS glue? debug-js-glue = true # Should wasm-bindgen demangle the symbols in the "name" custom section? demangle-name-section = true # Should we emit the DWARF debug info custom sections? dwarf-debug-info = false [package.metadata.wasm-pack.profile.profiling] wasm-opt = ['-O'] [package.metadata.wasm-pack.profile.profiling.wasm-bindgen] debug-js-glue = false demangle-name-section = true dwarf-debug-info = false # `wasm-opt` is on by default in for the release profile, but it can be # disabled by setting it to `false` [package.metadata.wasm-pack.profile.release] wasm-opt = false [package.metadata.wasm-pack.profile.release.wasm-bindgen] debug-js-glue = false demangle-name-section = true dwarf-debug-info = false