rkyv 0.8.0-alpha.2

Zero-copy deserialization framework for Rust
Documentation
[package]
name = "rkyv"
description = "Zero-copy deserialization framework for Rust"
keywords = ["archive", "rkyv", "serialization", "zero-copy", "no_std"]
categories = ["encoding", "no-std"]
readme = "crates-io.md"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
bytecheck = { workspace = true, optional = true }
hashbrown = { workspace = true, optional = true }
ptr_meta.workspace = true
rancor.workspace = true
rend.workspace = true
rkyv_derive.workspace = true

# Support for various common crates. These are primarily to get users off the ground and build some
# momentum.

# These are NOT PLANNED to remain in rkyv for the 1.0 release. Much like serde, these
# implementations should be moved into their respective crates over time. Before adding support for
# another crate, please consider getting rkyv support in the crate instead.

bitvec = { version = "1.0", optional = true, default-features = false }
indexmap = { version = "2.2", optional = true, default-features = false }
smallvec = { version = "1.7", optional = true, default-features = false }
smol_str = { version = "0.2", optional = true, default-features = false }
arrayvec = { version = "0.7", optional = true, default-features = false }
tinyvec = { version = "1.5", optional = true, default-features = false }
uuid = { version = "1.3", optional = true, default-features = false }
bytes = { version = "1.4.0", optional = true, default-features = false }
thin-vec = { version = "0.2.12", optional = true, default-features = false }
triomphe = { version = "0.1", optional = true, default-features = false }

[features]
default = ["little_endian", "pointer_width_32", "std", "bytecheck"]
little_endian = []
big_endian = []
unaligned = []
pointer_width_16 = []
pointer_width_32 = []
pointer_width_64 = []
alloc = ["hashbrown", "bitvec?/alloc", "tinyvec?/alloc"]
std = ["alloc", "bytecheck?/std", "bytes?/std", "indexmap?/std", "ptr_meta/std", "uuid?/std"]
copy = ["rkyv_derive/copy"]
copy_unsafe = []
bytecheck = ["dep:bytecheck", "alloc", "rend/bytecheck"]
extra_traits = []

# External crate support
indexmap = ["dep:indexmap", "alloc"]
triomphe = ["dep:triomphe", "alloc"]
uuid = ["dep:uuid", "bytecheck?/uuid"]

[package.metadata.docs.rs]
features = ["bytecheck"]