wuff 0.2.7

Pure-rust WOFF and WOFF2 font decoding
Documentation
[package]
name = "wuff"
version = "0.2.7"
description = "Pure-rust WOFF and WOFF2 font decoding"
authors = ["Nico Burns <nico@nicoburns.com>"]
license = "MIT"
repository = "https://github.com/nicoburns/wuff"
documentation = "https://docs.rs/wuff"
keywords = ["font", "opentype", "truetype", "woff", "woff2"]
categories = ["parsing"]
readme = "README.md"
edition = "2024"
rust-version = "1.85"
include = [
    "Cargo.toml",
    "README.md",
    "src/*",
]

# The `wuff` CLI is a std-only convenience tool that decodes both WOFF1 and
# WOFF2, so it needs both built-in decompressors.
[[bin]]
name = "wuff"
required-features = ["brotli", "z"]

[features]
default = ["brotli", "z"]
brotli = ["dep:brotli-decompressor"]
z = ["dep:flate2"]
font_compression_bin = []
debug = []

[dependencies]
arrayvec = { version = "0.7.6", default-features = false }
bytes = { version = "1.10.1", default-features = false }
# `brotli` is no_std-compatible: we drive `brotli-decompressor` with our own
# `alloc`-backed allocator, so its `std` default feature is disabled.
brotli-decompressor = { version = "5.0.0", optional = true, default-features = false }
# `flate2` (the `z` feature) is std-only, so this feature cannot be built for
# no_std targets. no_std users can supply their own decompressor via
# `decompress_woff1_with_custom_z`.
flate2 = { version = "1.1.2", optional = true }

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]