[package]
edition = "2024"
name = "haruspex"
version = "0.8.0"
authors = ["Marco Ivaldi <raptor@0xdeadbeef.info>"]
build = "build.rs"
exclude = [
".cargo/*",
".github/*",
".img/*",
"tests/*",
"ida-plugin.json",
"ida-plugin-stub.py",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Vulnerability research assistant that extracts pseudocode from IDA Hex-Rays decompiler."
homepage = "https://0xdeadbeef.info/"
documentation = "https://0xdeadbeef.info/haruspex/haruspex/"
readme = "README.md"
keywords = [
"reverse-engineering",
"binary-file",
"vuln-dev",
"ida",
"idalib",
]
categories = [
"security",
"command-line-utilities",
]
license = "MIT"
repository = "https://github.com/0xdea/haruspex"
[lib]
name = "haruspex"
path = "src/lib.rs"
[[bin]]
name = "haruspex"
path = "src/main.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.idalib]
version = "0.8"
[dependencies.thiserror]
version = "2.0"
[build-dependencies.idalib-build]
version = "0.8"
[lints.clippy]
allow_attributes = "warn"
allow_attributes_without_reason = "warn"
create_dir = "warn"
dbg_macro = "warn"
exhaustive_enums = "warn"
exhaustive_structs = "warn"
expect_used = "warn"
missing_assert_message = "warn"
missing_docs_in_private_items = "warn"
multiple_crate_versions = "allow"
multiple_inherent_impl = "warn"
multiple_unsafe_ops_per_block = "warn"
needless_raw_strings = "warn"
panic = "warn"
partial_pub_fields = "warn"
redundant_type_annotations = "warn"
renamed_function_params = "warn"
self_named_module_files = "warn"
semicolon_inside_block = "warn"
significant_drop_tightening = "allow"
str_to_string = "warn"
tests_outside_test_module = "warn"
todo = "warn"
undocumented_unsafe_blocks = "warn"
unimplemented = "warn"
unnecessary_safety_comment = "warn"
unnecessary_safety_doc = "warn"
unreachable = "warn"
unseparated_literal_suffix = "warn"
unused_trait_names = "warn"
unwrap_used = "warn"
verbose_file_reads = "warn"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.cargo]
level = "warn"
priority = -1
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust.missing_docs]
level = "warn"
priority = 0
[profile.dev]
debug = 0
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
strip = true