You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, all-is-cubes-wasm is a member of the main workspace. This is inconvenient, because it has dependencies that won't compile on desktop platforms, and other packages have dependencies that won't compile on Wasm. Currently, this is being addressed by using conditional compilation to stub out the -wasm code when compiling on other platforms.
If we instead create a separate workspace, this would have the following advantages:
Each workspace can be fully built for its supported platforms, without careful special case commands and cfgs
all-is-cubes-server can invoke wasm-pack build from its build script, solving the dependency currently handled messily by xtask (see Make server → wasm dependency optional #270)
The wasm build won't have any superfluous feature-unification with the other builds
However, the last time I tried to do this, upon running the produced wasm module, I got a runtime error about a memory access out of bounds. This indicates that something is seriously wrong in one of my wasm dependencies or the build process, and ideally it would be fixed whether or not we change the workspace layout. However, this will need effort to minimize the bug.
The text was updated successfully, but these errors were encountered:
The split is done in 06fc0b3 — I have no explanation for why it worked this time and not before, but also no reason to believe that this state is worse than other working states, so I'm going ahead with it. However, some tasks remain:
Take advantage of building the wasm as an all-is-cubes-server build dependency, as mentioned above.
Expand the xtask --scope parameter to allow building only wasm or only not wasm as desired.
Remove now-unnecessary special args and cases in xtask.
Currently,
all-is-cubes-wasm
is a member of the main workspace. This is inconvenient, because it has dependencies that won't compile on desktop platforms, and other packages have dependencies that won't compile on Wasm. Currently, this is being addressed by using conditional compilation to stub out the-wasm
code when compiling on other platforms.If we instead create a separate workspace, this would have the following advantages:
all-is-cubes-server
can invokewasm-pack build
from its build script, solving the dependency currently handled messily byxtask
(see Make server → wasm dependency optional #270)However, the last time I tried to do this, upon running the produced wasm module, I got a runtime error about a memory access out of bounds. This indicates that something is seriously wrong in one of my wasm dependencies or the build process, and ideally it would be fixed whether or not we change the workspace layout. However, this will need effort to minimize the bug.
The text was updated successfully, but these errors were encountered: