-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathCargo.toml
More file actions
88 lines (78 loc) · 3.31 KB
/
Copy pathCargo.toml
File metadata and controls
88 lines (78 loc) · 3.31 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
[package]
name = "libdd-crashtracker"
description = "Detects program crashes and reports them to datadog backend."
homepage = "https://github.com/DataDog/libdatadog/tree/main/libdd-crashtracker"
repository = "https://github.com/DataDog/libdatadog/tree/main/libdd-crashtracker"
edition.workspace = true
version = "1.0.0"
rust-version.workspace = true
license.workspace = true
autobenches = false
[lib]
crate-type = ["lib", "staticlib"]
bench = false
[[bin]]
name = "crashtracker-receiver"
path = "src/bin/crashtracker_receiver.rs"
bench = false
[[bench]]
name = "main"
harness = false
path = "benches/main.rs"
[features]
default = ["collector", "receiver", "collector_windows"]
# Enables the in-process collection of crash-info
collector = []
# Enables the use of this library to receiver crash-info from a suitable collector
receiver = []
# Enables the collection of crash-info on Windows
collector_windows = []
generate-unit-test-files = []
# Enables benchmark functionality
benchmarking = ["generate-unit-test-files"]
# Enables C++ bindings via cxx
cxx = ["dep:cxx", "dep:cxx-build"]
[target.'cfg(unix)'.dependencies]
# Should be kept in sync with the libdatadog symbolizer crate (also using blasesym)
blazesym = "=0.2.3"
[target.'cfg(target_os = "linux")'.dependencies]
libdd-libunwind-sys = { version = "1.0.2" }
[dependencies]
anyhow = "1.0"
chrono = {version = "0.4", default-features = false, features = ["std", "clock", "serde"]}
cxx = { version = "1.0", optional = true }
errno = "0.3"
libdd-common = { version = "4.1.0", path = "../libdd-common" }
libdd-telemetry = { version = "5.0.0", path = "../libdd-telemetry" }
http = "1.1"
libc = "0.2"
nix = { version = "0.29", features = ["poll", "signal", "socket"] }
num-derive = "0.4.2"
num-traits = "0.2.19"
os_info = "3.14.0"
page_size = "0.6.0"
portable-atomic = { version = "1.6.0", features = ["serde"] }
rand = "0.8.5"
schemars = "0.8.21"
serde = {version = "1.0", features = ["derive"]}
serde_json = {version = "1.0"}
symbolic-demangle = { version = "12.8.0", default-features = false, features = ["rust", "cpp", "msvc"] }
symbolic-common = { version = "12.8.0", default-features = false }
tokio = { version = "1.23", features = ["rt", "macros", "io-std", "io-util"] }
uuid = { version = "1.4.1", features = ["v4", "serde"] }
thiserror = "1.0"
[target.'cfg(windows)'.dependencies]
windows = { version = "0.59.0", features = ["Win32_System_Diagnostics_Debug", "Win32_System_Diagnostics_ToolHelp", "Win32_System_ErrorReporting", "Win32_System_Kernel", "Win32_System_ProcessStatus", "Win32_System_Registry", "Win32_System_SystemInformation", "Win32_System_SystemServices", "Win32_System_Threading", "Win32_Security"] }
[dev-dependencies]
criterion = { version = "0.5.1" }
goblin = "0.9.3"
tempfile = { version = "3.13" }
[build-dependencies]
# If we use a newer version of cc, CI fails on alpine.
cc = "1.1.31"
cxx-build = { version = "1.0", optional = true }
# Use default-features = false to avoid pulling in the `https` feature (rustls/aws-lc-rs/aws-lc-sys)
# in the build-script context. The build script only needs cc_utils, which has no TLS dependency.
# Without this, aws-lc-sys gets compiled twice: once for the normal dep graph and once for the
# build-script dep graph (Cargo resolver v2 keeps these contexts separate).
libdd-common = { version = "4.1.0", path = "../libdd-common", default-features = false }