[package] name = "asynchronix" # When incrementing version and releasing to crates.io: # - Update crate version in this Cargo.toml # - Update crate version in README.md # - Update CHANGELOG.md # - Update if necessary copyright notice in LICENSE-MIT # - Create a "vX.Y.Z" git tag authors = ["Serge Barral "] version = "0.2.2" edition = "2021" rust-version = "1.77.0" license = "MIT OR Apache-2.0" repository = "https://github.com/asynchronics/asynchronix" readme = "../README.md" description = """ A high performance asychronous compute framework for system simulation. """ categories = ["simulation", "aerospace", "science"] keywords = ["simulation", "discrete-event", "systems", "cyberphysical", "real-time"] autotests = false [features] # Remote procedure call API. rpc = ["dep:rmp-serde", "dep:serde", "dep:tonic", "dep:prost", "dep:prost-types", "dep:bytes"] # This feature forces protobuf/gRPC code (re-)generation. rpc-codegen = ["dep:tonic-build"] # gRPC server. grpc-server = ["rpc", "dep:tokio"] # API-unstable public exports meant for external test/benchmarking; development only. dev-hooks = [] # Logging of performance-related statistics; development only. dev-logs = [] [dependencies] # Mandatory dependencies. async-event = "0.1" crossbeam-utils = "0.8" diatomic-waker = "0.1" dyn-clone = "1.0" futures-channel = "0.3" futures-task = "0.3" multishot = "0.3.2" num_cpus = "1.13" pin-project-lite = "0.2" recycle-box = "0.2" slab = "0.4" spin_sleep = "1" st3 = "0.4" tai-time = "0.3" # Common RPC dependencies. bytes = { version = "1", default-features = false, optional = true } prost = { version = "0.12", optional = true } prost-types = { version = "0.12", optional = true } rmp-serde = { version = "1.1", optional = true } serde = { version = "1", optional = true } # gRPC dependencies. tokio = { version = "1.0", features=["net"], optional = true } tonic = { version = "0.11", optional = true } [target.'cfg(asynchronix_loom)'.dependencies] loom = "0.5" waker-fn = "1.1" [dev-dependencies] futures-util = "0.3" futures-executor = "0.3" [build-dependencies] tonic-build = { version = "0.11", optional = true } [[test]] name = "integration" path = "tests/tests.rs"