Cargo Features

[dependencies]
scrypto-derive = { version = "1.2.0", default-features = false, features = ["std", "alloc", "trace", "no-schema"] }
default = std

Currently, dependencies of procedural macros are imported to host crates. This may accidentally enable unwanted features of host dependencies, i.e. serde, serde_json, sbor and radix-blueprint-schema-init.

To work around with it, we've added features std and alloc for scrypto-derive, even though it only works under std environment.

See:

std default

Enables serde and std of radix-blueprint-schema-init and std of radix-common, sbor, serde, and serde_json

sbor:

preserve_order requires std

alloc

Enables alloc and serde of radix-blueprint-schema-init and alloc of radix-common, sbor, serde, and serde_json

serde:

Provide impls for types in the Rust core allocation and collections library including String, Box<T>, Vec<T>, and Cow<T>. This is a subset of std but may be enabled without depending on all of std.

trace

Enable trace

no-schema

Disable schema gen in the output WASM.