forked from fujiapple852/trippy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
106 lines (95 loc) · 3.39 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
[package]
name = "trippy"
version = "0.10.0-dev"
authors = ["FujiApple <[email protected]>"]
description = "A network diagnostic tool"
documentation = "https://github.com/fujiapple852/trippy"
homepage = "https://github.com/fujiapple852/trippy"
repository = "https://github.com/fujiapple852/trippy"
keywords = ["cli", "tui", "traceroute", "ping", "icmp"]
categories = ["command-line-utilities", "network-programming"]
readme = "README.md"
license = "Apache-2.0"
edition = "2021"
rust-version = "1.70"
exclude = ["assets/legacy", "assets/*/*.png"]
[[bin]]
bench = false
path = "src/main.rs"
name = "trip"
[dependencies]
# Library dependencies
arrayvec = { version = "0.7.4", default-features = false }
derive_more = { version = "0.99.17", default-features = false, features = [ "mul", "add", "add_assign" ] }
socket2 = { version = "0.5.6", default-features = false }
thiserror = "1.0.57"
tracing = { version = "0.1.40", default-features = false }
# TUI dependencies
anyhow = "1.0.80"
dns-lookup = "2.0.4"
hickory-resolver = "0.24.0"
crossbeam = "0.8.4"
clap = { version = "~4.4.0", default-features = false, features = [ "cargo", "derive", "wrap_help", "usage", "unstable-styles" ] }
clap_complete = "~4.4.9"
humantime = "2.1.0"
parking_lot = "0.12.1"
ratatui = "0.26.1"
crossterm = { version = "0.27.0", default-features = false, features = [ "events", "windows" ] }
chrono = { version = "0.4.34", default-features = false, features = [ "clock" ] }
itertools = "0.12.1"
serde = { version = "1.0.197", default-features = false }
serde_json = { version = "1.0.114", default-features = false }
comfy-table = { version = "7.1.0", default-features = false }
strum = { version = "0.26.1", default-features = false, features = [ "std", "derive" ] }
etcetera = "0.8.0"
toml = { version = "0.8.10", default-features = false, features = [ "parse" ] }
indexmap = { version = "2.2.5", default-features = false }
maxminddb = "0.24.0"
tracing-subscriber = { version = "0.3.18", default-features = false, features = [ "json", "env-filter" ] }
tracing-chrome = "0.7.1"
petgraph = "0.6.4"
csv = "1.3.0"
serde_with = "3.6.1"
encoding_rs_io = "0.1.7"
bitflags = "2.4.2"
# Library dependencies (Linux)
[target.'cfg(target_os = "linux")'.dependencies]
caps = "0.5.5"
# Library dependencies (Unix)
[target.'cfg(unix)'.dependencies]
nix = { version = "0.28.0", default-features = false, features = [ "user", "poll", "net" ] }
# Library dependencies (Windows)
[target.'cfg(windows)'.dependencies]
paste = "1.0.14"
widestring = "1.0.2"
windows-sys = { version = "0.52.0", features = [
"Win32_Foundation",
"Win32_Networking_WinSock",
"Win32_System_IO",
"Win32_NetworkManagement_IpHelper",
"Win32_NetworkManagement_Ndis",
"Win32_System_IO",
"Win32_System_Threading",
"Win32_Security",
] }
[dev-dependencies]
hex-literal = "0.4.1"
pretty_assertions = "1.4.0"
rand = "0.8.5"
test-case = "3.3.1"
serde_yaml = "0.9.32"
tokio = { version = "1.36.0", features = [ "full" ] }
tokio-util = "0.7.10"
ipnetwork = "0.20.0"
mockall = "0.12.1"
# see https://github.com/meh/rust-tun/pull/74
[target.'cfg(any(target_os = "macos", target_os = "linux", target_os = "windows"))'.dev-dependencies]
tun2 = { version = "1.2.2", features = [ "async" ] }
[features]
# Enable simulation integration tests
sim-tests = []
# cargo-generate-rpm dependencies
[package.metadata.generate-rpm]
assets = [
{ source = "target/release/trip", dest = "/usr/bin/trip", mode = "755" },
]