pluggable 0.1.0

A comprehensive, async plugin system for Rust applications with dependency management and security
Documentation
[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]
# Allow some clippy lints that may be overly strict for our use case
uninlined_format_args = "allow"
match_single_binding = "allow"

# Set reasonable thresholds for warnings
too_many_arguments = "warn"
cognitive_complexity = "warn"
type_complexity = "warn"