one_collect 0.1.34811

Cross-platform library for capturing machine-level traces.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "one_collect"
version = "0.1.34811"
build = false
exclude = [
    "UnitTest.pprof",
    "test_assets/stack_gen/**",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Cross-platform library for capturing machine-level traces."
homepage = "https://github.com/microsoft/one-collect"
documentation = "https://docs.rs/one_collect"
readme = "README.md"
keywords = [
    "profiling",
    "perf_events",
    "etw",
    "tracing",
    "observability",
]
categories = [
    "development-tools::profiling",
    "development-tools::debugging",
    "os::linux-apis",
    "os::windows-apis",
]
license = "MIT"
repository = "https://github.com/microsoft/one-collect"

[features]
default = ["scripting"]
scripting = []

[lib]
name = "one_collect"
path = "src/lib.rs"

[[example]]
name = "perf_bpf"
path = "examples/perf_bpf.rs"

[[example]]
name = "perf_cpu"
path = "examples/perf_cpu.rs"

[[example]]
name = "perf_export"
path = "examples/perf_export.rs"

[[example]]
name = "perf_switch"
path = "examples/perf_switch.rs"

[[example]]
name = "uprobe_allocs"
path = "examples/uprobe_allocs.rs"

[[test]]
name = "etw_tdh_integration"
path = "tests/etw_tdh_integration.rs"

[[bench]]
name = "event"
path = "benches/event.rs"
harness = false

[[bench]]
name = "export"
path = "benches/export.rs"
harness = false

[[bench]]
name = "intern"
path = "benches/intern.rs"
harness = false

[[bench]]
name = "kallsyms"
path = "benches/kallsyms.rs"
harness = false

[dependencies.anyhow]
version = "1.0.75"

[dependencies.chrono]
version = "0.4.39"

[dependencies.cpp_demangle]
version = "0.4.3"

[dependencies.flate2]
version = "1.0.31"

[dependencies.protobuf]
version = "3.7.*"

[dependencies.rhai]
version = "1.21.0"

[dependencies.rustc-demangle]
version = "0.1"

[dependencies.sha1]
version = "0.10.6"

[dependencies.tracing]
version = "0.1"

[dependencies.twox-hash]
version = "1.6.3"

[dependencies.windows-sys]
version = "0.59"
features = [
    "Win32_Foundation",
    "Win32_System_Diagnostics_Etw",
]

[dev-dependencies.criterion]
version = "0.3"

[target.'cfg(target_os = "linux")'.dependencies.libc]
version = "0.2.153"

[target.'cfg(target_os = "windows")'.dependencies.winreg]
version = "0.55.0"

[target.'cfg(target_os = "windows")'.dev-dependencies.tracelogging]
version = "1.2"

[target.'cfg(target_os = "windows")'.dev-dependencies.tracelogging_dynamic]
version = "1.2"

[lints.clippy]
absurd_extreme_comparisons = "deny"
almost_swapped = "deny"
approx_constant = "deny"
async_yields_async = "deny"
bad_bit_mask = "deny"
cast_slice_different_sizes = "deny"
deprecated_semver = "deny"
derive_ord_xor_partial_ord = "deny"
derived_hash_with_manual_eq = "deny"
eager_transmute = "deny"
enum_clike_unportable_variant = "deny"
eq_op = "deny"
erasing_op = "deny"
if_let_mutex = "deny"
ifs_same_cond = "deny"
impl_hash_borrow_with_str_and_bytes = "deny"
impossible_comparisons = "deny"
ineffective_bit_mask = "deny"
inherent_to_string_shadow_display = "deny"
inline_fn_without_body = "deny"
invalid_null_arguments = "deny"
invisible_characters = "deny"
iter_next_loop = "deny"
iter_skip_zero = "deny"
iterator_step_by_zero = "deny"
let_underscore_lock = "deny"
lint_groups_priority = "deny"
match_str_case_mismatch = "deny"
mem_replace_with_uninit = "deny"
min_max = "deny"
mistyped_literal_suffixes = "deny"
modulo_one = "deny"
mut_from_ref = "deny"
never_loop = "deny"
non_octal_unix_permissions = "deny"
nonsensical_open_options = "deny"
not_unsafe_ptr_arg_deref = "deny"
option_env_unwrap = "deny"
out_of_bounds_indexing = "deny"
overly_complex_bool_expr = "deny"
panicking_unwrap = "deny"
possible_missing_comma = "deny"
read_line_without_trim = "deny"
recursive_format_impl = "deny"
redundant_comparisons = "deny"
redundant_locals = "deny"
reversed_empty_ranges = "deny"
self_assignment = "deny"
serde_api_misuse = "deny"
size_of_in_element_count = "deny"
suspicious_splitn = "deny"
transmute_null_to_fn = "deny"
transmuting_null = "deny"
uninit_assumed_init = "deny"
uninit_vec = "deny"
unit_cmp = "deny"
unit_hash = "deny"
unit_return_expecting_ord = "deny"
unpredictable_function_pointer_comparisons = "deny"
unsound_collection_transmute = "deny"
unused_io_amount = "deny"
useless_attribute = "deny"
vec_resize_to_zero = "deny"
while_immutable_condition = "deny"
wrong_transmute = "deny"
zst_offset = "deny"

[lints.rust]
unreachable_pub = "deny"