[package]
edition = "2021"
name = "innodb-utils"
version = "5.2.0"
build = "build.rs"
exclude = [
".env",
".DS_Store",
"Dockerfile",
"IdbHelpers/",
"*.ibd",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "InnoDB file analysis toolkit"
homepage = "https://github.com/ringo380/idb-utils"
readme = "README.md"
keywords = [
"innodb",
"mysql",
"database",
"ibd",
"forensics",
]
categories = [
"command-line-utilities",
"database",
]
license = "MIT"
repository = "https://github.com/ringo380/idb-utils"
[package.metadata.wasm-pack.profile.release]
wasm-opt = false
[package.metadata.deb]
maintainer = "Ryan Robson <ryan@ringo380.com>"
copyright = "2026, Ryan Robson"
extended-description = "InnoDB file analysis toolkit for parsing, validating, and inspecting MySQL/InnoDB tablespace files (.ibd), redo logs, and system tablespaces."
section = "database"
priority = "optional"
assets = [
[
"target/release/inno",
"usr/bin/",
"755",
],
[
"README.md",
"usr/share/doc/innodb-utils/",
"644",
],
[
"LICENSE",
"usr/share/doc/innodb-utils/",
"644",
],
[
"target/release/build/innodb-utils-*/out/completions/inno.bash",
"usr/share/bash-completion/completions/inno",
"644",
],
[
"target/release/build/innodb-utils-*/out/completions/_inno",
"usr/share/zsh/vendor-completions/",
"644",
],
[
"target/release/build/innodb-utils-*/out/completions/inno.fish",
"usr/share/fish/vendor_completions.d/",
"644",
],
]
[[package.metadata.generate-rpm.assets]]
source = "target/release/inno"
dest = "/usr/bin/inno"
mode = "755"
[[package.metadata.generate-rpm.assets]]
source = "README.md"
dest = "/usr/share/doc/innodb-utils/README.md"
mode = "644"
[[package.metadata.generate-rpm.assets]]
source = "LICENSE"
dest = "/usr/share/doc/innodb-utils/LICENSE"
mode = "644"
[[package.metadata.generate-rpm.assets]]
source = "target/release/build/innodb-utils-*/out/completions/inno.bash"
dest = "/usr/share/bash-completion/completions/inno"
mode = "644"
[[package.metadata.generate-rpm.assets]]
source = "target/release/build/innodb-utils-*/out/completions/_inno"
dest = "/usr/share/zsh/vendor-completions/_inno"
mode = "644"
[[package.metadata.generate-rpm.assets]]
source = "target/release/build/innodb-utils-*/out/completions/inno.fish"
dest = "/usr/share/fish/vendor_completions.d/inno.fish"
mode = "644"
[package.metadata.docs.rs]
all-features = true
[features]
cli = [
"dep:clap",
"dep:colored",
"dep:indicatif",
"dep:ctrlc",
"dep:chrono",
"dep:rand",
"dep:rayon",
"dep:memmap2",
"dep:fs2",
"dep:clap_complete",
]
default = ["cli"]
mysql = [
"dep:mysql_async",
"dep:tokio",
"cli",
]
[lib]
name = "idb"
crate-type = [
"cdylib",
"rlib",
]
path = "src/lib.rs"
[[bin]]
name = "inno"
path = "src/main.rs"
required-features = ["cli"]
[[test]]
name = "audit_test"
path = "tests/audit_test.rs"
[[test]]
name = "compat_test"
path = "tests/compat_test.rs"
[[test]]
name = "completions_test"
path = "tests/completions_test.rs"
[[test]]
name = "comply_test"
path = "tests/comply_test.rs"
[[test]]
name = "correlate_test"
path = "tests/correlate_test.rs"
[[test]]
name = "defrag_test"
path = "tests/defrag_test.rs"
[[test]]
name = "diff_test"
path = "tests/diff_test.rs"
[[test]]
name = "encryption_test"
path = "tests/encryption_test.rs"
[[test]]
name = "export_test"
path = "tests/export_test.rs"
[[test]]
name = "find_test"
path = "tests/find_test.rs"
[[test]]
name = "health_test"
path = "tests/health_test.rs"
[[test]]
name = "integration_test"
path = "tests/integration_test.rs"
[[test]]
name = "mariadb_test"
path = "tests/mariadb_test.rs"
[[test]]
name = "rebuild_test"
path = "tests/rebuild_test.rs"
[[test]]
name = "repair_test"
path = "tests/repair_test.rs"
[[test]]
name = "timeline_test"
path = "tests/timeline_test.rs"
[[test]]
name = "transplant_test"
path = "tests/transplant_test.rs"
[[test]]
name = "verify_test"
path = "tests/verify_test.rs"
[[test]]
name = "watch_test"
path = "tests/watch_test.rs"
[[test]]
name = "write_ops_edge_test"
path = "tests/write_ops_edge_test.rs"
[[bench]]
name = "benchmarks"
path = "benches/benchmarks.rs"
harness = false
[dependencies.aes]
version = "0.8"
[dependencies.byteorder]
version = "1"
[dependencies.cbc]
version = "0.1"
[dependencies.chrono]
version = "0.4"
optional = true
[dependencies.clap]
version = "4"
features = ["derive"]
optional = true
[dependencies.clap_complete]
version = "4"
optional = true
[dependencies.colored]
version = "3"
optional = true
[dependencies.crc32c]
version = "0.6"
[dependencies.ctrlc]
version = "3"
optional = true
[dependencies.ecb]
version = "0.1"
[dependencies.flate2]
version = "1"
[dependencies.fs2]
version = "0.4"
optional = true
[dependencies.indicatif]
version = "0.18"
optional = true
[dependencies.lz4_flex]
version = "0.13"
[dependencies.memmap2]
version = "0.9"
optional = true
[dependencies.mysql_async]
version = "0.36"
optional = true
[dependencies.rand]
version = "0.10"
optional = true
[dependencies.rayon]
version = "1"
optional = true
[dependencies.ruzstd]
version = "0.8"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.sha2]
version = "0.10"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
]
optional = true
[dev-dependencies.byteorder]
version = "1"
[dev-dependencies.clap_complete]
version = "4"
[dev-dependencies.crc32c]
version = "0.6"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.rayon]
version = "1"
[dev-dependencies.tempfile]
version = "3"
[build-dependencies.clap]
version = "4"
features = ["derive"]
[build-dependencies.clap_complete]
version = "4"
[build-dependencies.clap_mangen]
version = "0.2"
[target.'cfg(target_arch = "wasm32")'.dependencies.js-sys]
version = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "0.2"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
strip = true