I saw this https://rustwasm.github.io/docs/wasm-bindgen/reference/deployment.html#deno mentioning that you could pass --target deno and build to Deno. I tried:
wasm-pack build --target deno
and got
error: Invalid value for '--target <target>': Unknown target: deno
A package suitable to be used in Deno should've been created.
cargo new rust-deno-test --lib
cd rust-deno-test
Edit src/lib.rs and replace its contents with:
use wasm_bindgen::prelude::*;
#[wasm_bindgen]
pub fn factorial( x: u64 ) -> u64 {
match x {
0 | 1 => 1,
_ => x * factorial( x - 1 ),
}
}
Edit Cargo.toml and merge:
[dependencies]
wasm-bindgen = "0.2.65"
[lib]
crate-type =["cdylib"]
Then run
wasm-pack build --target deno
wasm-pack version: 0.9.1
rustc version: 1.44.1
The tool ssvmup can successfully convert the same code to a package that's usable by Deno, with a similar command ssvmup build --target deno.
wasm-bingen seems to have recently gained support for deno target, but the option is not forwarded to it by wasm-pack.
I have quickly hacked a patch which seems to work at first glance. It does a bit more than required, even: for example, it generates a package.json, which Deno doesn't use.
I could work on a PR, but consider the fact that I only had a proper look at Deno yesterday.
Most helpful comment
wasm-bingenseems to have recently gained support fordenotarget, but the option is not forwarded to it bywasm-pack.I have quickly hacked a patch which seems to work at first glance. It does a bit more than required, even: for example, it generates a
package.json, which Deno doesn't use.I could work on a PR, but consider the fact that I only had a proper look at Deno yesterday.