tosub 2.1.0

A subsystem lifecycle management library for tokio applications
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "tosub"
version = "2.1.0"
authors = ["Michael Bachmann <mbachmann@bbmsoft.net>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A subsystem lifecycle management library for tokio applications"
readme = "README.md"
keywords = [
    "async",
    "tokio",
    "subsystem",
    "task",
    "management",
]
categories = [
    "asynchronous",
    "rust-patterns",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/babymotte/tosub"

[lib]
name = "tosub"
path = "src/lib.rs"

[[example]]
name = "axum_web_server"
path = "examples/axum_web_server.rs"

[[example]]
name = "branch"
path = "examples/branch.rs"

[[example]]
name = "branch_error"
path = "examples/branch_error.rs"

[[example]]
name = "error"
path = "examples/error.rs"

[[example]]
name = "error_timeout"
path = "examples/error_timeout.rs"

[[example]]
name = "error_types"
path = "examples/error_types.rs"

[[example]]
name = "hello"
path = "examples/hello.rs"

[[example]]
name = "join"
path = "examples/join.rs"

[[example]]
name = "join_with_error"
path = "examples/join_with_error.rs"

[[example]]
name = "multiple_runtimes"
path = "examples/multiple_runtimes.rs"

[[example]]
name = "panic"
path = "examples/panic.rs"

[[example]]
name = "panic_short_lived_children"
path = "examples/panic_short_lived_children.rs"

[[example]]
name = "panic_timeout"
path = "examples/panic_timeout.rs"

[[example]]
name = "service_loop"
path = "examples/service_loop.rs"

[[example]]
name = "shutdown_on_stdin_close"
path = "examples/shutdown_on_stdin_close.rs"

[[example]]
name = "signal"
path = "examples/signal.rs"

[[example]]
name = "signal_timeout"
path = "examples/signal_timeout.rs"

[[example]]
name = "simple"
path = "examples/simple.rs"

[[example]]
name = "spawn_after_shutdown"
path = "examples/spawn_after_shutdown.rs"

[[example]]
name = "stdin"
path = "examples/stdin.rs"

[dependencies.miette]
version = "7.6.0"

[dependencies.thiserror]
version = "2.0.20"

[dependencies.tokio]
version = "1.53.1"
features = [
    "rt",
    "time",
    "signal",
    "macros",
]

[dependencies.tokio-util]
version = "0.7.19"

[dependencies.tracing]
version = "0.1.44"

[dev-dependencies.axum]
version = "0.8.9"

[dev-dependencies.miette]
version = "7.6.0"
features = ["fancy"]

[dev-dependencies.tokio]
version = "1.53.1"
features = ["full"]

[dev-dependencies.tracing-subscriber]
version = "0.3.23"
features = ["env-filter"]

[lints.clippy]
all = "deny"
enum_glob_use = "deny"
unwrap_used = "deny"

[lints.rust]
unsafe_code = "forbid"