datex-core 0.0.6

The DATEX Core Rust implementation
Documentation
cargo-features = ["profile-rustflags"]

[[bench]]
harness = false
name = "mod"
path = "benches/mod.rs"

[[bench]]
name = "runtime"
path = "benches/runtime.rs"

[dependencies.ariadne]
version = "0.5.1"

[dependencies.async-stream]
version = "0.3.6"

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

[dependencies.bigdecimal]
version = "0.4.8"

[dependencies.bigint]
version = "4.4.3"

[dependencies.binrw]
version = "0.15.0"

[dependencies.byteorder]
version = "1"

[dependencies.bytes]
version = "1"

[dependencies.cfg-if]
version = "1.0.1"

[dependencies.chumsky]
default-features = false
features = ["std"]
version = "0.10.1"

[dependencies.console_error_panic_hook]
optional = true
version = "0.1.7"

[dependencies.console_log]
optional = true
version = "1.0.0"

[dependencies.datex_macros]
version = "0.1.1"

[dependencies.default-args]
version = "1.0.0"

[dependencies.esp-idf-svc]
optional = true
version = "0.51.0"

[dependencies.flexi_logger]
optional = true
version = "0.31.2"

[dependencies.futures]
version = "0.3"

[dependencies.futures-core]
version = "0.3.31"

[dependencies.futures-timer]
version = "3"

[dependencies.futures-util]
version = "0.3"

[dependencies.hex]
version = "0.4.3"

[dependencies.indexmap]
version = "2.9.0"

[dependencies.internment]
version = "0.8.6"

[dependencies.itertools]
version = "0.14.0"

[dependencies.lazy_static]
version = "1.4.0"

[dependencies.log]
features = ["std", "serde"]
version = "0.4"

[dependencies.logos]
version = "0.15.0"

[dependencies.modular-bitfield]
version = "0.12.0"

[dependencies.mopa]
version = "0.2.2"

[dependencies.nostd]
optional = true
version = "0.1.4"

[dependencies.ntest_timeout]
version = "0.9.3"

[dependencies.num]
version = "0.4.3"

[dependencies.num-bigint]
version = "0.4"

[dependencies.num-integer]
version = "0.1"

[dependencies.num-traits]
version = "0.2.19"

[dependencies.num_enum]
version = "0.7.4"

[dependencies.ordered-float]
version = "5.0.0"

[dependencies.pad]
version = "0.1"

[dependencies.rand]
optional = true
version = "0.8.5"

[dependencies.ringmap]
version = "0.1.3"

[dependencies.serde]
version = "1.0.219"

[dependencies.serde-big-array]
version = "0.5.1"

[dependencies.serde_json]
version = "1.0.140"

[dependencies.serde_with]
version = "3.12.0"

[dependencies.strum]
features = ["derive"]
version = "0.27.1"

[dependencies.strum_macros]
version = "0.27.1"

[dependencies.syntect]
default-features = false
features = ["default-fancy"]
version = "5.2.0"

[dependencies.thiserror]
version = "2.0.11"

[dependencies.tokio]
default-features = false
features = ["sync", "macros", "io-util", "rt", "time"]
optional = true
version = "1.43.0"

[dependencies.url]
version = "2.5.4"

[dependencies.uuid]
features = ["v4"]
optional = true
version = "1.15.1"

[dependencies.webrtc]
optional = true
version = "0.13.0"

[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.6.0"

[dev-dependencies.criterion-macro]
version = "0.4.0"

[dev-dependencies.json-syntax]
version = "0.12.5"

[features]
debug = []
default = ["nostd", "native_websocket", "native_tcp", "native_rand", "native_uuid", "native_crypto", "native_time", "native_http", "native_serial", "native_webrtc", "wasm_webrtc", "flexi_logger", "tokio_runtime", "serde"]
env_logger = []
esp_logger = ["esp-idf-svc"]
native_crypto = ["openssl"]
native_http = ["axum", "hyper", "tokio-stream"]
native_rand = ["rand"]
native_serial = ["serialport"]
native_tcp = []
native_time = []
native_uuid = ["uuid"]
native_webrtc = ["webrtc"]
native_websocket = ["tokio-tungstenite", "tungstenite"]
serde = []
std = []
tokio_runtime = ["dep:tokio"]
wasm_logger = ["console_log", "console_error_panic_hook"]
wasm_runtime = ["dep:wasm-bindgen-futures", "dep:gloo-timers", "dep:tsify", "dep:wasm-bindgen"]
wasm_webrtc = []

[lib]
crate-type = ["cdylib", "rlib"]
name = "datex_core"
path = "src/lib.rs"

[package]
authors = ["Benedikt Strehle <benedikt@unyt.org>", "Jonas Strehle <jonas@unyt.org>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "The DATEX Core Rust implementation"
edition = "2024"
license-file = "LICENSE"
name = "datex-core"
readme = "README.md"
version = "0.0.6"

[profile.release]
codegen-units = 1
lto = true
opt-level = "z"
panic = "abort"
strip = true

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.axum]
optional = true
version = "0.8.4"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.futures-timer]
features = ["wasm-bindgen"]
version = "3"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.gloo-timers]
features = ["futures"]
optional = true
version = "0.3.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.hyper]
optional = true
version = "1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.openssl]
optional = true
version = "0.10.73"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.serialport]
optional = true
version = "4.7.1"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-stream]
features = ["sync"]
optional = true
version = "0.1.17"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio-tungstenite]
features = ["native-tls"]
optional = true
version = "0.21.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tsify]
optional = true
version = "0.5.5"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tungstenite]
optional = true
version = "0.21.0"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.wasm-bindgen]
optional = true
version = "=0.2.102"

[target.'cfg(not(target_arch = "wasm32"))'.dependencies.wasm-bindgen-futures]
optional = true
version = "0.4.29"

[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.matchbox_signaling]
version = "0.12.0"

[target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies.tokio]
default-features = false
features = ["sync", "macros", "io-util", "rt", "time"]
version = "1.43.0"

[target.'cfg(target_arch = "wasm32")'.dependencies.gloo-timers]
features = ["futures"]
version = "0.3.0"

[target.'cfg(target_arch = "wasm32")'.dependencies.tsify]
version = "0.5.5"

[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen]
version = "=0.2.102"

[target.'cfg(target_arch = "wasm32")'.dependencies.wasm-bindgen-futures]
version = "0.4.29"

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

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

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

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

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

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