# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
rust-version = "1.91.0"
name = "onpair"
version = "0.0.3"
authors = ["SpiralDB Developers <hello@spiraldb.com>"]
build = false
exclude = [".github/*"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Short-strings compression for fast random access"
readme = "README.md"
keywords = [
    "compression",
    "strings",
    "onpair",
    "random-access",
    "lightweight",
]
categories = ["compression"]
license = "Apache-2.0"
repository = "https://github.com/spiraldb/onpair"

[lib]
name = "onpair"
path = "src/lib.rs"

[[example]]
name = "bench_tpch"
path = "examples/bench_tpch.rs"

[[bench]]
name = "clickbench"
path = "benches/clickbench.rs"
harness = false

[[bench]]
name = "tpch"
path = "benches/tpch.rs"
harness = false

[dependencies.hashbrown]
version = "0.16.1"

[dependencies.rand]
version = "0.9.0"

[dev-dependencies.arrow-array]
version = "57.1"

[dev-dependencies.arrow-schema]
version = "57.1"

[dev-dependencies.divan]
version = "4.0.4"
package = "codspeed-divan-compat"

[dev-dependencies.parquet]
version = "57.1"

[dev-dependencies.rstest]
version = "0.26.1"

[dev-dependencies.tpchgen]
version = "2.0.2"

[dev-dependencies.tpchgen-arrow]
version = "2.0.2"

[lints.clippy]
or_fun_call = "deny"

[lints.clippy.all]
level = "deny"
priority = -1

[lints.clippy.if_then_some_else_none]
level = "deny"
priority = 0

[lints.clippy.mem_forget]
level = "deny"
priority = 0

[lints.clippy.panic_in_result_fn]
level = "deny"
priority = 0

[lints.clippy.same_name_method]
level = "deny"
priority = 0

[lints.clippy.tests_outside_test_module]
level = "deny"
priority = 0

[lints.clippy.unwrap_in_result]
level = "deny"
priority = 0

[lints.clippy.use_debug]
level = "deny"
priority = 0

[lints.rust]
missing_docs = "allow"
warnings = "deny"
