[package] # --- Bumpversion match - do not reorder name = "veilid-flutter" version = "0.3.4" # --- description = "Flutter/Dart bindings for Veilid" repository = "https://gitlab.com/veilid/veilid" authors = ["Veilid Team "] license = "MPL-2.0" edition = "2021" rust-version = "1.81.0" resolver = "2" [lib] crate-type = ["cdylib", "staticlib", "rlib"] path = "src/lib.rs" [features] default = ["rt-tokio", "veilid-core/default"] crypto-test = ["rt-tokio", "veilid-core/crypto-test"] rt-async-std = [ "veilid-core/rt-async-std", "async-std", "opentelemetry/rt-async-std", "opentelemetry-otlp/grpc-sys", ] rt-tokio = [ "veilid-core/rt-tokio", "tokio", "tokio-stream", "tokio-util", "opentelemetry/rt-tokio", ] debug-load = ["dep:ctor", "dep:libc-print", "dep:android_log-sys", "dep:oslog"] [dependencies] veilid-core = { path = "../../veilid-core", default-features = false } tracing = { version = "0.1.40", features = ["log", "attributes"] } tracing-subscriber = "0.3.18" parking_lot = "0.12.3" backtrace = "0.3.71" serde_json = "1.0.120" serde = "1.0.204" futures-util = { version = "0.3.30", default-features = false, features = [ "alloc", ] } cfg-if = "1.0.0" data-encoding = { version = "2.6.0" } tracing-flame = "0.2.0" # Dependencies for native builds only # Linux, Windows, Mac, iOS, Android [target.'cfg(not(target_arch = "wasm32"))'.dependencies] tracing-opentelemetry = "0.21" opentelemetry = { version = "0.20" } opentelemetry-otlp = { version = "0.13" } opentelemetry-semantic-conventions = "0.12" async-std = { version = "1.12.0", features = ["unstable"], optional = true } tokio = { version = "1.38.1", features = ["full"], optional = true } tokio-stream = { version = "0.1.15", features = ["net"], optional = true } tokio-util = { version = "0.7.11", features = ["compat"], optional = true } allo-isolate = "0.1.25" ffi-support = "0.4.4" lazy_static = "1.5.0" hostname = "0.3.1" ctor = { version = "0.2.8", optional = true } libc-print = { version = "0.1.23", optional = true } # Dependencies for WASM builds only [target.'cfg(target_arch = "wasm32")'.dependencies] # Dependencies for Android builds only [target.'cfg(target_os = "android")'.dependencies] jni = "0.21.1" paranoid-android = "0.2.2" android_log-sys = { version = "0.3.1", optional = true } # Dependencies for iOS builds only [target.'cfg(target_os = "ios")'.dependencies] oslog = { version = "0.2.0", default-features = false, optional = true }