[dependencies.cortex-m]
features = ["inline-asm"]
optional = true
version = "0.7.6"
[dependencies.cortex-m-rt]
optional = true
version = "0.7.0"
[dependencies.critical-section]
optional = true
version = "1.2.0"
[dependencies.defmt]
optional = true
version = "0.3"
[dependencies.embassy-embedded-hal]
optional = true
version = "0.3.0"
[dependencies.embassy-executor]
optional = true
version = "0.7.0"
[dependencies.embassy-nrf]
optional = true
version = "0.3.1"
[dependencies.embassy-rp]
features = ["time-driver"]
optional = true
version = "0.4"
[dependencies.embassy-stm32]
optional = true
version = "0.2"
[dependencies.embassy-sync]
optional = true
version = "0.6"
[dependencies.embassy-time]
optional = true
version = "0.4"
[dependencies.embedded-hal]
optional = true
version = "1.0"
[dependencies.esp-backtrace]
optional = true
version = "0.15"
[dependencies.esp-hal]
optional = true
version = "1.0.0-beta.0"
[dependencies.esp-hal-embassy]
optional = true
version = "0.7"
[dependencies.portable-atomic]
features = ["critical-section"]
version = "1.10"
[dependencies.rp2040-hal]
optional = true
version = "0.11"
[dependencies.rp235x-hal]
optional = true
version = "0.3"
[features]
alloc = []
cortex-m = ["dep:cortex-m"]
default = []
defmt = ["dep:defmt"]
defmt-embassy = ["dep:defmt", "defmt", "embassy-executor/defmt", "embassy-sync/defmt", "embassy-time/defmt"]
defmt-embassy-esp32 = ["defmt-embassy", "esp-hal-embassy/defmt", "esp-hal/defmt"]
defmt-embassy-nrf = ["defmt-embassy", "embassy-nrf/defmt", "embassy-executor/executor-thread", "embassy-executor/executor-interrupt"]
defmt-embassy-rp = ["defmt-embassy", "embassy-rp/defmt", "embassy-executor/executor-thread", "embassy-executor/executor-interrupt"]
defmt-embassy-stm32 = ["defmt-embassy", "embassy-stm32/defmt", "embassy-executor/executor-thread", "embassy-executor/executor-interrupt"]
embassy = ["dep:embassy-sync", "dep:embassy-time", "dep:embassy-executor"]
embassy-common = ["embassy", "embassy-executor/arch-cortex-m", "cortex-m", "dep:cortex-m-rt"]
esp32-embassy = ["embassy", "dep:esp-hal-embassy", "dep:esp-hal", "esp-hal-embassy/esp32", "esp-hal/esp32", "esp-hal/unstable", "dep:critical-section"]
nrf-embassy = ["embassy-common", "dep:embassy-nrf", "embassy-nrf/time-driver-rtc1", "embassy-nrf/time"]
rp2040-embassy = ["embassy-common", "embassy-rp/rp2040"]
rp2040-hal = ["dep:rp2040-hal", "cortex-m", "dep:cortex-m-rt", "cortex-m/critical-section-single-core", "embedded-hal"]
rp2350-embassy = ["embassy-common", "embassy-rp/rp235xa"]
rp2350-hal = ["dep:rp235x-hal", "cortex-m", "dep:cortex-m-rt", "cortex-m/critical-section-single-core", "embedded-hal"]
stm32-embassy = ["embassy-common", "embassy-stm32"]
[lib]
name = "task_watchdog"
path = "src/lib.rs"
test = false
[package]
authors = ["Piers Finlayson <piers@piers.rocks"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["embedded", "no-std", "asynchronous", "hardware-support"]
description = "A robust, flexible watchdog management library for embedded systems that multiplexes multiple task watchdogs into a single hardware watchdog timer, preventing system lockups when tasks fail to respond"
documentation = "https://docs.rs/task-watchdog"
edition = "2021"
keywords = ["embedded", "watchdog", "embassy", "no_std", "embedded-hal"]
license = "MIT OR Apache-2.0"
name = "task-watchdog"
readme = "README.md"
repository = "https://github.com/piersfinlayson/task-watchdog"
version = "0.1.2"
[package.metadata.docs.rs]
features = ["rp2040-embassy", "defmt-embassy-rp", "rp2040-hal"]
targets = ["thumbv6m-none-eabi"]
[profile.dev]
opt-level = "s"
[profile.release]
debug = 2