forked from ROMEO/nexosim
81 lines
2.7 KiB
TOML
81 lines
2.7 KiB
TOML
[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 crate version in the lib.rs documentation of feature flags
|
|
# - Update dependency in sibling crates
|
|
# - Remove path dependencies
|
|
# - Update CHANGELOG.md
|
|
# - Update if necessary copyright notice in LICENSE-MIT
|
|
# - Create a "vX.Y.Z" git tag
|
|
authors = ["Serge Barral <serge.barral@asynchronics.com>"]
|
|
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"]
|
|
|
|
[features]
|
|
# gRPC service.
|
|
grpc = ["dep:bytes", "dep:ciborium", "dep:prost", "dep:prost-types", "dep:serde", "dep:tonic", "dep:tokio", "dep:tonic"]
|
|
tracing = ["dep:tracing", "dep:tracing-subscriber"]
|
|
|
|
# DEVELOPMENT ONLY: API-unstable public exports meant for external test/benchmarking.
|
|
dev-hooks = []
|
|
|
|
[dependencies]
|
|
# Mandatory dependencies.
|
|
async-event = "0.2.1"
|
|
crossbeam-utils = "0.8"
|
|
diatomic-waker = "0.2.3"
|
|
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.3"
|
|
|
|
# Optional dependencies.
|
|
bytes = { version = "1", default-features = false, optional = true }
|
|
ciborium = { version = "0.2.2", optional = true }
|
|
prost = { version = "0.13", optional = true }
|
|
prost-types = { version = "0.13", optional = true }
|
|
serde = { version = "1", optional = true }
|
|
tokio = { version = "1.0", features=["net", "rt-multi-thread"], optional = true }
|
|
tonic = { version = "0.12", default-features = false, features=["codegen", "prost", "server"], optional = true }
|
|
tracing = { version= "0.1.40", default-features = false, features=["std"], optional = true }
|
|
tracing-subscriber = { version= "0.3.18", optional = true }
|
|
|
|
[dev-dependencies]
|
|
futures-util = "0.3"
|
|
futures-executor = "0.3"
|
|
tracing-subscriber = { version= "0.3.18", features=["env-filter"] }
|
|
|
|
[target.'cfg(asynchronix_loom)'.dev-dependencies]
|
|
loom = "0.7"
|
|
waker-fn = "1.1"
|
|
|
|
[target.'cfg(asynchronix_grpc_codegen)'.build-dependencies]
|
|
tonic-build = { version = "0.12" }
|
|
|
|
[lints.rust]
|
|
# `asynchronix_loom` flag: run loom-based tests.
|
|
# `asynchronix_grpc_codegen` flag: regenerate gRPC code from .proto definitions.
|
|
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(asynchronix_loom)', 'cfg(asynchronix_grpc_codegen)'] }
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
rustdoc-args = ["--cfg", "docsrs"]
|