[package]
name = "crashreporter"
version = "1.0.0"
edition = "2021"

[[bin]]
name = "crashreporter"

[dependencies]
anyhow = "1.0"
buildid_reader = { path = "../../../library/buildid_reader" }
cfg-if = "1.0"
crashping = { path = "../../crashping" }
env_logger = { version = "0.10", default-features = false }
flate2 = "1"
fluent = "0.17.0"
glean = { workspace = true }
intl-memoizer = "0.5"
libloading = "0.8"
log = "0.4.17"
memtest = { version = "0.4.0", git = "https://github.com/mozilla/memtest", rev = "ad681ba425beb0aeba95f03e671432b4be932174" }
minidump-analyzer = { path = "../../minidump-analyzer" }
mozbuild = "0.1"
mozilla-central-workspace-hack = { version = "0.1", features = ["crashreporter"], optional = true }
once_cell = "1"
phf = "0.13"
rand = "0.8.5"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
sha2 = "^0.10.7"
sys-locale = "0.3"
time = { version = "0.3", features = ["formatting", "macros", "serde"] }
unic-langid = { version = "0.9.6" }
uuid = { version = "1", features = ["v4", "serde"] }
zip = { version = "2.1.2", default-features = false }

[target."cfg(target_os = \"macos\")".dependencies]
block = "0.1"
cocoa = { package = "cocoabind", path = "../cocoabind" }
objc = "0.2"

[target."cfg(target_os = \"linux\")".dependencies]
gtk = { package = "gtkbind", path = "../gtkbind" }

[target."cfg(target_os = \"windows\")".dependencies.windows-sys]
version = "0.61"
features = [
    "Win32_Foundation",
    "Win32_Globalization",
    "Win32_Graphics_Gdi",
    "Win32_System_Com",
    "Win32_System_LibraryLoader",
    "Win32_System_Registry",
    "Win32_System_SystemServices",
    "Win32_System_Threading",
    "Win32_UI_Controls",
    "Win32_UI_HiDpi",
    "Win32_UI_Input_KeyboardAndMouse",
    "Win32_UI_Shell",
    "Win32_UI_WindowsAndMessaging"
]

[features]
# Required for tests
mock = []

[build-dependencies]
bindgen = { version = "0.69", default-features = false, features = ["runtime"] }
embed-manifest = "1.4"
mozbuild = "0.1"
phf_codegen = "0.13"
yaml-rust = { version = "0.10", package = "yaml-rust2" }

[dev-dependencies]
bytes = "1.4"
tokio = { version = "1.29", features = ["rt", "net", "time", "sync"] }
warp = { version = "0.4.2", default-features = false, features = ["server"] }
