Cargo Features

wasefire-scheduler has no features set by default.

[dependencies]
wasefire-scheduler = { version = "0.3.0", features = ["std", "defmt", "log", "applet-api-button", "applet-api-crypto-ccm", "applet-api-crypto-ec", "applet-api-crypto-gcm", "applet-api-crypto-hash", "applet-api-crypto-hkdf", "applet-api-crypto-hmac", "applet-api-gpio", "applet-api-led", "applet-api-platform", "applet-api-platform-update", "applet-api-radio-ble", "applet-api-rng", "applet-api-store", "applet-api-store-fragment", "applet-api-timer", "applet-api-uart", "applet-api-usb-serial", "board-api-button", "board-api-crypto-aes128-ccm", "board-api-crypto-aes256-gcm", "board-api-crypto-hmac-sha256", "board-api-crypto-hmac-sha384", "board-api-crypto-p256", "board-api-crypto-p384", "board-api-crypto-sha256", "board-api-crypto-sha384", "board-api-gpio", "board-api-led", "board-api-platform", "board-api-platform-update", "board-api-radio-ble", "board-api-rng", "board-api-storage", "board-api-timer", "board-api-uart", "board-api-usb-serial", "full-api", "full-applet-api", "full-board-api", "software-crypto-aes128-ccm", "software-crypto-aes256-gcm", "software-crypto-hmac-sha256", "software-crypto-hmac-sha384", "software-crypto-p256", "software-crypto-p384", "software-crypto-sha256", "software-crypto-sha384", "native", "wasm", "unsafe-skip-validation", "internal-applet-api-crypto", "internal-applet-api-radio", "internal-applet-api-usb", "internal-board-api-radio", "internal-board-api-usb", "internal-applet-api-platform", "internal-applet-api-store", "internal-board-api-crypto-ecc", "internal-debug", "internal-hash-context", "internal-applet-api-crypto-hash"] }
std

Enables std of wasefire-board-api and optional wasefire-store

defmt = internal-debug

Logging features (enable at most one).

Enables defmt, defmt of wasefire-board-api, wasefire-error, and wasefire-logger

log = internal-debug

Enables log of wasefire-board-api and wasefire-logger

applet-api-button board-api-button? full-applet-api?

Applet API features (automatically enabled by board API features).

Enables api-button of wasefire-applet-api

Affects event::button

applet-api-crypto-ccm board-api-crypto-aes128-ccm? full-applet-api? = internal-applet-api-crypto

Enables api-crypto-ccm of wasefire-applet-api

applet-api-crypto-ec board-api-crypto-p256? board-api-crypto-p384? full-applet-api? = internal-applet-api-crypto

Enables api-crypto-ec of wasefire-applet-api

applet-api-crypto-gcm board-api-crypto-aes256-gcm? full-applet-api? = internal-applet-api-crypto

Enables api-crypto-gcm of wasefire-applet-api

applet-api-crypto-hash board-api-crypto-sha256? board-api-crypto-sha384? full-applet-api? = internal-applet-api-crypto-hash, internal-hash-context

Enables api-crypto-hash of wasefire-applet-api

applet-api-crypto-hkdf board-api-crypto-hmac-sha256? board-api-crypto-hmac-sha384? full-applet-api? = internal-applet-api-crypto-hash

Enables api-crypto-hkdf of wasefire-applet-api

applet-api-crypto-hmac board-api-crypto-hmac-sha256? board-api-crypto-hmac-sha384? full-applet-api? = internal-applet-api-crypto-hash, internal-hash-context

Enables api-crypto-hmac of wasefire-applet-api

applet-api-gpio board-api-gpio? full-applet-api?

Enables api-gpio of wasefire-applet-api

applet-api-led board-api-led? full-applet-api?

Enables api-led of wasefire-applet-api

applet-api-platform board-api-platform? full-applet-api? = internal-applet-api-platform

Enables api-platform of wasefire-applet-api

applet-api-platform-update board-api-platform-update? full-applet-api? = internal-applet-api-platform

Enables api-platform-update of wasefire-applet-api

applet-api-radio-ble board-api-radio-ble? full-applet-api? = internal-applet-api-radio

Enables api-radio-ble of wasefire-applet-api

Affects radio::ble

applet-api-rng board-api-rng? full-applet-api?

Enables api-rng of wasefire-applet-api

applet-api-store board-api-storage? full-applet-api? = internal-applet-api-store

Enables api-store of wasefire-applet-api

applet-api-store-fragment board-api-storage? full-applet-api? = internal-applet-api-store

Enables api-store-fragment of wasefire-applet-api

applet-api-timer board-api-timer? full-applet-api?

Enables api-timer of wasefire-applet-api

Affects event::timer

applet-api-uart board-api-uart? full-applet-api?

Enables api-uart of wasefire-applet-api

Affects event::uart

applet-api-usb-serial board-api-usb-serial? full-applet-api? = internal-applet-api-usb

Enables api-usb-serial of wasefire-applet-api

Affects usb::serial

board-api-button full-board-api? = applet-api-button

Board API features. Enabling a board API feature automatically enables all applet API features that would be implemented.

Enables api-button of wasefire-board-api

Affects event::button

board-api-crypto-aes128-ccm full-board-api? software-crypto-aes128-ccm? = applet-api-crypto-ccm

Enables api-crypto-aes128-ccm of wasefire-board-api

board-api-crypto-aes256-gcm full-board-api? software-crypto-aes256-gcm? = applet-api-crypto-gcm

Enables api-crypto-aes256-gcm of wasefire-board-api

board-api-crypto-hmac-sha256 full-board-api? software-crypto-hmac-sha256? = applet-api-crypto-hkdf, applet-api-crypto-hmac

Enables api-crypto-hmac-sha256 of wasefire-board-api

board-api-crypto-hmac-sha384 full-board-api? software-crypto-hmac-sha384? = applet-api-crypto-hkdf, applet-api-crypto-hmac

Enables api-crypto-hmac-sha384 of wasefire-board-api

board-api-crypto-p256 full-board-api? software-crypto-p256? = applet-api-crypto-ec, internal-board-api-crypto-ecc

Enables api-crypto-p256 of wasefire-board-api

board-api-crypto-p384 full-board-api? software-crypto-p384? = applet-api-crypto-ec, internal-board-api-crypto-ecc

Enables api-crypto-p384 of wasefire-board-api

board-api-crypto-sha256 full-board-api? software-crypto-sha256? = applet-api-crypto-hash

Enables api-crypto-sha256 of wasefire-board-api

board-api-crypto-sha384 full-board-api? software-crypto-sha384? = applet-api-crypto-hash

Enables api-crypto-sha384 of wasefire-board-api

board-api-gpio full-board-api? = applet-api-gpio

Enables api-gpio of wasefire-board-api

board-api-led full-board-api? = applet-api-led

Enables api-led of wasefire-board-api

board-api-platform full-board-api? = applet-api-platform

Enables api-platform of wasefire-board-api

board-api-platform-update full-board-api? = applet-api-platform-update

Enables api-platform-update of wasefire-board-api

board-api-radio-ble full-board-api? = applet-api-radio-ble, internal-board-api-radio

Enables api-radio-ble of wasefire-board-api

Affects radio::ble

board-api-rng full-board-api? = applet-api-rng

Enables api-rng of wasefire-board-api

board-api-storage full-board-api? = applet-api-store, applet-api-store-fragment

Enables wasefire-store, api-storage of wasefire-board-api

board-api-timer full-board-api? = applet-api-timer

Enables api-timer of wasefire-board-api

Affects event::timer

board-api-uart full-board-api? = applet-api-uart

Enables api-uart of wasefire-board-api

Affects event::uart

board-api-usb-serial full-board-api? = applet-api-usb-serial, internal-board-api-usb

Enables api-usb-serial of wasefire-board-api

Affects usb::serial

full-api = full-applet-api, full-board-api

Enables all API features (unstable).

full-applet-api full-api? = applet-api-button, applet-api-crypto-ccm, applet-api-crypto-ec, applet-api-crypto-gcm, applet-api-crypto-hash, applet-api-crypto-hkdf, applet-api-crypto-hmac, applet-api-gpio, applet-api-led, applet-api-platform, applet-api-platform-update, applet-api-radio-ble, applet-api-rng, applet-api-store, applet-api-store-fragment, applet-api-timer, applet-api-uart, applet-api-usb-serial

Enables all applet API features (unstable).

full-board-api full-api? = board-api-button, board-api-crypto-aes128-ccm, board-api-crypto-aes256-gcm, board-api-crypto-hmac-sha256, board-api-crypto-hmac-sha384, board-api-crypto-p256, board-api-crypto-p384, board-api-crypto-sha256, board-api-crypto-sha384, board-api-gpio, board-api-led, board-api-platform, board-api-platform-update, board-api-radio-ble, board-api-rng, board-api-storage, board-api-timer, board-api-uart, board-api-usb-serial

Enables all board API features (unstable).

software-crypto-aes128-ccm = board-api-crypto-aes128-ccm

Software crypto features. Enabling a software crypto feature automatically enables its board API feature.

Enables software-crypto-aes128-ccm of wasefire-board-api

software-crypto-aes256-gcm = board-api-crypto-aes256-gcm

Enables software-crypto-aes256-gcm of wasefire-board-api

software-crypto-hmac-sha256 = board-api-crypto-hmac-sha256

Enables software-crypto-hmac-sha256 of wasefire-board-api

software-crypto-hmac-sha384 = board-api-crypto-hmac-sha384

Enables software-crypto-hmac-sha384 of wasefire-board-api

software-crypto-p256 = board-api-crypto-p256

Enables software-crypto-p256 of wasefire-board-api

software-crypto-p384 = board-api-crypto-p384

Enables software-crypto-p384 of wasefire-board-api

software-crypto-sha256 = board-api-crypto-sha256

Enables software-crypto-sha256 of wasefire-board-api

software-crypto-sha384 = board-api-crypto-sha384

Enables software-crypto-sha384 of wasefire-board-api

native

Selects between Wasm applet or native applet (choose exactly one).

Affects event::InstId

wasm

Enables wasefire-interpreter

unsafe-skip-validation

Assume WASM modules being loaded are valid and do not validate them. This is a safety invariant.

internal-applet-api-crypto applet-api-crypto-ccm? applet-api-crypto-ec? applet-api-crypto-gcm? internal-applet-api-crypto-hash?

Internal features.

internal-applet-api-radio applet-api-radio-ble?

Affects event::radio

internal-applet-api-usb applet-api-usb-serial?

Affects event::usb

internal-board-api-radio board-api-radio-ble?

Affects event::radio

internal-board-api-usb board-api-usb-serial?

Affects event::usb

internal-applet-api-platform applet-api-platform? applet-api-platform-update?
internal-applet-api-store applet-api-store? applet-api-store-fragment?
internal-board-api-crypto-ecc board-api-crypto-p256? board-api-crypto-p384?
internal-debug defmt? log?
internal-hash-context applet-api-crypto-hash? applet-api-crypto-hmac?

Affects applet::Applet.hashes, applet::AppletHashes, applet::HashContext

internal-applet-api-crypto-hash applet-api-crypto-hash? applet-api-crypto-hkdf? applet-api-crypto-hmac? = internal-applet-api-crypto