コンテンツへスキップ
ドキュメント
プラグイン
公開

プラグインの公開

コードを読むことを好む場合は、公式プラグインのリポジトリ (新しいタブで開きます)を参照してください。

npmパッケージの作成

wasmとしてのプラグインのビルド

次のコマンドを実行して、プラグインをwasmファイルとして実行できます。

cargo build-wasi --release // build wasm32-wasi target binary
cargo build-wasm32 --release // build wasm32-unknown-unknown target binary

これにより、設定に応じて、target/wasm32-wasi/release/your_plugin_name.wasm または target/wasm32-unknown-unknown/release/your_plugin_name.wasm が作成されます。

プラグインのnpmパッケージの作成

次の内容を package.json に追加します。

package.json
{
    "main": "your_plugin_name.wasm",
    "scripts": {
        "prepack": "cargo prepublish --release && cp target/wasm32-wasi/release/your_plugin_name.wasm ."
    },
}

高度なプラグインの改善

バイナリを小さくするための設定の調整

cargoを設定することで、プラグインのサイズを小さくすることができます。

Cargo.toml ファイルに、次の行を追加できます。

Cargo.toml
[profile.release]
# This removes more dead code
codegen-units = 1
lto = true
# Optimize for size
opt-level = "s"
# Optimize for performance, this is default so you don't need to specify it
# opt-level = "z"
 
# Strip debug symbols
strip = "symbols"

リリースモードでのログの削除

クレートのログが多すぎる場合は、tracingrelease_max_level_* を有効にすることで削除できます。例:

tracing = { version="0.1", features = ["release_max_level_info"] }