Conversation
|
I added a little criterion benchmark comparing calling a compiled wasm plugin and doing the same* work natively, here are some first insights:
i.e. some time is spent on serde to/from json, some time is spent on cloning, some time is spent on WASM overhead I guess. |
# Conflicts: # Cargo.lock # Cargo.toml # src/lib.rs
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
This draft PR adds a plugin system based on extism (#426). To that end, the project is converted to a workspace with (currently) three members:
mehari,mehari-pluginsandmehari-plugin-vep-nmd.mehariremains unchangedmehari-pluginscurrently contains stubs mimicking VEP'stvadata structure, whilemehari-plugin-vep-nmdcontains a translation of VEP's NMD plugin to rust code.mehari-plugin-vep-nmdhas a different build-target (wasm32-unknown-unknown) than the other workspace members, and, as such, it has a corresponding.cargo/config.tomlfile.However, workspaces do not support having different targets (yet), so cargo will build all workspace members for the default target. To actually get a WASM binary for the plugin, explicitly execute
cargo buildin themehari-plugin-vep-nmddirectory.(Could probably be done with a Makefile or something similar, at least until the different-targets-per-workspace-member feature hits stable)