[package]
edition = "2024"
rust-version = "1.93"
name = "sigterm"
version = "0.3.10"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Signal-aware async control and cancellation primitives for Tokio."
readme = "README.md"
keywords = [
"signal",
"tokio",
"server",
"cancellation",
"graceful-shutdown",
]
categories = ["asynchronous"]
license = "MIT"
repository = "https://github.com/canmi21/sigterm.git"
[features]
cancel = ["dep:tokio-util"]
default = ["signal"]
full = [
"signal",
"sync",
"macros",
"rt",
"cancel",
"time",
"tracing",
]
macros = [
"dep:tokio",
"tokio/macros",
]
rt = [
"dep:tokio",
"tokio/rt",
]
signal = [
"dep:tokio",
"tokio/signal",
"tokio/macros",
"tokio/time",
]
sync = [
"dep:tokio",
"tokio/sync",
]
time = ["tokio/time"]
tokio-util = ["dep:tokio-util"]
tracing = ["dep:tracing"]
[lib]
name = "sigterm"
path = "src/lib.rs"
[[example]]
name = "broadcast"
path = "examples/broadcast.rs"
required-features = ["sync"]
[[example]]
name = "cancellation"
path = "examples/cancellation.rs"
required-features = ["cancel"]
[[example]]
name = "guard"
path = "examples/guard.rs"
required-features = ["cancel"]
[[example]]
name = "shutdown"
path = "examples/shutdown.rs"
required-features = ["sync"]
[[example]]
name = "shutdown_signal"
path = "examples/shutdown_signal.rs"
required-features = [
"cancel",
"signal",
]
[[example]]
name = "simple"
path = "examples/simple.rs"
[dependencies.tokio]
version = "1"
optional = true
default-features = false
[dependencies.tokio-util]
version = "0.7"
features = ["rt"]
optional = true
default-features = false
[dependencies.tracing]
version = "0.1"
optional = true
default-features = false
[dev-dependencies.tokio]
version = "1"
features = ["full"]