-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
106 lines (89 loc) · 2.91 KB
/
Copy pathCargo.toml
File metadata and controls
106 lines (89 loc) · 2.91 KB
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
102
103
104
105
[workspace]
# members = ["."]
[package]
name = "ugnos"
version = "0.6.0"
edition = "2024"
rust-version = "1.85"
description = "A high-performance, concurrent time-series database core written in Rust, designed for efficient IoT data ingestion, real-time analytics, and monitoring."
license = "MIT OR Apache-2.0"
authors = ["Dan Vi <bogwi@rakumail.jp>"]
repository = "https://github.com/bogwi/ugnos"
homepage = "https://github.com/bogwi/ugnos"
documentation = "https://docs.rs/ugnos"
readme = "README.md"
keywords = ["time-series", "database", "concurrent", "performance", "analytics"]
categories = ["database-implementations", "concurrency", "data-structures"]
exclude = ["dev", "data", "demo_data"]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
rayon = "1.8"
thiserror = "1.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
bincode = "1.3"
tempfile = "3.19.1"
crc32fast = "1.4"
metrics = "0.24.3"
metrics-exporter-prometheus = { version = "0.18.1", default-features = false, optional = true }
lz4_flex = "0.12.0"
zstd = "0.13.3"
roaring = "0.11.3"
clap = { version = "4.5", features = ["derive", "env"] }
config = "0.15"
tokio = { version = "1", features = ["rt-multi-thread", "macros", "signal", "net"] }
hyper = { version = "1", features = ["server", "http1"] }
http-body-util = "0.1"
hyper-util = { version = "0.1", features = ["server", "server-graceful", "server-auto", "http1", "tokio"] }
bytes = "1"
http = "1"
tonic = "0.14.4"
tonic-prost = "0.14"
prost = "0.14"
tower = "0.5"
constant_time_eq = "0.3"
snap = "1.1"
promql-parser = "0.7.2"
urlencoding = "2.1.3"
[build-dependencies]
prost-build = "0.14"
tonic-prost-build = "0.14"
[features]
# Enable Prometheus in-process scraping by default, while allowing consumers to opt out
# via `default-features = false` if they only want the `metrics` facade instrumentation.
default = ["prometheus"]
prometheus = ["dep:metrics-exporter-prometheus"]
[[bin]]
name = "ugnosd"
path = "src/bin/ugnosd.rs"
[dev-dependencies]
criterion = "0.5"
proptest = "1.6"
iai-callgrind = "0.16.1"
rand = "0.9.2"
rand_chacha = "0.9.0"
ureq = "2.11"
[[bench]]
name = "benchmarks" # Corresponds to benches/benchmarks.rs
harness = false # Required for criterion benchmarks
[[bench]]
name = "microbench_iai" # Corresponds to benches/microbench_iai.rs
harness = false # Required for iai-callgrind benchmarks
[[example]]
name = "persistence_demo"
path = "examples/persistence_demo.rs"
[[example]]
name = "encoding_compression_demo"
path = "examples/encoding_compression_demo.rs"
[[example]]
name = "event_listener_demo"
path = "examples/event_listener_demo.rs"
[[example]]
name = "query_tag_filter_demo"
path = "examples/query_tag_filter_demo.rs"
[[example]]
name = "gen_minimal_write_request"
path = "examples/gen_minimal_write_request.rs"
[[example]]
name = "prometheus_api_client_demo"
path = "examples/prometheus_api_client_demo.rs"