klave 0.5.0

A Rust SDK for the Klave platform.
Documentation
{
    "name": "crate",
    "$schema": "../../node_modules/nx/schemas/project-schema.json",
    "tags": [
        "crate"
    ],
    "targets": {
        "deps": {
            "dependsOn": [],
            "command": "(is-ci && cargo install cargo-component --force) || cargo install cargo-component",
            "cache": true,
            "inputs": [
                "{workspaceRoot}/Cargo.toml",
                "{workspaceRoot}/Cargo.lock",
                "{projectRoot}/Cargo.toml"
            ]
        },
        "build": {
            "dependsOn": [
                "deps"
            ],
            "command": "rimraf target && cargo component build --target wasm32-unknown-unknown -p klave --target-dir crates/klave/target --release",
            "cache": true,
            "outputs": [
                "{projectRoot}/target",
                "{projectRoot}/src/bindings.rs"
            ]
        },
        "sync-deps": {
            "executor": "nx:run-commands",
            "options": {
                "command": "node tools/scripts/syncDepVersion.mjs crate"
            }
        },
        "version": {
            "executor": "@jscutlery/semver:version",
            "options": {
                "preset": "conventional",
                "trackDeps": false,
                "changelogHeader": "# Changelog",
                "tagPrefix": "{projectName}@",
                "commitMessageFormat": "chore({projectName}): Release version ${version}",
                "postTargets": [
                    "crate:sync-deps"
                ]
            }
        },
        "publish": {
            "dependsOn": [
                "build"
            ],
            "command": "cargo publish --no-verify -p klave",
            "cache": true,
            "outputs": [
                "{workspaceRoot}/target"
            ]
        }
    }
}