denoland/eszip

Reduce global commands necessary for contributing

dsherret opened this issue · 0 comments

Currently we require a few globally configured and installed commands:

  • wasm-bindgen-cli
  • wasm-opt (binaryen)
  • wasmbuild
  • make - doesn't work on Windows out of the box
  • cargo
  • deno

This requires a decent amount of developer time setup to build this repo and when the versions of the global commands change it might cause problems. For example, wasm-bindgen-cli gives a very cryptic error when building with the wrong globally installed version (we even have this mentioned in a troubleshooting section, which could be removed if we didn't have this as a global command https://github.com/denoland/eszip/tree/d9d77ec2bf0db0e87a93ba1a759affd8cc070997#troubleshooting).

We should reduce this list to:

  • cargo
  • deno

This could be achieved for example by:

  1. wasmbuild - Don't use deno install and instead use deno run in the makefile. Done
  2. wasm-bindgen-cli - denoland/wasmbuild#6
  3. wasm-opt - denoland/wasmbuild#7
  4. make - Move away once we have deno script/deno task or switch to a deno script file with a shebang (not a big deal for windows users because they can read the shebang and execute the script)