[package]
edition = "2021"
rust-version = "1.88"
name = "cmtrace-open"
version = "1.5.0"
authors = ["Adam Gell"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Free, open-source CMTrace replacement: Windows log viewer with ConfigMgr/SCCM, Intune, and Autopilot ESP diagnostics, DSRegCmd triage, and real-time tailing."
homepage = "https://cmtraceopen.com"
readme = "README.md"
keywords = [
"cmtrace",
"log-viewer",
"sccm",
"intune",
"tauri",
]
categories = [
"gui",
"development-tools::debugging",
"os::windows-apis",
]
license = "MIT"
repository = "https://github.com/adamgell/cmtraceopen"
[features]
collector = []
default = ["full"]
deployment = []
dsregcmd = ["intune-diagnostics"]
esp-diagnostics = [
"intune-diagnostics",
"dep:cab",
"dep:tempfile",
"dep:zip",
]
event-log = ["dep:evtx"]
full = [
"collector",
"deployment",
"dsregcmd",
"esp-diagnostics",
"event-log",
"intune-diagnostics",
"macos-diag",
"secureboot",
"sysmon",
]
intune-diagnostics = [
"dep:evtx",
"dep:quick-xml",
]
macos-diag = ["dep:plist"]
secureboot = ["dep:tempfile"]
sysmon = ["dep:evtx"]
[lib]
name = "app_lib"
crate-type = [
"staticlib",
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[bin]]
name = "cmtrace-open"
path = "src/main.rs"
[[example]]
name = "profile_folder"
path = "examples/profile_folder.rs"
[[test]]
name = "bench_parse"
path = "tests/bench_parse.rs"
[[test]]
name = "ccm_psadt_success"
path = "tests/ccm_psadt_success.rs"
[[test]]
name = "cmtlog_parser"
path = "tests/cmtlog_parser.rs"
[[test]]
name = "dns_audit_real"
path = "tests/dns_audit_real.rs"
[[test]]
name = "dns_debug_real"
path = "tests/dns_debug_real.rs"
[[test]]
name = "esp_diagnostics_sources"
path = "tests/esp_diagnostics_sources.rs"
required-features = ["esp-diagnostics"]
[[test]]
name = "graph_esp_diagnostics"
path = "tests/graph_esp_diagnostics.rs"
[[test]]
name = "parser_expanded_corpus"
path = "tests/parser_expanded_corpus.rs"
[[test]]
name = "parser_regression_corpus"
path = "tests/parser_regression_corpus.rs"
[[test]]
name = "security_dependencies"
path = "tests/security_dependencies.rs"
[[test]]
name = "sysmon_parser"
path = "tests/sysmon_parser.rs"
required-features = ["sysmon"]
[[test]]
name = "timeline_integration"
path = "tests/timeline_integration.rs"
[[bench]]
name = "intune_pipeline"
path = "benches/intune_pipeline.rs"
harness = false
required-features = ["intune-diagnostics"]
[[bench]]
name = "timeline"
path = "benches/timeline.rs"
harness = false
[dependencies.anyhow]
version = "1"
[dependencies.base64]
version = "0.23"
[dependencies.cab]
version = "=0.6.0"
optional = true
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.cmtraceopen-parser]
version = "0.1"
[dependencies.encoding_rs]
version = "0.8"
[dependencies.evtx]
version = "=0.12.2"
optional = true
[dependencies.font-kit]
version = "0.14"
[dependencies.glob]
version = "0.3"
[dependencies.log]
version = "0.4"
[dependencies.notify]
version = "8"
[dependencies.quick-xml]
version = "0.38"
optional = true
[dependencies.rayon]
version = "1.10"
[dependencies.regex]
version = "1"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.11"
[dependencies.tauri]
version = "2"
features = []
[dependencies.tauri-plugin-clipboard-manager]
version = "2"
[dependencies.tauri-plugin-dialog]
version = "2"
[dependencies.tauri-plugin-fs]
version = "2"
[dependencies.tauri-plugin-log]
version = "2"
[dependencies.tauri-plugin-os]
version = "2"
[dependencies.tauri-plugin-process]
version = "2"
[dependencies.tauri-plugin-updater]
version = "2"
[dependencies.tempfile]
version = "3"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.time]
version = "0.3.47"
features = ["parsing"]
default-features = false
[dependencies.tokio]
version = "1"
features = [
"fs",
"io-util",
"sync",
"rt",
"net",
]
[dependencies.uuid]
version = "1"
features = ["v4"]
[dependencies.zip]
version = "=4.2.0"
features = ["deflate"]
optional = true
default-features = false
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.plist]
version = "1"
[dev-dependencies.tauri]
version = "2"
features = ["test"]
[dev-dependencies.tempfile]
version = "3"
[build-dependencies.tauri-build]
version = "2"
features = []
[target.'cfg(any(target_os = "macos", windows, target_os = "linux"))'.dependencies.tauri-plugin-window-state]
version = "2"
[target.'cfg(target_os = "macos")'.dependencies.plist]
version = "1"
optional = true
[target.'cfg(target_os = "windows")'.dependencies.ureq]
version = "=3.2.0"
[target.'cfg(target_os = "windows")'.dependencies.windows]
version = "=0.62.2"
features = [
"Win32_Foundation",
"Win32_NetworkManagement_NetManagement",
"Win32_Security_Cryptography",
"Win32_Security_Authorization",
"Win32_System_EventLog",
"Win32_Storage_FileSystem",
"Win32_Security",
"Win32_System_Com",
"Win32_System_Ole",
"Win32_System_Registry",
"Win32_System_SystemInformation",
"Win32_System_Threading",
"Win32_System_Variant",
"Win32_System_Wmi",
"Win32_UI_Shell",
"Win32_UI_WindowsAndMessaging",
"Security_Authentication_Web_Core",
"Security_Credentials",
"Foundation",
"Foundation_Collections",
"Win32_System_WinRT",
]
[target.'cfg(target_os = "windows")'.dependencies.windows-future]
version = "=0.3.2"
[target.'cfg(target_os = "windows")'.dependencies.winreg]
version = "0.56"
[target."cfg(unix)".dependencies.libc]
version = "0.2"