aetheris-server 0.3.3

Authoritative heart and tick scheduler for the Aetheris multiplayer platform
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "aetheris-server"
version = "0.3.3"
authors = ["garnizeH Labs"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Authoritative heart and tick scheduler for the Aetheris multiplayer platform"
readme = "README.md"
license = "MIT OR Apache-2.0"
repository = "https://github.com/garnizeh-labs/aetheris-engine"
resolver = "2"

[package.metadata.cargo-udeps.ignore]
normal = [
    "aetheris-transport-renet",
    "metrics-exporter-prometheus",
    "opentelemetry",
    "opentelemetry-otlp",
    "opentelemetry_sdk",
    "tikv-jemallocator",
    "tikv-jemalloc-ctl",
    "tracing-opentelemetry",
]

[features]
default = ["phase1"]
phase1 = [
    "dep:aetheris-transport-renet",
    "dep:aetheris-transport-webtransport",
    "dep:aetheris-ecs-bevy",
    "dep:aetheris-encoder-serde",
]
phase3 = [
    "dep:aetheris-transport-quinn",
    "dep:aetheris-ecs-custom",
    "dep:aetheris-encoder-bitpack",
]

[lib]
name = "aetheris_server"
path = "src/lib.rs"

[[bin]]
name = "aetheris-server"
path = "src/main.rs"

[[test]]
name = "security_integration"
path = "tests/security_integration.rs"

[[test]]
name = "server_integration"
path = "tests/server_integration.rs"

[dependencies.aetheris-ecs-custom]
version = "0.3.3"
optional = true

[dependencies.aetheris-encoder-bitpack]
version = "0.2.5"
optional = true

[dependencies.aetheris-encoder-serde]
version = "0.2.5"
optional = true

[dependencies.aetheris-protocol]
version = "0.2.5"
features = ["grpc"]

[dependencies.async-trait]
version = "0.1.89"

[dependencies.axum]
version = "0.8.9"
features = ["tokio"]

[dependencies.base64]
version = "0.22.1"

[dependencies.blake2]
version = "0.10"

[dependencies.chrono]
version = "0.4.44"
features = ["serde"]

[dependencies.dashmap]
version = "6.1.0"

[dependencies.futures]
version = "0.3"

[dependencies.hex]
version = "0.4"

[dependencies.lettre]
version = "0.11"
features = [
    "tokio1-rustls-tls",
    "smtp-transport",
    "builder",
]
default-features = false

[dependencies.openidconnect]
version = "4.0"

[dependencies.rand]
version = "0.10.1"

[dependencies.reqwest]
version = "0.13.2"
features = [
    "json",
    "rustls",
]
default-features = false

[dependencies.rustls]
version = "0.23.38"
features = ["ring"]

[dependencies.rusty_paseto]
version = "0.9.0"
features = ["v4_local"]

[dependencies.serde]
version = "1.0.228"
features = ["derive"]

[dependencies.serde_json]
version = "1.0.138"

[dependencies.sha2]
version = "0.11.0"

[dependencies.subtle]
version = "2.5"

[dependencies.tonic]
version = "0.14.3"
features = [
    "codegen",
    "transport",
    "tls-ring",
    "tls-webpki-roots",
    "router",
]
default-features = false

[dependencies.tonic-web]
version = "0.14"

[dependencies.tower-http]
version = "0.6.8"
features = ["cors"]

[dependencies.tracing]
version = "0.1.44"

[dependencies.ulid]
version = "1.2.1"
features = ["std"]
default-features = false

[dev-dependencies.aetheris-protocol]
version = "0.2.5"
features = ["test-utils"]

[dev-dependencies.rand]
version = "0.10.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.aetheris-ecs-bevy]
version = "0.3.3"
optional = true

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.aetheris-transport-quinn]
version = "0.3.3"
optional = true

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.aetheris-transport-renet]
version = "0.3.3"
optional = true

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.aetheris-transport-webtransport]
version = "0.3.3"
optional = true

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.bevy_ecs]
version = "0.18.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.metrics]
version = "0.24.3"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.metrics-exporter-prometheus]
version = "0.18.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.opentelemetry]
version = "0.31.0"
features = ["trace"]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.opentelemetry-otlp]
version = "0.31.1"
features = [
    "grpc-tonic",
    "trace",
]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.opentelemetry_sdk]
version = "0.31.0"
features = [
    "rt-tokio",
    "trace",
]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tikv-jemalloc-ctl]
version = "0.6.1"
features = ["stats"]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tikv-jemallocator]
version = "0.6.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
version = "1.51.1"
features = [
    "full",
    "full",
    "test-util",
]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-stream]
version = "0.1.18"
features = ["net"]

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tracing-opentelemetry]
version = "0.32.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tracing-subscriber]
version = "0.3.23"
features = [
    "env-filter",
    "json",
    "fmt",
]