Rust implementation of the CVM algorithm for counting distinct elements in a stream
1[package]
2name = "cvmcount"
3description = "use the CVM algorithm to quickly estimate the number of distinct elements in a stream"
4readme = "README.md"
5license = "MIT OR Apache-2.0"
6repository = "https://github.com/urschrei/cvmcount"
7documentation = "https://docs.rs/cvmcount"
8keywords = ["CVM", "count-distinct", "estimation"]
9categories = ["algorithms", ]
10
11version = "0.1.6"
12edition = "2021"
13
14[dependencies]
15rand = "0.8.5"
16regex = "1.10.4"
17clap = { version = "4.5.4", features = ["cargo"] }
18
19[dev-dependencies]
20rand = "0.8.5"
21criterion = "0.5.1"
22
23[lib]
24name = "cvmcount"
25path = "src/lib.rs"
26doctest = false
27
28[[bin]]
29name = "cvmcount"
30path = "src/main.rs"
31test = false
32
33[profile.release]
34lto = true
35codegen-units = 1
36
37[profile.bench]
38lto = true
39codegen-units = 1
40
41# The profile that 'cargo dist' will build with
42[profile.dist]
43inherits = "release"
44lto = "thin"
45
46[[bench]]
47name = "benchmarks"
48harness = false
49
50# Config for 'cargo dist'
51[workspace.metadata.dist]
52# The preferred cargo-dist version to use in CI (Cargo.toml SemVer syntax)
53cargo-dist-version = "0.13.3"
54# CI backends to support
55ci = ["github"]
56# The installers to generate for each app
57installers = ["shell"]
58# Target platforms to build apps for (Rust target-triple syntax)
59targets = ["aarch64-apple-darwin", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-pc-windows-msvc"]
60# Publish jobs to run in CI
61pr-run-mode = "plan"
62# Whether to install an updater program
63install-updater = false