[package]
edition = "2024"
rust-version = "1.85"
name = "riegeli"
version = "0.2.0"
build = false
exclude = [
"testdata/",
"tests/conformance.rs",
"tests/common/",
"tests/benchmark_correctness.rs",
"tests/differential.rs",
"tests/cross_lang_roundtrip.rs",
"tests/proto_streaming.rs",
"tests/recovery.rs",
"tests/sprint_29_eval.rs",
"tests/transpose_adversarial.rs",
"tests/transpose_roundtrip.rs",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust implementation of the Riegeli/records file format"
readme = "README.md"
keywords = [
"riegeli",
"records",
"protobuf",
"serialization",
]
categories = [
"encoding",
"compression",
]
license = "Apache-2.0"
repository = "https://github.com/mikedanese/riegeli-rs"
resolver = "2"
[features]
brotli = ["dep:brotli"]
default = ["zstd"]
snappy = ["dep:snap"]
zstd = ["dep:zstd"]
[lib]
name = "riegeli"
path = "src/lib.rs"
[[test]]
name = "binary_search"
path = "tests/binary_search.rs"
[[test]]
name = "chunk_encoding"
path = "tests/chunk_encoding.rs"
[[test]]
name = "compression"
path = "tests/compression.rs"
[[test]]
name = "field_projection"
path = "tests/field_projection.rs"
[[test]]
name = "metadata"
path = "tests/metadata.rs"
[[test]]
name = "padding"
path = "tests/padding.rs"
[[test]]
name = "proptest_roundtrip"
path = "tests/proptest_roundtrip.rs"
[[test]]
name = "proto_field_filter"
path = "tests/proto_field_filter.rs"
[[test]]
name = "proto_field_iter"
path = "tests/proto_field_iter.rs"
[[test]]
name = "proto_field_writer"
path = "tests/proto_field_writer.rs"
[[test]]
name = "proto_message_reader"
path = "tests/proto_message_reader.rs"
[[test]]
name = "reader_api"
path = "tests/reader_api.rs"
[[test]]
name = "reader_edge_cases"
path = "tests/reader_edge_cases.rs"
[[test]]
name = "record_io"
path = "tests/record_io.rs"
[[test]]
name = "record_position"
path = "tests/record_position.rs"
[[test]]
name = "sprint_25_eval"
path = "tests/sprint_25_eval.rs"
[[test]]
name = "sprint_26_eval"
path = "tests/sprint_26_eval.rs"
[[test]]
name = "sprint_27_eval"
path = "tests/sprint_27_eval.rs"
[[test]]
name = "sprint_28_eval"
path = "tests/sprint_28_eval.rs"
[[test]]
name = "sprint_30_eval"
path = "tests/sprint_30_eval.rs"
[[test]]
name = "sprint_31_eval"
path = "tests/sprint_31_eval.rs"
[[test]]
name = "sprint_32_eval"
path = "tests/sprint_32_eval.rs"
[[test]]
name = "sprint_33_adversarial"
path = "tests/sprint_33_adversarial.rs"
[[test]]
name = "sprint_33_tests"
path = "tests/sprint_33_tests.rs"
[[test]]
name = "sprint_34_adversarial"
path = "tests/sprint_34_adversarial.rs"
[[test]]
name = "sprint_34_stress"
path = "tests/sprint_34_stress.rs"
[[test]]
name = "transpose_encoding"
path = "tests/transpose_encoding.rs"
[[test]]
name = "transpose_projection"
path = "tests/transpose_projection.rs"
[[test]]
name = "transpose_refactor"
path = "tests/transpose_refactor.rs"
[[test]]
name = "tuning"
path = "tests/tuning.rs"
[[test]]
name = "writer_api"
path = "tests/writer_api.rs"
[[bench]]
name = "head_to_head"
path = "benches/head_to_head.rs"
harness = false
required-features = [
"brotli",
"zstd",
]
[[bench]]
name = "throughput"
path = "benches/throughput.rs"
harness = false
required-features = [
"brotli",
"zstd",
]
[[bench]]
name = "transpose_projection_bench"
path = "benches/transpose_projection_bench.rs"
harness = false
required-features = [
"brotli",
"zstd",
]
[dependencies.brotli]
version = "8"
optional = true
[dependencies.highway]
version = "1.3"
[dependencies.protobuf]
version = "4.34.1-release"
[dependencies.snap]
version = "1"
optional = true
[dependencies.zstd]
version = "0.13"
optional = true
[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]
[dev-dependencies.pprof]
version = "0.15"
features = [
"criterion",
"protobuf-codec",
]
[dev-dependencies.proptest]
version = "1"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(fuzzing)"]