[package]
name = "pluggable"
version = "0.1.0"
edition = "2021"
authors = ["Tomer Lichtash <tomerlichtash@gmail.com>"]
description = "A comprehensive, async plugin system for Rust applications with dependency management and security"
documentation = "https://docs.rs/pluggable"
homepage = "https://github.com/tomerlichtash/pluggable"
repository = "https://github.com/tomerlichtash/pluggable"
license = "MIT OR Apache-2.0"
readme = "README.md"
keywords = ["plugin", "async", "security", "extensible", "dependency"]
categories = ["development-tools", "asynchronous", "web-programming"]
exclude = [
"examples/*",
"benches/*",
".github/*",
"*.md",
"coverage/*"
]
[dependencies]
async-trait = "0.1"
inventory = "0.3"
petgraph = "0.6"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
toml = "0.8"
shellexpand = "3.1"
thiserror = "2.0"
tokio = { version = "1.0", features = ["rt", "rt-multi-thread", "macros", "fs", "sync", "time"] }
tempfile = "3.0"
log = "0.4"
env_logger = "0.11"
[[bin]]
name = "text_processor"
path = "examples/text_processor/main.rs"
[[example]]
name = "text_processor_testing"
path = "examples/text_processor/testing.rs"
[dev-dependencies]
tokio-test = "0.4"
chrono = { version = "0.4", features = ["serde"] }
criterion = { version = "0.5", features = ["html_reports"] }
mockall = "0.13"
log = "0.4"
env_logger = "0.11"
[lints.clippy]
uninlined_format_args = "allow"
match_single_binding = "allow"
too_many_arguments = "warn"
cognitive_complexity = "warn"
type_complexity = "warn"