switchy_async 0.1.2

Switchy Async runtime package
Documentation
[package]
authors     = ["Braden Steffaniak"]
categories  = ["asynchronous"]
description = "Switchy Async runtime package"
edition     = "2024"
keywords    = ["async"]
license     = "MPL-2.0"
name        = "switchy_async"
readme      = "README.md"
repository  = "https://github.com/MoosicBox/MoosicBox"
version     = "0.1.2"

[package.metadata.workspaces]
group = "switchy"

[dependencies]
switchy_async_macros = { workspace = true, optional = true }
switchy_random       = { workspace = true, optional = true, features = ["rand"] }
switchy_time         = { workspace = true, optional = true, features = ["std"] }

log              = { workspace = true }
pin-project-lite = { workspace = true }
scoped-tls       = { workspace = true }
thiserror        = { workspace = true }

# Simulator
futures = { workspace = true, optional = true }

# Tokio
tokio      = { workspace = true, optional = true, features = ["rt"] }
tokio-util = { workspace = true, optional = true }

[features]
default = [
    "fs",
    "io",
    "macros",
    "net",
    "rt-multi-thread",
    "simulator",
    "sync",
    "time",
    "tokio",
    "util",
]

fail-on-warnings = []

_any_backend = []
simulator = [
    "_any_backend",
    "dep:futures",
    "dep:switchy_random",
    "dep:switchy_time",
    "dep:tokio",
    "switchy_async_macros/simulator",
]
tokio = ["_any_backend", "dep:futures", "dep:tokio", "dep:tokio-util"]

fs              = ["tokio?/fs"]
io              = ["tokio?/io-util"]
macros          = ["dep:switchy_async_macros", "tokio", "tokio?/macros"]
net             = ["tokio?/net"]
rt-multi-thread = ["tokio?/rt-multi-thread"]
sync            = ["tokio?/sync"]
time            = ["tokio?/time"]
util            = ["dep:tokio-util"]