-
Notifications
You must be signed in to change notification settings - Fork 80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[EXP] Make wasm features more JS-like #1625
Conversation
Codecov Report
@@ Coverage Diff @@
## latest #1625 +/- ##
==========================================
- Coverage 81.91% 81.85% -0.06%
==========================================
Files 112 112
Lines 11438 11446 +8
Branches 1429 1429
==========================================
Hits 9369 9369
- Misses 1814 1822 +8
Partials 255 255
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
9d3ff8e
to
31f5ad9
Compare
31f5ad9
to
66b00a7
Compare
@gustavo-salazar: I started generating packages for the new sourmash version, they are contained in the Artifacts section for each CI run. (annoyingly, there is a I tried to use it with https://github.com/EBI-Metagenomics/mgnify-sourmash-component but had issues because webpack is not copying the wasm file to the proper place. The package is also missing the |
Reconsidering this approach (hence the new Current solution (building the NPM package directly from
|
Hey @luizirber I had to add |
Closing in favor of #1643 |
Fixes #1622
The current sourmash NPM package is a direct upload from the results of
wasm-pack
and is not very ergonomic for direct usage in JS. The arrow-wasm project does something else, opting for wrapping thewasm-pack
output into a more palatable JS package. So I'm trying the same approach here =]This means removing the
src/core/src/wasm.rs
file and moving most of the wasm parts intosrc/wasm
, a new Rust crate with the code to make a nice JS package.ping @gustavo-salazar, once I have something more complete can we review together how the JS API looks like (and how to test in a way that doesn't break in the future for you)?
TODO
src/wasm/lib.rs
has some commented code because we can't do aimpl
for types defined outside the crate (since now they treadsourmash
as a third-party dep. Need to either create a newtype and dispatch calls to the sourmash types, or something like that.