-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCargo.toml
101 lines (76 loc) · 3.05 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
[package]
name = "std-dev"
description = "Your Swiss Army knife for swiftly processing any amount of data. Implemented for industrial and educational purposes alike."
# strip=true in profile below,
# 1.56 for edition 2021
rust-version = "1.59"
version = "0.1.0"
edition = "2021"
license = "LGPL-3.0-or-later"
homepage = "https://github.com/Icelk/std-dev"
repository = "https://github.com/Icelk/std-dev"
exclude = ["data-samples"]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[[bin]]
name = "std-dev"
path = "src/bin/main.rs"
required-features = ["bin"]
[dependencies]
rand = { version = "0.9", optional = true }
num-traits = { version = "0.2", default-features = false, features = ["std"], optional = true }
nalgebra = { version = "0.33", optional = true }
simba = { version = "0.9", optional = true, default-features = false }
approx = { version = "0.5", optional = true, default-features = false }
rug = { version = "1.15", optional = true }
colored = { version = "3.0", optional = true }
atty = { version = "0.2.14", optional = true }
clap = { version = "4.0", optional = true, features = ["cargo"] }
clap_autocomplete = { version = "0.4", optional = true }
poloto = { version = "19", optional = true, default-features = false }
tagu = "0.1.6"
rand_xorshift = { version = "0.4.0", optional = true }
[features]
default = ["bin", "pretty", "completion", "regression", "ols", "percentile-rand", "generic-impls", "binary_search_rng", "random_subset_regression"]
# Very commonly used features
base = ["percentile-rand", "binary_search_rng", "generic-impls"]
##
# Library features (also applies to binary)
##
regression = []
# Enables the random support of the binary search estimator (recommended)
binary_search_rng = ["rand", "rand_xorshift"]
# Enables speedier regression by only considering random subsets of data
random_subset_regression = ["rand"]
# Enables the Ordinary Least Squares estimator.
#
# This also allows Theil-Sen polynomial estimator with degrees > 2
# and polynomial regression in the `best_fit` functions.
ols = ["nalgebra", "regression"]
# Arbitrary precision for regression.
#
# Increases max degree of polynomial (with good results).
# Without this feature, it's basically limited to 10 degrees.
arbitrary-precision = ["rug", "simba", "regression", "num-traits", "num-traits/std", "approx"]
# Enables the recommended pivot_fn for `percentile::*` functions.
percentile-rand = ["rand"]
# Allows for generic implementation of traits from this crate.
generic-impls = ["num-traits"]
##
# Binary features
##
bin = ["clap", "poloto", "regression", "binary_search_rng", "ols"]
# Prettier bin output
pretty = ["bin", "atty", "colored"]
# Shell completion output
completion = ["clap_autocomplete"]
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies]
getrandom = { version = "0.3", features = ["wasm_js"] }
# Build with `--profile production`
[profile.production]
inherits = "release"
lto = true
strip = true
opt-level = "s"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]