60 lines
1.6 KiB
TOML
60 lines
1.6 KiB
TOML
[workspace]
|
|
members = ["dagx-macros"]
|
|
|
|
[package]
|
|
name = "dagx"
|
|
version = "0.3.1"
|
|
edition = "2021"
|
|
rust-version = "1.81"
|
|
authors = ["Stephen Waits <steve@waits.net>"]
|
|
license = "MIT"
|
|
description = "A minimal, type-safe, runtime-agnostic async DAG (Directed Acyclic Graph) executor with compile-time cycle prevention and true parallel execution"
|
|
repository = "https://github.com/swaits/dagx"
|
|
homepage = "https://github.com/swaits/dagx"
|
|
documentation = "https://docs.rs/dagx"
|
|
readme = "README.md"
|
|
keywords = ["dag", "async", "task", "parallel", "executor"]
|
|
categories = ["asynchronous", "concurrency", "data-structures"]
|
|
exclude = [".claude/", ".jj/", "dagx-spec.md"]
|
|
|
|
[features]
|
|
default = []
|
|
tracing = ["dep:tracing"]
|
|
|
|
[lints.rust]
|
|
unexpected_cfgs = { level = "warn", check-cfg = [
|
|
'cfg(tarpaulin)',
|
|
'cfg(tarpaulin_include)',
|
|
] }
|
|
|
|
[dependencies]
|
|
futures = "0.3"
|
|
parking_lot = "0.12"
|
|
dagx-macros = { version = "0.3.1", path = "./dagx-macros" }
|
|
tracing = { version = "0.1", optional = true }
|
|
dashmap = "6.1.0"
|
|
|
|
[dev-dependencies]
|
|
tokio = { version = "1", features = [
|
|
"macros",
|
|
"rt-multi-thread",
|
|
"time",
|
|
"sync",
|
|
] }
|
|
async-std = { version = "1", features = ["attributes"] }
|
|
smol = "2"
|
|
criterion = "0.7"
|
|
# Quirky async runtimes for edge-case testing
|
|
async-executor = "1.13"
|
|
pollster = "0.4"
|
|
futures-executor = { version = "0.3", features = ["thread-pool"] }
|
|
# Comparison benchmarks
|
|
dagrs = { version = "0.5", default-features = false }
|
|
async-trait = "0.1"
|
|
# Tracing support for tests and examples
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
|
|
|
|
[[bench]]
|
|
name = "dagx_bench"
|
|
harness = false
|