Cargo Features

[dependencies]
borsh = { version = "1.5.2", default-features = false, features = ["std", "derive", "unstable__schema", "rc", "de_strict_order", "ascii", "hashbrown", "bytes", "bson"] }
default = std

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

std default

Required by the generate_schema_schema binary

derive unstable__schema? = borsh-derive
unstable__schema = derive

Enables schema of borsh-derive

Affects borsh::schema

Required by the generate_schema_schema binary

rc

Opt into impls for Rc<T> and Arc<T>. Serializing and deserializing these types does not preserve identity and may result in multiple copies of the same data.
Be sure that this is what you want before enabling this feature.

Affects de::rc, schema::rc, ser::rc

de_strict_order

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.

ascii implicit feature

Enables ascii

ascii:

ASCII-only equivalents to char, str and String

Affects de::ascii, schema::ascii, ser::ascii

borsh-derive derive? unstable__schema?
hashbrown implicit feature

Enables hashbrown >=0.11, <0.15.0

hashbrown can be used in no-std context.
NOTE: There is no reason to restrict use of older versions, but we don't want to get sudden breaking changes with an open range of versions, so we limit the range by not yet released 0.15.0 version:

bytes implicit feature

Enables bytes

bytes:

Types and traits for working with bytes

bson implicit feature

Enables bson

bson:

Encoding and decoding support for BSON in Rust