[package]
edition = "2021"
name = "vsf"
version = "0.9.0"
authors = ["Nick Spiker <nick@verichrome.cc>"]
build = "build.rs"
exclude = [
"*.rlib",
"*.vsf",
"vsf.png",
"target/",
"tools/",
"frequencies.bin",
"test_determinism",
"test_determinism.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Versatile Storage Format"
readme = "README.md"
keywords = [
"binary",
"serialization",
"storage",
"data-format",
]
categories = [
"encoding",
"data-structures",
]
license-file = "LICENSE"
repository = "https://github.com/nickspiker/vsf"
[features]
crypto = [
"ed25519-dalek",
"x25519-dalek",
"rand",
"chacha20poly1305",
"aes-gcm",
]
default = [
"std",
"registry",
"errors-verbose",
]
errors-verbose = []
handle = ["dep:ihi"]
image-tools = [
"std",
"dep:clap",
"dep:image",
"dep:img-parts",
"dep:icc-profile",
"dep:rav1e",
"dep:resize",
"dep:rgb",
]
inspect = [
"std",
"registry",
"dep:colored",
]
registry = ["dep:spin"]
spirix = ["dep:spirix"]
std = [
"chrono/std",
"chrono/clock",
"bitvec/std",
"blake3/std",
"hex/std",
"num-traits/std",
"num-complex/std",
]
text = [
"std",
"registry",
"dep:clap",
"inspect",
"text-encode",
]
text-encode = [
"std",
"dep:unicode-normalization",
]
[lib]
name = "vsf"
path = "src/lib.rs"
[[bin]]
name = "vsfimg"
path = "src/bin/vsfimg.rs"
required-features = ["image-tools"]
[[bin]]
name = "vsfinfo"
path = "src/bin/vsfinfo.rs"
required-features = ["text"]
[[example]]
name = "builder_pattern_example"
path = "examples/builder_pattern_example.rs"
[[example]]
name = "compress_file"
path = "examples/compress_file.rs"
required-features = ["text"]
[[example]]
name = "create_raw_image"
path = "examples/create_raw_image.rs"
[[example]]
name = "create_test_vsf"
path = "examples/create_test_vsf.rs"
[[example]]
name = "debug_vsf_bytes"
path = "examples/debug_vsf_bytes.rs"
[[example]]
name = "demo_creation_time"
path = "examples/demo_creation_time.rs"
[[example]]
name = "minimal_raw"
path = "examples/minimal_raw.rs"
[[example]]
name = "show_shortcode_colours"
path = "examples/show_shortcode_colours.rs"
required-features = ["inspect"]
[[example]]
name = "show_vsf_bits"
path = "examples/show_vsf_bits.rs"
[[example]]
name = "show_vsf_encoding"
path = "examples/show_vsf_encoding.rs"
[[example]]
name = "test_signing"
path = "examples/test_signing.rs"
required-features = ["crypto"]
[[example]]
name = "test_vsf_huffman"
path = "examples/test_vsf_huffman.rs"
required-features = ["text"]
[[test]]
name = "frozen_wire"
path = "tests/frozen_wire.rs"
[[test]]
name = "uint_minimal"
path = "tests/uint_minimal.rs"
[dependencies.aes-gcm]
version = "0.10"
features = [
"alloc",
"aes",
"getrandom",
]
optional = true
default-features = false
[dependencies.bitvec]
version = "1.0.1"
features = ["alloc"]
default-features = false
[dependencies.blake3]
version = "1"
default-features = false
[dependencies.chacha20poly1305]
version = "0.10"
features = ["alloc"]
optional = true
default-features = false
[dependencies.chrono]
version = "0.4.38"
features = ["alloc"]
default-features = false
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.colored]
version = "2"
optional = true
[dependencies.ed25519-dalek]
version = "2"
features = [
"rand_core",
"alloc",
"zeroize",
]
optional = true
default-features = false
[dependencies.hex]
version = "0.4"
features = ["alloc"]
default-features = false
[dependencies.i256]
version = "0.2.3"
default-features = false
[dependencies.icc-profile]
version = "0.0.2"
optional = true
[dependencies.ihi]
version = "0.0.47"
features = ["handle"]
optional = true
default-features = false
[dependencies.image]
version = "0.25"
features = [
"jpeg",
"png",
"webp",
"tiff",
]
optional = true
default-features = false
[dependencies.img-parts]
version = "0.4"
optional = true
[dependencies.libm]
version = "0.2"
[dependencies.num-complex]
version = "0.4.5"
default-features = false
[dependencies.num-traits]
version = "0.2.19"
features = ["libm"]
default-features = false
[dependencies.rand]
version = "0.8"
features = [
"alloc",
"getrandom",
"std",
"std_rng",
]
optional = true
default-features = false
[dependencies.rav1e]
version = "0.7"
optional = true
default-features = false
[dependencies.resize]
version = "0.8.8"
optional = true
[dependencies.rgb]
version = "0.8.52"
optional = true
[dependencies.spin]
version = "0.9"
features = [
"once",
"rwlock",
]
optional = true
default-features = false
[dependencies.spirix]
version = "0.1.1"
optional = true
[dependencies.unicode-normalization]
version = "0.1"
optional = true
default-features = false
[dependencies.x25519-dalek]
version = "2"
features = [
"static_secrets",
"alloc",
"zeroize",
]
optional = true
default-features = false
[build-dependencies.blake3]
version = "1"