Cargo Features

[dependencies]
wasm-msgpack = { version = "0.6.2", default-features = false, features = ["std", "alloc", "all", "embedded", "wasm", "u64", "i64", "bin16", "bin32", "map16", "map32", "array16", "array32", "str16", "str32", "ext", "fixext", "ext8", "ext32", "timestamp", "timestamp96", "compliant", "custom-error-messages", "derive-debug"] }
default = wasm

The wasm feature is set by default whenever wasm-msgpack is added without default-features = false somewhere in the dependency tree.

std all? = derive-debug

Enables std of byteorder, num-traits, serde, and serde_bytes

serde:

Provide impls for common standard library types like Vec<T> and HashMap<K, V>.
Requires a dependency on the Rust standard library.

alloc wasm

Enables alloc of serde and serde_bytes

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.

all = compliant, serde, std
embedded = bin16, ext8, i64, serde, serde_bytes, timestamp, u64
wasm default = alloc, array32, bin32, compliant, custom-error-messages, ext, ext16, ext32, ext8, fixext, i64, map32, serde, serde_bytes, str32, timestamp, u64
u64 compliant? embedded? wasm

Affects decode::read_raw_u64, encode::serialize_u64

i64 compliant? embedded? wasm

Affects decode::read_sint, encode::serialize_i64

bin16 bin32? compliant? embedded?
bin32 compliant? wasm = bin16
map16 compliant?
map32 compliant? wasm
array16 array32?
array32 compliant? wasm = array16
str16 str32?
str32 compliant? wasm = str16
ext compliant? ext16? ext32? ext8? fixext? timestamp? wasm

Affects wasm-msgpack::ext

fixext compliant? timestamp? wasm = ext
ext8 compliant? embedded? timestamp96? wasm = ext
ext16 ext32 compliant? wasm = ext
timestamp compliant? embedded? timestamp96? wasm = ext, fixext

Affects ext::timestamp

timestamp96 compliant? = ext8, timestamp
compliant all? wasm = array32, bin16, bin32, ext, ext16, ext32, ext8, fixext, i64, map16, map32, str32, timestamp, timestamp96, u64
custom-error-messages wasm = heapless
derive-debug std?

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

serde all? alloc? embedded? std? wasm

Affects decode::from_slice, encode::serde

serde_bytes alloc? embedded? std? wasm
heapless custom-error-messages?

Enables heapless ^0.7