apsis-rs/Cargo.toml

140 lines
4.8 KiB
TOML

# ApsisRS Rust workspace root.
#
# The workspace resolves without any external dependency so that the
# numerical kernels stay self-contained and auditable. Every member crate
# is unpublished.
#
# ApsisRS Rust 工作区根。
#
# 工作区在没有任何外部依赖的情况下解析,使各数值内核保持自包含且可
# 审计。每个成员 crate 都不发布。
[workspace]
resolver = "2"
members = [
# foundation / 基础层
"crates/foundation/apsis-core",
"crates/foundation/apsis-units",
"crates/foundation/apsis-math",
"crates/foundation/apsis-macros",
# physics / 物理层
"crates/physics/apsis-time",
"crates/physics/apsis-leap",
"crates/physics/apsis-coord",
"crates/physics/apsis-geodesy",
"crates/physics/apsis-frames",
# orbit / 轨道层
"crates/orbit/apsis-tle",
"crates/orbit/apsis-sgp4",
"crates/orbit/apsis-kepler",
"crates/orbit/apsis-ephemeris",
"crates/orbit/apsis-maneuver",
"crates/orbit/apsis-orbit",
# rf / 射频层
"crates/rf/apsis-rf",
"crates/rf/apsis-antenna",
"crates/rf/apsis-doppler",
"crates/rf/apsis-atmosphere",
"crates/rf/apsis-noise",
"crates/rf/apsis-interference",
"crates/rf/apsis-link",
# network / 网络层
"crates/network/apsis-constellation",
"crates/network/apsis-coverage",
"crates/network/apsis-access",
"crates/network/apsis-topology",
"crates/network/apsis-isl",
"crates/network/apsis-routing",
"crates/network/apsis-handover",
"crates/network/apsis-mesh",
# ops / 运行层
"crates/ops/apsis-resource",
"crates/ops/apsis-task",
"crates/ops/apsis-scheduler",
"crates/ops/apsis-conflict",
"crates/ops/apsis-schedule",
# sim / 仿真层
"crates/sim/apsis-sim-engine",
"crates/sim/apsis-scenario",
"crates/sim/apsis-event",
"crates/sim/apsis-output",
"crates/sim/apsis-sim",
# facade / 门面层
"crates/apsis-rs",
]
[workspace.package]
version = "0.1.0"
edition = "2024"
rust-version = "1.85"
license = "MIT OR Apache-2.0"
authors = ["ApsisRS contributors"]
[workspace.lints.rust]
unsafe_code = "forbid"
missing_docs = "deny"
[workspace.lints.clippy]
# Numeric literals here follow the grouping of the quantity they express,
# such as the digits of a reference value, rather than a fixed width. The
# style lint would force a regrouping that obscures the source of a value.
# 此处的数值字面量按其所表达量的分组来分隔,例如某参考值的各位数字,
# 而非固定宽度。风格 lint 会强制重新分组,从而模糊某值的来源。
inconsistent_digit_grouping = "allow"
[workspace.dependencies]
apsis-core = { path = "crates/foundation/apsis-core" }
apsis-units = { path = "crates/foundation/apsis-units" }
apsis-math = { path = "crates/foundation/apsis-math" }
apsis-macros = { path = "crates/foundation/apsis-macros" }
apsis-time = { path = "crates/physics/apsis-time" }
apsis-leap = { path = "crates/physics/apsis-leap" }
apsis-coord = { path = "crates/physics/apsis-coord" }
apsis-geodesy = { path = "crates/physics/apsis-geodesy" }
apsis-frames = { path = "crates/physics/apsis-frames" }
apsis-tle = { path = "crates/orbit/apsis-tle" }
apsis-sgp4 = { path = "crates/orbit/apsis-sgp4" }
apsis-kepler = { path = "crates/orbit/apsis-kepler" }
apsis-ephemeris = { path = "crates/orbit/apsis-ephemeris" }
apsis-maneuver = { path = "crates/orbit/apsis-maneuver" }
apsis-orbit = { path = "crates/orbit/apsis-orbit" }
apsis-rf = { path = "crates/rf/apsis-rf" }
apsis-antenna = { path = "crates/rf/apsis-antenna" }
apsis-doppler = { path = "crates/rf/apsis-doppler" }
apsis-atmosphere = { path = "crates/rf/apsis-atmosphere" }
apsis-noise = { path = "crates/rf/apsis-noise" }
apsis-interference = { path = "crates/rf/apsis-interference" }
apsis-link = { path = "crates/rf/apsis-link" }
apsis-constellation = { path = "crates/network/apsis-constellation" }
apsis-coverage = { path = "crates/network/apsis-coverage" }
apsis-access = { path = "crates/network/apsis-access" }
apsis-topology = { path = "crates/network/apsis-topology" }
apsis-isl = { path = "crates/network/apsis-isl" }
apsis-routing = { path = "crates/network/apsis-routing" }
apsis-handover = { path = "crates/network/apsis-handover" }
apsis-mesh = { path = "crates/network/apsis-mesh" }
apsis-resource = { path = "crates/ops/apsis-resource" }
apsis-task = { path = "crates/ops/apsis-task" }
apsis-scheduler = { path = "crates/ops/apsis-scheduler" }
apsis-conflict = { path = "crates/ops/apsis-conflict" }
apsis-schedule = { path = "crates/ops/apsis-schedule" }
apsis-sim-engine = { path = "crates/sim/apsis-sim-engine" }
apsis-scenario = { path = "crates/sim/apsis-scenario" }
apsis-event = { path = "crates/sim/apsis-event" }
apsis-output = { path = "crates/sim/apsis-output" }
apsis-sim = { path = "crates/sim/apsis-sim" }