forked from sonic-net/sonic-swss
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
100 lines (85 loc) · 2.74 KB
/
Cargo.toml
File metadata and controls
100 lines (85 loc) · 2.74 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
[workspace]
resolver = '2'
members = [
"crates/countersyncd",
]
exclude = []
[workspace.package]
version = "0.1.0"
authors = ["SONiC"]
license = "Apache-2.0"
repository = "https://github.com/sonic-net/sonic-swss"
documentation = "https://github.com/sonic-net/SONiC/tree/master/doc"
keywords = ["sonic", "swss", "network", "switch"]
edition = "2021"
[workspace.lints.rust]
unused_extern_crates = 'warn'
trivial_numeric_casts = 'warn'
unstable_features = 'warn'
unused_import_braces = 'warn'
[workspace.dependencies]
# Async runtime
tokio = { version = "1.37", features = ["full"] }
tokio-util = { version = "0.7", features = ["rt"] }
tokio-stream = "0.1"
# Using genetlink and netlink-packet-generic for netlink support
genetlink = "0.2"
netlink-packet-core = "0.7"
netlink-packet-generic = "0.3"
netlink-sys = "0.8"
# IPFIX parser for traffic flow analysis
ipfixrw = "0.1.0"
ahash = "0.8.11"
binrw = "0.15.0"
byteorder = "1.5.0"
# Configuration and serialization
yaml-rust = "0.4"
serde = { version = "1", features = ["derive", "rc"] }
serde_json = "1"
serde_yaml = "0.9"
# Logging and error handling
log = "0.4.22"
env_logger = "0.11.6"
tracing = { version = "0.1", features = ["log", "max_level_debug", "release_max_level_info"] }
tracing-subscriber = { version = "0.3", features = ["fmt", "env-filter", "serde"] }
thiserror = "1"
anyhow = "1"
chrono = { version = "0.4", features = ["serde"] }
# Command line utilities
clap = { version = "4", features = ["derive", "cargo", "wrap_help", "unicode", "string", "unstable-styles"] }
color-eyre = "0.6"
# Utilities
rand = "0.8.5"
once_cell = "1.18.0"
lazy_static = "1.4"
regex = "1"
dashmap = "6"
itertools = "0.13"
uuid = { version = "1.15", features = ["v4"] }
# OTEL
tracing-opentelemetry = "0.25"
opentelemetry = { version = "0.25", features = ["trace", "metrics"] }
opentelemetry_sdk = { version = "0.25", features = ["rt-tokio"]}
opentelemetry-stdout = "0.25"
opentelemetry-semantic-conventions = "0.25"
opentelemetry-http = "0.25"
opentelemetry-otlp = { version = "0.25", features = ["tonic", "metrics"] }
opentelemetry-proto = { version = "0.25", features = ["tonic", "metrics", "gen-tonic"] }
# gRPC and HTTP
tonic = "0.12"
tonic-health = "0.12"
prost = "0.13"
prost-types = "0.13"
reqwest = { version = "0.12", default-features = false, features = ["json"] }
reqwest-middleware = "0.3"
reqwest-tracing = { version = "0.5", features = ["opentelemetry_0_25"] }
# SONiC specific dependencies
swss-common = { git = "https://github.com/sonic-net/sonic-swss-common.git", branch = "master" }
# Development dependencies
tempfile = "3.12"
serial_test = "3.1"
async-trait = "0.1"
pretty_assertions = "1"
# Build dependencies
tonic-build = "0.12"
vergen = { version = "8.2", features = ["build", "git", "gitoxide", "cargo", "rustc", "si"] }