[package] name = "rapidhash" version = "1.1.0" edition = "2021" rust-version = "1.77.0" authors = ["Liam Gray "] description = "A rust port of rapidhash: an extremely fast, high quality, platform-independent hashing algorithm." repository = "https://github.com/hoxxep/rapidhash" documentation = "https://docs.rs/rapidhash" license = "MIT OR Apache-2.0" readme = "README.md" keywords = ["hash", "rapidhash"] categories = ["algorithms", "no-std"] exclude = ["Cargo.lock", ".github", "fuzz", "docs"] [lib] [[bench]] name = "bench" harness = false [[bench]] name = "quality" harness = false # Test docs using cargo-docs. Command: # RUSTDOCFLAGS="--cfg docsrs" cargo +nightly docs -- --all-feature [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] default = ["std"] std = [] # enable std library for RapidHashMap and RapidHashSet helpers rand = ["dep:rand", "std"] # enable the rand library for random seed initialisation and RapidRandomState rng = ["dep:rand_core"] # fast random number generator using rapidhash unsafe = [] # enable unsafe pointer arithmetic to skip unnecessary bounds checks [dependencies] rand = { version = "0.8.5", optional = true } rand_core = { version = "0.6.4", default-features = false, optional = true } [dev-dependencies] # hash functions to benchmark/compare fxhash = "0.2.1" t1ha = "0.1.2" wyhash = "0.5.0" twox-hash = "1.6.3" metrohash = "1.0.6" seahash = "4.1.0" ahash = "0.8.11" fastrand = "2.1.1" # benchmarking helpers criterion = { version = "0.5.1", default-features = false, features = ["rayon", "cargo_bench_support"] } rand = "0.8.5" const-random = "0.1.18" lazy_static = "1.5.0" reqwest = { version = "0.12.7", features = ["blocking"] } itertools = "0.13.0" # for the charts example to generate README plots plotters = { version = "0.3.7", default-features = false, features = ["chrono", "image", "svg_backend", "bitmap_backend", "bitmap_encoder", "line_series"] } serde = "1.0.210" serde_cbor = "0.11.2" # gxhash simply won't compile on Github Actions, even though I only use it for the benchmarks... [target.'cfg(all(any(target_arch = "arm", target_arch = "aarch64"), all(target_feature = "aes", target_feature = "neon")))'.dev-dependencies] gxhash = "3.4.1" [target.'cfg(all(any(target_arch = "x86", target_arch = "x86_64"), all(target_feature = "aes", target_feature = "sse2")))'.dev-dependencies] gxhash = "3.4.1"