[package]
edition = "2024"
name = "evtx"
version = "0.11.2"
authors = ["Omer Ben-Amram <omerbenamram@gmail.com>"]
build = false
exclude = [
"**/*.evtx",
"**/*.dat",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A Fast (and safe) parser for the Windows XML Event Log (EVTX) format"
homepage = "https://github.com/omerbenamram/EVTX"
readme = "README.md"
license = "MIT/Apache-2.0"
repository = "https://github.com/omerbenamram/EVTX"
[features]
bench = []
default = [
"multithreading",
"evtx_dump",
]
evtx_dump = [
"simplelog",
"clap",
"dialoguer",
"indoc",
"anyhow",
"tempfile",
"wevt_templates",
]
fast-alloc = [
"tikv-jemallocator",
"rpmalloc",
]
multithreading = ["rayon"]
wevt_templates = [
"glob",
"goblin",
]
[lib]
name = "evtx"
path = "src/lib.rs"
[[bin]]
name = "bench_evtx_dump_loop"
path = "src/bin/bench_evtx_dump_loop.rs"
[[bin]]
name = "bench_tree_build"
path = "src/bin/bench_tree_build.rs"
[[bin]]
name = "bench_tree_build_direct"
path = "src/bin/bench_tree_build_direct.rs"
[[bin]]
name = "bench_utf16_escape_matrix"
path = "src/bin/bench_utf16_escape_matrix.rs"
[[bin]]
name = "evtx_dump"
path = "src/bin/evtx_dump.rs"
required-features = ["evtx_dump"]
[[test]]
name = "fixtures"
path = "tests/fixtures.rs"
[[test]]
name = "test_cli"
path = "tests/test_cli.rs"
[[test]]
name = "test_cli_interactive"
path = "tests/test_cli_interactive.rs"
[[test]]
name = "test_full_samples"
path = "tests/test_full_samples.rs"
[[test]]
name = "test_full_samples_streaming"
path = "tests/test_full_samples_streaming.rs"
[[test]]
name = "test_record_id_public"
path = "tests/test_record_id_public.rs"
[[test]]
name = "test_record_samples"
path = "tests/test_record_samples.rs"
[[test]]
name = "test_streaming_eventdata_aggregated"
path = "tests/test_streaming_eventdata_aggregated.rs"
[[test]]
name = "test_wevt_cache_fallback"
path = "tests/test_wevt_cache_fallback.rs"
[[test]]
name = "test_wevt_templates"
path = "tests/test_wevt_templates.rs"
[[bench]]
name = "benchmark"
path = "src/benches/benchmark.rs"
harness = false
[[bench]]
name = "json_text_content"
path = "src/benches/json_text_content.rs"
harness = false
required-features = ["bench"]
[[bench]]
name = "tree_build"
path = "src/benches/tree_build.rs"
harness = false
required-features = ["bench"]
[dependencies.ahash]
version = "0.8"
[dependencies.anyhow]
version = "1"
optional = true
[dependencies.bitflags]
version = "2"
[dependencies.bumpalo]
version = "3.19.1"
features = ["collections"]
[dependencies.byteorder]
version = "1"
[dependencies.clap]
version = "4"
optional = true
[dependencies.crc32fast]
version = "1"
[dependencies.dialoguer]
version = "0.12"
optional = true
[dependencies.encoding]
version = "0.2.33"
[dependencies.glob]
version = "0.3"
optional = true
[dependencies.goblin]
version = "0.10"
optional = true
[dependencies.indoc]
version = "2"
optional = true
[dependencies.jiff]
version = "0.2.17"
features = [
"logging",
"serde",
]
[dependencies.log]
version = "0.4.17"
features = ["release_max_level_debug"]
[dependencies.rayon]
version = "1"
optional = true
[dependencies.serde]
version = "1"
[dependencies.serde_json]
version = "1"
features = ["preserve_order"]
[dependencies.simplelog]
version = "0.12.0"
optional = true
[dependencies.sonic-rs]
version = "0.5.6"
[dependencies.tempfile]
version = "3.3.0"
optional = true
[dependencies.thiserror]
version = "2"
[dependencies.utf16-simd]
version = "0.1.0"
features = ["sonic-writeext"]
[dependencies.winstructs]
version = "0.3.0"
[dependencies.zmij]
version = "1.0.1"
[dev-dependencies.assert_cmd]
version = "2.1.1"
[dev-dependencies.criterion]
version = "0.8.1"
[dev-dependencies.env_logger]
version = "0.11.0"
[dev-dependencies.insta]
version = "1"
features = ["json"]
[dev-dependencies.predicates]
version = "3.1"
[dev-dependencies.pretty_assertions]
version = "1.2.1"
[dev-dependencies.tempfile]
version = "3.3.0"
[build-dependencies.skeptic]
version = "0.13.7"
[target.'cfg(not(target_os = "windows"))'.dev-dependencies.rexpect]
version = "0.6.0"
[target."cfg(not(windows))".dependencies.tikv-jemallocator]
version = "0.6.0"
optional = true
[target."cfg(windows)".dependencies.rpmalloc]
version = "0.2.2"
optional = true
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1