tinystr 0.7.4

A small ASCII-only bounded length string representation.
Documentation
# This file is part of ICU4X. For terms of use, please see the file
# called LICENSE at the top level of the ICU4X source tree
# (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ).

[package]
name = "tinystr"
description = "A small ASCII-only bounded length string representation."
version = "0.7.4"
keywords = ["string", "str", "small", "tiny", "no_std"]
categories = ["data-structures"]
license-file = "LICENSE"

authors.workspace = true
edition.workspace = true
include.workspace = true
repository.workspace = true
rust-version.workspace = true

[package.metadata.workspaces]
independent = true

[package.metadata.docs.rs]
all-features = true

[dependencies]
displaydoc = { version = "0.2.3", default-features = false }

serde = { version = "1.0.123", default-features = false, features = ["alloc"], optional = true }
zerovec = { workspace = true, optional = true }
databake = { workspace = true, optional = true }

[dev-dependencies]
bincode = "1.3"
postcard = { version = "1.0.0", features = ["use-std"], default-features = false }
rand = { version = "0.8.5", features = ["small_rng"] }
serde_json = { version = "1.0", default-features = false, features = ["alloc"] }

[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies]
criterion = "0.4"

[features]
default = ["alloc"]
alloc = []
bench = []
std = []

[package.metadata.cargo-all-features]
# Bench feature gets tested separately and is only relevant for CI
denylist = ["bench"]

[lib]
bench = false  # This option is required for Benchmark CI

[[test]]
name = "serde"
required-features = ["serde"]

[[bench]]
name = "overview"
harness = false

[[bench]]
name = "construct"
harness = false
required-features = ["bench"]

[[bench]]
name = "read"
harness = false
required-features = ["bench"]

[[bench]]
name = "serde"
harness = false
required-features = ["bench", "serde"]