fix(examples): register critical-section impl for canvas_waves wasm build#132
Conversation
canvas_waves has no committed lockfile, so a fresh resolve pulls a current ratatui_core (via ratzilla/tachyonfx) that requires a registered critical-section implementation. Without one the wasm link fails with `undefined symbol: _critical_section_1_0_acquire`. Add critical-section with the std feature to provide it. Pre-existing dependency drift, unrelated to the ligature feature; kept off the upstream feature branch. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
orhun
left a comment
There was a problem hiding this comment.
thx!
would you be possibly interested in fixing this for the other examples too? (if they are a problem there)
I can see if it's an issue, I got CI passing on my fork so 🤷♂️ |
|
Checked the other examples — none need the same treatment, so this stays scoped to
|
Problem
examples/canvas_wavesfails to build forwasm32-unknown-unknown(and thus the GitHub Pages deploy fails at theBuild examplesstep):The example has no committed lockfile, so a fresh resolve pulls a current
ratatui_core(viaratzilla/tachyonfx) that depends oncritical-section. Onwasm32-unknown-unknownnothing registers acritical-sectionimplementation, so the linker can't resolve theacquire/releasesymbols.Fix
Add
critical-sectionwith thestdfeature tocanvas_waves, which registers the implementation:After this,
cargo build --release --target wasm32-unknown-unknown(andtrunk build) link cleanly.Notes
main.Cargo.toml; no library code touched.