Avatar for the derodero24 user
derodero24
rapid-fuzzy
BlogDocsChangelog

Performance History

Latest Results

chore(deps): update taiki-e/install-action digest to 4bb73ac (#451) Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
develop
3 hours ago
chore(deps): update taiki-e/install-action digest to 4bb73ac
renovate/taiki-e-install-action-digest
13 hours ago
feat(wasm): integrate wasm-bindgen build into package distribution (#445) * feat(wasm): integrate wasm-bindgen build into package distribution (#442) - Add build:wasm-bindgen script using wasm-pack bundler target - Distribute wasm-bindgen JS glue files alongside npm package - Replace browser.js WASI export with wasm-bindgen re-export - Add CI job to build and cache wasm-bindgen artifact - Update browser/bun/deno e2e tests to use wasm-bindgen output - Remove COOP/COEP headers from Vite config (not needed without SharedArrayBuffer) Closes #442 * fix(e2e): fix Bun/Deno wasm-bindgen test compatibility - Bun 1.x does not implement TC39 WASM ESM integration; switch Bun test to manually instantiate the WASM binary via WebAssembly API - Fix Deno test type error: levenshteinBatch returns Uint32Array, not number[] - Fix both tests: closest() returns undefined (not null) for empty items * fix(e2e): fix browser WASM test - manual init to bypass Vite 8 WASM ESM restriction Vite 8 explicitly rejects the TC39 WebAssembly ESM integration proposal used by wasm-bindgen's bundler target, throwing: "ESM integration proposal for Wasm is not supported currently." Replace the direct import of rapid-fuzzy-wasm-bindgen.js with manual instantiation: import the background bindings (_bg.js, which has no .wasm imports) then call WebAssembly.instantiateStreaming to fetch and instantiate the WASM binary, and finally call __wbg_set_wasm. Also convert TypedArray results (Uint32Array, Float64Array) to plain arrays via Array.from() before storing in window.__results to ensure correct JSON serialization through Playwright's page.evaluate(). * fix(e2e): use WebAssembly.instantiate with ArrayBuffer to avoid MIME type issue WebAssembly.instantiateStreaming requires the server to respond with Content-Type: application/wasm. Vite dev server may not set this MIME type for .wasm files, causing: "Incorrect response MIME type. Expected application/wasm". Switch to fetching the .wasm binary as an ArrayBuffer and passing it to WebAssembly.instantiate, which accepts raw bytes without MIME validation. * fix(e2e): use import with ?url to get Vite-resolved WASM path for browser test fetch() resolves URLs relative to the browser page URL (http://localhost:4567/), not the filesystem. When Vite root is e2e/, fetch('../rapid-fuzzy-wasm-bindgen_bg.wasm') resolves to /rapid-fuzzy-wasm-bindgen_bg.wasm which Vite cannot find in e2e/. Use import('...?url') instead - Vite intercepts this at the module level using filesystem-aware resolution, returning the correct @fs/ URL for files outside the Vite root. Then fetch(wasmUrl) with the resolved URL correctly retrieves the binary content for WebAssembly.instantiate(). * fix(e2e): coerce closest() undefined to null for Playwright serialization wasm-bindgen maps Rust Option::None to undefined in JavaScript, but the browser test expects null (toBeNull). In Playwright 1.35+, undefined from page.evaluate() is preserved as undefined rather than converted to null. Use ?? null to coerce undefined to null when storing closest() results in window.__results, making them JSON-serializable and matching the test expectation.
develop
14 hours ago

Latest Branches

CodSpeed Performance Gauge
0%
chore(deps): update taiki-e/install-action digest to 4bb73ac#451
13 hours ago
bb054b6
renovate/taiki-e-install-action-digest
CodSpeed Performance Gauge
0%
14 hours ago
f1152c9
feat/issue-442-wasm-bindgen-dist
CodSpeed Performance Gauge
0%
16 hours ago
cb39956
feat/issue-441-wasm-bindgen
© 2026 CodSpeed Technology
Home Terms Privacy Docs