[package]
name = "mysql-handler"
version.workspace = true
description = "Rust bindings for the MySQL handler"
readme = "README.md"
authors = ["ren-yamanashi"]
license = "GPL-2.0-only"
edition = "2024"
repository = "https://github.com/ren-yamanashi/rusty_mysql_handler"
homepage = "https://github.com/ren-yamanashi/rusty_mysql_handler"
documentation = "https://docs.rs/mysql-handler"
keywords = ["mysql", "ffi", "plugin", "storage-engine", "handler"]
categories = ["api-bindings", "database", "external-ffi-bindings"]
rust-version = "1.85"
links = "ha_rusty_shim"
include = [
"/src/**/*.rs",
"/shim/**/*.cc",
"/shim/**/*.hpp",
"/shim/**/*.h",
"/shim/CMakeLists.txt",
"/build.rs",
"/Cargo.toml",
"/README.md",
"/LICENSE",
]
[package.metadata.docs.rs]
rustdoc-args = ["--cfg", "docsrs"]
[workspace]
members = ["examples/engine", "mysql-handler-build", "mysql-handler-macros"]
[workspace.package]
version = "0.1.1"
[dependencies]
mysql-handler-macros = { path = "mysql-handler-macros", version = "0.1.1" }
tracing = "0.1.41"
[build-dependencies]
bindgen = "0.71.1"
cmake = "0.1.58"
flate2 = "1.1.9"
[dev-dependencies]
criterion = "0.7"
[[bench]]
name = "ffi_overhead"
harness = false
[[bench]]
name = "callback_overhead"
harness = false
[lints]
workspace = true
[workspace.lints.rust]
unsafe_op_in_unsafe_fn = "deny"
unsafe_code = "warn"
missing_debug_implementations = "warn"
missing_docs = "warn"
unreachable_pub = "warn"
unused_qualifications = "warn"
[workspace.lints.clippy]
all = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
module_name_repetitions = "allow"
must_use_candidate = "allow"
doc_markdown = "allow"
missing_panics_doc = "allow"
single_match_else = "allow"
manual_let_else = "allow"
undocumented_unsafe_blocks = "deny"
redundant_pub_crate = "warn"
[profile.release]
lto = true
codegen-units = 1
panic = "unwind"