deno_task_shell icon indicating copy to clipboard operation
deno_task_shell copied to clipboard

Publish WASM as NPM/JSR package?

Open SebastienGllmt opened this issue 11 months ago • 1 comments
trafficstars

Currently, dax has a very slim single Rust file here that exposes a WASM interface for the deno_task_shell parsing logic which it then compiles with deno run -A https://deno.land/x/[email protected]/main.ts --sync --out ./src/lib

The problem is that having this code inlined into dax leads to two issues:

  1. If a new version of deno_task_shell is released, you can't use it from JS until dax is updated
  2. If you want to build an alternative to dax instead of waiting for it to be updated, you have to copy-paste the rust->wasm compilation system into your own project

It feels like probably it would be better to just inline the WASM compilation step into this project and then release deno_task_shell on NPM/JSR. That means that

  1. You can update deno_task_shell without updating dax by just using a patch easily
  2. You can easily use the Deno.Command interface yourself directly if dax doesn't quite fit your needs

SebastienGllmt avatar Dec 06 '24 12:12 SebastienGllmt

I'm not sure I'd use this in Dax at the moment. Dax uses multiple rust dependencies and it's a smaller footprint to have them all compiled in a single Wasm file.

dsherret avatar Dec 06 '24 15:12 dsherret