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/wasmbuild@0.15.6/main.ts --sync --out ./src/lib
The problem is that having this code inlined into dax leads to two issues:
- If a new version of
deno_task_shell is released, you can't use it from JS until dax is updated
- 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
- You can update
deno_task_shell without updating dax by just using a patch easily
- You can easily use the
Deno.Command interface yourself directly if dax doesn't quite fit your needs
Currently,
daxhas a very slim single Rust file here that exposes a WASM interface for thedeno_task_shellparsing logic which it then compiles withdeno run -A https://deno.land/x/wasmbuild@0.15.6/main.ts --sync --out ./src/libThe problem is that having this code inlined into dax leads to two issues:
deno_task_shellis released, you can't use it from JS untildaxis updatedIt feels like probably it would be better to just inline the WASM compilation step into this project and then release
deno_task_shellon NPM/JSR. That means thatdeno_task_shellwithout updatingdaxby just using a patch easilyDeno.Commandinterface yourself directly ifdaxdoesn't quite fit your needs