Merge pull request #766 from EverlastingBugstopper/avery/dont-require-wasm-opt

Add docs and actionable error message for failed wasm-opt executions
master
ashley williams 5 years ago committed by GitHub
commit b4a4585af2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 14
      docs/src/cargo-toml-configuration.md
  2. 7
      src/command/build.rs

@ -14,11 +14,11 @@ The available configuration options and their default values are shown below:
# 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 can be set to `false` if you want to disable it (as is the
# default for the dev profile), or it can be 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 = false
# 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?
@ -36,8 +36,10 @@ 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 = ['-O']
wasm-opt = false
[package.metadata.wasm-pack.profile.release.wasm-bindgen]
debug-js-glue = false

@ -392,7 +392,10 @@ impl Build {
&self.out_dir,
&args,
self.mode.install_permitted(),
)?;
Ok(())
).map_err(|e| {
format_err!(
"{}\nTo disable `wasm-opt`, add `wasm-opt = false` to your package metadata in your `Cargo.toml`.", e
)
})
}
}

Loading…
Cancel
Save