-
Notifications
You must be signed in to change notification settings - Fork 3
/
Cargo.toml
107 lines (97 loc) · 3.88 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
102
103
104
105
106
107
[workspace]
resolver = "2"
members = [
"flv_cli/data_importer",
"flv_cli/csv_import",
"flv_clients/symdb_client",
"flv_clients/qd_client",
"flv_common",
"flv_components/client_manager",
"flv_components/config_manager",
"flv_components/db_query_manager",
"flv_components/db_quest_manager",
"flv_components/symbol_manager",
"flv_examples/basic_data_stream",
"flv_examples/causal_data_inference",
"flv_examples/causal_model",
"flv_utils/client_utils",
"flv_examples/symbol_master",
"flv_proto",
"flv_sbe/bindings",
"flv_sbe/sbe_messages",
"flv_utils/service_utils",
"flv_services/symdb",
"flv_services/qdgw",
"flv_specs/db_specs",
"flv_specs/exchange_specs",
"flv_specs/service_specs",
]
[workspace.package]
edition = "2021"
rust-version = "1.75"
readme = "README.md"
repository = "https://github.com/marvin-hansen/fluvio-examples"
authors = ["Marvin Hansen <[email protected]>"]
[workspace.dependencies]
#
# Internal crates
causal_model = { path = "flv_examples/causal_model" }
common = { path = "flv_common" }
client_manager = { path = "flv_components/client_manager" }
config_manager = { path = "flv_components/config_manager" }
db_query_manager = { path = "flv_components/db_query_manager" }
db_quest_manager = { path = "flv_components/db_quest_manager" }
symbol_manager = { path = "flv_components/symbol_manager" }
proto = { path = "flv_proto" }
qd_client = { path = "flv_clients/qd_client" }
sbe_bindings = { path = "flv_sbe/bindings" }
sbe_messages = { path = "flv_sbe/sbe_messages" }
symdb_client = { path = "flv_clients/symdb_client" }
service_utils = { path = "flv_utils/service_utils" }
client_utils = { path = "flv_utils/client_utils" }
db_specs = { path = "flv_specs/db_specs" }
exchange_specs = { path = "flv_specs/exchange_specs" }
service_specs = { path = "flv_specs/service_specs" }
#
# External crates
async-trait = { version = "0.1.77" }
autometrics = { version = "1", features = ["prometheus-exporter"] }
# chrono default-features = false mitigates "RUSTSEC-2020-0071".
# See https://rustsec.org/advisories/RUSTSEC-2020-0071.html
chrono = { version = "0.4", default-features = false, features = ["serde", "clock"] }
config-file = "0.2"
csv = "1.3"
deep_causality = { git = "https://github.com/marvin-hansen/deep_causality.git", rev = "2a18217bd3f67ea965c67c7ba43935b6ba9c8365" }
encoding_rs = "0.8"
fluvio = { version = "0.21", default-features = false, features = ["rustls"] }
futures = "0.3"
lru = "0.12"
petgraph = "0.6"
proton_client = { version = "0.1" }
rayon = "1.8"
# default-features = false mitigates a warning of a yanked sub-sub dependency
# db-postgres enables type conversion from postgres numeric to rust native numeric
# https://stackoverflow.com/questions/72594101/how-to-parse-a-postgresql-numeric-type-to-rust-native-ones-upon-request
rust_decimal = { version = "1", default-features = false, features = ["serde", "db-postgres"] }
serde = { version = "1", features = ["derive"] }
tokio = { version = "1", features = ["macros", "net", "rt-multi-thread", "signal"] }
# proto / gRPC deps
prost = "0.12"
tonic-health = "0.11"
tonic = "0.11"
tonic-build = "0.11"
# Quest DB uses the postgres wire protocol for queries; hence both, the questdb-rs and sqlx crates
questdb-rs = { version = "3.1" }
sqlx = { version = "0.7", features = ["runtime-tokio", "postgres", "uuid", "chrono"] }
warp = { version = "0.3", features = ["multipart"] }
# Optimize all crates
[profile.release]
opt-level = 3
lto = true # Enable Link Time Optimization (LTO)
codegen-units = 1 # Reduce Parallel Code Generation Units to Increase Optimization
# There's a Cargo feature named profile-overrides
# that lets you override the optimization level of dependencies.
# https://docs.rust-embedded.org/book/unsorted/speed-vs-size.html
[profile.release.package."*"]
opt-level = 3
codegen-units = 1 # Reduce Parallel Code Generation Units to Increase Optimization