[package]
name = "everything-plugin"
version = "0.4.0"
edition = "2024"
description = "Rust binding for Everything's plugin SDK"
authors.workspace = true
homepage.workspace = true
repository.workspace = true
license.workspace = true
keywords.workspace = true
[features]
default = ["tracing", "serde", "winio"]
tracing = ["dep:tracing", "dep:tracing-subscriber", "dep:tracing-panic", "dep:anstream"]
tracing-appender = ["dep:tracing-appender"]
serde = ["dep:serde", "dep:serde_json"]
ui = ["dep:futures-channel", "dep:futures-util"]
winio = ["ui", "dep:winio"]
winio-07 = ["winio"]
winio-darkmode = ["winio/win32-dark-mode"]
rust-i18n = ["dep:rust-i18n"]
doc = ["dep:document-features"]
[dependencies]
anstream = { version = "0.6", optional = true }
bon = "3"
document-features = { version = "0.2", optional = true }
everything-ipc = { version = "0.1", path = "../everything-ipc" }
futures-channel = { version = "0.3", optional = true }
futures-util = { version = "0.3", optional = true }
rust-i18n = { version = "3", optional = true }
serde = { version = "1", features = ["derive"], optional = true }
serde_json = { version = "1", optional = true }
tracing = { version = "0.1", optional = true }
tracing-appender = { version = "0.2", optional = true }
tracing-panic = { version = "0.1.2", optional = true }
tracing-subscriber = { version = "0.3", optional = true }
windows-sys = { version = "0.59", features = [
"Win32_Globalization",
"Win32_System_SystemServices",
"Win32_UI_WindowsAndMessaging"
] }
[dependencies.winio]
version = ">=0.7.2,<0.11"
default-features = false
features = ["win32"]
optional = true
[dev-dependencies]
everything-plugin = { features = ["rust-i18n"], path = "." }
[[example]]
name = "test"
crate-type = ["cdylib"]
[[example]]
name = "basic"
crate-type = ["cdylib"]
[[example]]
name = "options"
crate-type = ["cdylib"]
[package.metadata.docs.rs]
targets = ["x86_64-pc-windows-msvc"]
features = ["tracing", "serde", "ui", "winio", "rust-i18n", "doc"]
rustdoc-args = ["--cfg", "docsrs"]