[package]
edition = "2024"
name = "syncopate"
version = "0.0.3"
authors = ["Zibi Braniecki <zibi@braniecki.net>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A hierarchical, power-aware task scheduler for Rust applications requiring precise timing control"
readme = "README.md"
categories = [
"asynchronous",
"concurrency",
"algorithms",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/zbraniecki/syncopate"
[features]
default = ["serde"]
serde = [
"dep:serde_crate",
"dep:serde_json",
]
[lib]
name = "syncopate"
path = "src/lib.rs"
[[example]]
name = "raw_tokio_interval"
path = "examples/raw_tokio_interval.rs"
[[example]]
name = "tokio_syncopate1"
path = "examples/tokio_syncopate1.rs"
[[example]]
name = "tokio_syncopate2"
path = "examples/tokio_syncopate2.rs"
[[example]]
name = "visualize"
path = "examples/visualize.rs"
[[test]]
name = "clock"
path = "tests/clock.rs"
[[test]]
name = "eviction"
path = "tests/eviction.rs"
[[test]]
name = "fixed_rate_vs_fixed_delay"
path = "tests/fixed_rate_vs_fixed_delay.rs"
[[test]]
name = "fixture_scenarios"
path = "tests/fixture_scenarios.rs"
[[test]]
name = "min_tick_interval"
path = "tests/min_tick_interval.rs"
[[test]]
name = "periodic_absolute"
path = "tests/periodic_absolute.rs"
[[test]]
name = "periodic_relative"
path = "tests/periodic_relative.rs"
[[bench]]
name = "scheduler"
path = "benches/scheduler.rs"
harness = false
[dependencies.serde_crate]
version = "1"
features = ["derive"]
optional = true
package = "serde"
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.thiserror]
version = "2"
[dev-dependencies.clap]
version = "4"
features = ["derive"]
[dev-dependencies.comfy-table]
version = "7"
[dev-dependencies.criterion]
version = "0.8"
[dev-dependencies.jiff]
version = "0.2"
[dev-dependencies.serde_json]
version = "1"
[dev-dependencies.tokio]
version = "1"
features = ["full"]