[[bench]]
name = "adaptive_mmap_bench"
path = "benches/adaptive_mmap_bench.rs"
[[bench]]
name = "advanced_radix_sort_bench"
path = "benches/advanced_radix_sort_bench.rs"
[[bench]]
harness = false
name = "avx512_bench"
path = "benches/avx512_bench.rs"
[[bench]]
harness = false
name = "benchmark"
path = "benches/benchmark.rs"
[[bench]]
harness = false
name = "benchmark_rank_select"
path = "benches/benchmark_rank_select.rs"
[[bench]]
harness = false
name = "benchmark_sparse_implementations"
path = "benches/benchmark_sparse_implementations.rs"
[[bench]]
harness = false
name = "cache_bench"
path = "benches/cache_bench.rs"
[[bench]]
harness = false
name = "cache_locality_bench"
path = "benches/cache_locality_bench.rs"
[[bench]]
name = "cache_oblivious_bench"
path = "benches/cache_oblivious_bench.rs"
[[bench]]
harness = false
name = "comprehensive_trie_benchmarks"
path = "benches/comprehensive_trie_benchmarks.rs"
[[bench]]
harness = false
name = "compressed_sparse_trie_bench"
path = "benches/compressed_sparse_trie_bench.rs"
[[bench]]
harness = false
name = "cpp_impl_comparison"
path = "benches/cpp_impl_comparison.rs"
[[bench]]
harness = false
name = "crit_bit_trie_bench"
path = "benches/crit_bit_trie_bench.rs"
[[bench]]
harness = false
name = "dict_zip_bench"
path = "benches/dict_zip_bench.rs"
[[bench]]
harness = false
name = "dictionary_optimization_bench"
path = "benches/dictionary_optimization_bench.rs"
[[bench]]
name = "double_array_trie_bench"
path = "benches/double_array_trie_bench.rs"
[[bench]]
harness = false
name = "entropy_bench"
path = "benches/entropy_bench.rs"
[[bench]]
name = "five_level_pool_bench"
path = "benches/five_level_pool_bench.rs"
[[bench]]
name = "fsa_infrastructure_bench"
path = "benches/fsa_infrastructure_bench.rs"
[[bench]]
harness = false
name = "hash_maps_bench"
path = "benches/hash_maps_bench.rs"
[[bench]]
name = "int_vec_benchmark"
path = "benches/int_vec_benchmark.rs"
[[bench]]
harness = false
name = "lru_map_bench"
path = "benches/lru_map_bench.rs"
[[bench]]
name = "memory_performance"
path = "benches/memory_performance.rs"
[[bench]]
name = "memory_pools_bench"
path = "benches/memory_pools_bench.rs"
[[bench]]
name = "nested_louds_trie_bench"
path = "benches/nested_louds_trie_bench.rs"
[[bench]]
name = "patricia_trie_bench"
path = "benches/patricia_trie_bench.rs"
[[bench]]
name = "prefetch_adaptive_bench"
path = "benches/prefetch_adaptive_bench.rs"
[[bench]]
harness = false
name = "profiling_overhead_bench"
path = "benches/profiling_overhead_bench.rs"
[[bench]]
name = "quick_prefetch_bench"
path = "benches/quick_prefetch_bench.rs"
[[bench]]
harness = false
name = "rank_select_bench"
path = "benches/rank_select_bench.rs"
[[bench]]
harness = false
name = "secure_memory_pool_bench"
path = "benches/secure_memory_pool_bench.rs"
[[bench]]
name = "separated_storage_config_bench"
path = "benches/separated_storage_config_bench.rs"
[[bench]]
name = "separated_storage_simple_bench"
path = "benches/separated_storage_simple_bench.rs"
[[bench]]
harness = false
name = "simd_memory_bench"
path = "benches/simd_memory_bench.rs"
[[bench]]
harness = false
name = "simd_rank_select_bench"
path = "benches/simd_rank_select_bench.rs"
[[bench]]
name = "simple_benchmark"
path = "benches/simple_benchmark.rs"
[[bench]]
name = "sortable_str_vec_bench"
path = "benches/sortable_str_vec_bench.rs"
[[bench]]
name = "sortable_str_vec_optimized"
path = "benches/sortable_str_vec_optimized.rs"
[[bench]]
harness = false
name = "specialized_containers_bench"
path = "benches/specialized_containers_bench.rs"
[[bench]]
name = "suffix_array_bench"
path = "benches/suffix_array_bench.rs"
[[bench]]
harness = false
name = "valvec32_performance_bench"
path = "benches/valvec32_performance_bench.rs"
[[bench]]
name = "version_sync_bench"
path = "benches/version_sync_bench.rs"
[build-dependencies.cbindgen]
optional = true
version = "0.29"
[build-dependencies.pkg-config]
version = "0.3.27"
[dependencies.ahash]
version = "0.8.8"
[dependencies.async-trait]
version = "0.1.50"
[dependencies.base64]
version = "0.22"
[dependencies.bincode]
optional = true
version = "1.3"
[dependencies.bitflags]
version = "2.6"
[dependencies.bytemuck]
version = "1.18"
[dependencies.cbindgen]
optional = true
version = "0.29"
[dependencies.crossbeam-utils]
version = "0.8.20"
[dependencies.dashmap]
version = "6.0"
[dependencies.fastrand]
version = "2.1"
[dependencies.futures]
version = "0.3.25"
[dependencies.libc]
version = "0.2.159"
[dependencies.log]
version = "0.4.17"
[dependencies.lz4_flex]
optional = true
version = "0.12"
[dependencies.memmap2]
optional = true
version = "0.9.4"
[dependencies.num_cpus]
version = "1.16"
[dependencies.once_cell]
version = "1.20"
[dependencies.parking_lot]
version = "0.12"
[dependencies.raw-cpuid]
version = "11.0"
[dependencies.rayon]
version = "1.10"
[dependencies.serde]
features = ["derive"]
optional = true
version = "1.0"
[dependencies.serde_json]
optional = true
version = "1.0"
[dependencies.thiserror]
version = "2.0.17"
[dependencies.thread_local]
version = "1.1"
[dependencies.tokio]
features = ["full"]
version = "1.41"
[dependencies.uuid]
features = ["v4"]
version = "1.11"
[dependencies.zstd]
optional = true
version = "0.13.2"
[dev-dependencies.arbitrary]
features = ["derive"]
version = "1.3"
[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.8.0"
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.rand]
version = "0.9"
[dev-dependencies.tempfile]
version = "3.14"
[[example]]
name = "advanced_nested_louds_demo"
path = "examples/advanced_nested_louds_demo.rs"
[[example]]
name = "basic_usage"
path = "examples/basic_usage.rs"
[[example]]
name = "compact_entry_test"
path = "examples/compact_entry_test.rs"
[[example]]
name = "config_demo"
path = "examples/config_demo.rs"
[[example]]
name = "debug_crit_bit_trie"
path = "examples/debug_crit_bit_trie.rs"
[[example]]
name = "debug_longest_prefix"
path = "examples/debug_longest_prefix.rs"
[[example]]
name = "debug_space_test"
path = "examples/debug_space_test.rs"
[[example]]
name = "debug_test"
path = "examples/debug_test.rs"
[[example]]
name = "debug_zero_byte"
path = "examples/debug_zero_byte.rs"
[[example]]
name = "dictionary_performance_demo"
path = "examples/dictionary_performance_demo.rs"
[[example]]
name = "entropy_coding_demo"
path = "examples/entropy_coding_demo.rs"
[[example]]
name = "intvec_perf_test"
path = "examples/intvec_perf_test.rs"
[[example]]
name = "memory_mapping_demo"
path = "examples/memory_mapping_demo.rs"
[[example]]
name = "optimized_rank_select_demo"
path = "examples/optimized_rank_select_demo.rs"
[[example]]
name = "prefetch_performance_demo"
path = "examples/prefetch_performance_demo.rs"
[[example]]
name = "production_benchmark"
path = "examples/production_benchmark.rs"
[[example]]
name = "profiling_validation"
path = "examples/profiling_validation.rs"
[[example]]
name = "secure_memory_pool_demo"
path = "examples/secure_memory_pool_demo.rs"
[[example]]
name = "simd_memory_ops_demo"
path = "examples/simd_memory_ops_demo.rs"
[[example]]
name = "simd_optimization_demo"
path = "examples/simd_optimization_demo.rs"
[[example]]
name = "sortable_fair_test"
path = "examples/sortable_fair_test.rs"
[[example]]
name = "sortable_performance_test"
path = "examples/sortable_performance_test.rs"
[[example]]
name = "specialized_containers_demo"
path = "examples/specialized_containers_demo.rs"
[[example]]
name = "succinct_demo"
path = "examples/succinct_demo.rs"
[[example]]
name = "test_algorithm_selection"
path = "examples/test_algorithm_selection.rs"
[[example]]
name = "valvec32_optimized_bench"
path = "examples/valvec32_optimized_bench.rs"
[[example]]
name = "valvec32_perf"
path = "examples/valvec32_perf.rs"
[[example]]
name = "valvec32_push_analysis"
path = "examples/valvec32_push_analysis.rs"
[[example]]
name = "valvec32_quick_test"
path = "examples/valvec32_quick_test.rs"
[features]
avx512 = ["simd"]
default = ["simd", "mmap", "zstd", "serde"]
ffi = ["dep:cbindgen"]
lz4 = ["dep:lz4_flex"]
mmap = ["dep:memmap2"]
nightly = []
serde = ["dep:serde", "dep:serde_json", "dep:bincode"]
simd = []
zstd = ["dep:zstd"]
[lib]
crate-type = ["rlib", "cdylib"]
name = "zipora"
path = "src/lib.rs"
[package]
authors = ["InfiniLabs"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = "build.rs"
categories = ["compression", "data-structures", "algorithms", "concurrency", "memory-management"]
description = "High-performance Rust implementation providing advanced data structures and compression algorithms with memory safety guarantees. Features LRU page cache, sophisticated caching layer, fiber-based concurrency, real-time compression, secure memory pools, SIMD optimizations, and complete C FFI for migration from C++."
edition = "2024"
keywords = ["compression", "data-structures", "trie", "succinct", "concurrency"]
license-file = "LICENSE"
name = "zipora"
readme = "README.md"
repository = "https://github.com/infinilabs/zipora"
rust-version = "1.88"
version = "2.1.1"
[package.metadata.docs.rs]
all-features = true
features = ["simd", "mmap", "zstd", "lz4", "serde", "ffi"]
[package.metadata.miri]
exclude = ["tests/simd_specific_tests.rs", "tests/avx512_tests.rs", "benchmarks/*"]
flags = ["-Zmiri-strict-provenance", "-Zmiri-symbolic-alignment-check", "-Zmiri-check-number-validity", "-Zmiri-disable-isolation"]
[profile.bench]
codegen-units = 1
debug = 0
debug-assertions = false
lto = "fat"
opt-level = 3
overflow-checks = false
panic = "unwind"
[profile.release]
codegen-units = 1
debug-assertions = false
lto = "fat"
opt-level = 3
overflow-checks = false
panic = "unwind"
strip = false
[profile.test]
debug = 2
debug-assertions = true
opt-level = 3
overflow-checks = true
panic = "unwind"
[[test]]
name = "compressed_sparse_trie_tests"
path = "tests/compressed_sparse_trie_tests.rs"
[[test]]
name = "container_performance_tests"
path = "tests/container_performance_tests.rs"
[[test]]
name = "container_property_tests"
path = "tests/container_property_tests.rs"
[[test]]
name = "container_safety_tests"
path = "tests/container_safety_tests.rs"
[[test]]
name = "dict_zip_basic_tests"
path = "tests/dict_zip_basic_tests.rs"
[[test]]
name = "dict_zip_comprehensive_tests"
path = "tests/dict_zip_comprehensive_tests.rs"
[[test]]
name = "dict_zip_minimal_tests"
path = "tests/dict_zip_minimal_tests.rs"
[[test]]
name = "double_array_trie_tests"
path = "tests/double_array_trie_tests.rs"
[[test]]
name = "entropy_performance_tests"
path = "tests/entropy_performance_tests.rs"
[[test]]
name = "ffi_error_handling_tests"
path = "tests/ffi_error_handling_tests.rs"
[[test]]
name = "fsa_infrastructure_tests"
path = "tests/fsa_infrastructure_tests.rs"
[[test]]
name = "fse_tests"
path = "tests/fse_tests.rs"
[[test]]
name = "hardware_verification_test"
path = "tests/hardware_verification_test.rs"
[[test]]
name = "io_streams_integration"
path = "tests/io_streams_integration.rs"
[[test]]
name = "nested_louds_trie_tests"
path = "tests/nested_louds_trie_tests.rs"
[[test]]
name = "profiling_stress_tests"
path = "tests/profiling_stress_tests.rs"
[[test]]
name = "rank_select_interleaved256_test"
path = "tests/rank_select_interleaved256_test.rs"
[[test]]
name = "secure_memory_pool_tests"
path = "tests/secure_memory_pool_tests.rs"
[[test]]
name = "security_memory_pool"
path = "tests/security_memory_pool.rs"
[[test]]
name = "security_memory_pool_simple"
path = "tests/security_memory_pool_simple.rs"
[[test]]
name = "simd_base64_tests"
path = "tests/simd_base64_tests.rs"
[[test]]
name = "simd_corruption_repro"
path = "tests/simd_corruption_repro.rs"
[[test]]
name = "simd_search_test"
path = "tests/simd_search_test.rs"
[[test]]
name = "sparse_performance_validation"
path = "tests/sparse_performance_validation.rs"
[[test]]
name = "specialized_containers_comprehensive"
path = "tests/specialized_containers_comprehensive.rs"
[[test]]
name = "trie_concurrency_tests"
path = "tests/trie_concurrency_tests.rs"
[[test]]
name = "trie_integration_tests"
path = "tests/trie_integration_tests.rs"
[[test]]
name = "trie_property_fuzzing_tests"
path = "tests/trie_property_fuzzing_tests.rs"