[package]
edition = "2024"
rust-version = "1.85"
name = "zlink"
version = "0.4.1"
authors = ["Zeeshan Ali Khan<zeenix@gmail.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Async Varlink API"
readme = "README.md"
license = "MIT"
repository = "https://github.com/z-galaxy/zlink/"
resolver = "2"
[features]
default = [
"tokio",
"service",
"proxy",
"tracing",
]
defmt = [
"zlink-tokio?/defmt",
"zlink-smol?/defmt",
]
idl = [
"zlink-tokio?/idl",
"zlink-smol?/idl",
]
idl-parse = [
"zlink-tokio?/idl-parse",
"zlink-smol?/idl-parse",
]
introspection = [
"zlink-tokio?/introspection",
"zlink-smol?/introspection",
]
proxy = [
"zlink-tokio?/proxy",
"zlink-smol?/proxy",
]
server = [
"zlink-tokio?/server",
"zlink-smol?/server",
]
service = [
"server",
"introspection",
"zlink-tokio?/service",
"zlink-smol?/service",
]
smol = ["dep:zlink-smol"]
tokio = ["dep:zlink-tokio"]
tracing = [
"zlink-tokio?/tracing",
"zlink-smol?/tracing",
]
[lib]
name = "zlink"
path = "src/lib.rs"
[[example]]
name = "resolved"
path = "examples/resolved.rs"
required-features = [
"proxy",
"tokio",
]
[[example]]
name = "varlink-inspect"
path = "examples/varlink-inspect.rs"
required-features = [
"introspection",
"idl-parse",
"tokio",
]
[[test]]
name = "creds-utils"
path = "tests/creds-utils.rs"
[[test]]
name = "ftl"
path = "tests/ftl.rs"
[[test]]
name = "integration_test_custom_type"
path = "tests/integration_test_custom_type.rs"
[[test]]
name = "integration_test_custom_type_derive"
path = "tests/integration_test_custom_type_derive.rs"
[[test]]
name = "integration_test_type"
path = "tests/integration_test_type.rs"
[[test]]
name = "machined_proxy_e2e"
path = "tests/machined_proxy_e2e.rs"
[[test]]
name = "mock_machined_service"
path = "tests/mock_machined_service.rs"
[[test]]
name = "peer_credentials"
path = "tests/peer_credentials.rs"
[dependencies.zlink-smol]
version = "=0.4.1"
optional = true
default-features = false
[dependencies.zlink-tokio]
version = "=0.4.1"
optional = true
default-features = false
[dev-dependencies.clap]
version = "4.0"
features = ["derive"]
[dev-dependencies.colored]
version = "3.0"
[dev-dependencies.futures-util]
version = "0.3.31"
features = ["async-await"]
default-features = false
[dev-dependencies.rustix]
version = "1.1.2"
features = ["process"]
[dev-dependencies.serde]
version = "1.0.218"
features = ["derive"]
default-features = false
[dev-dependencies.serde-prefix-all]
version = "0.1.0"
[dev-dependencies.serde_json]
version = "1.0"
[dev-dependencies.serde_repr]
version = "0.1.20"
[dev-dependencies.tempfile]
version = "3.8"
[dev-dependencies.test-log]
version = "0.2.17"
features = [
"trace",
"color",
]
default-features = false
[dev-dependencies.tokio]
version = "1.44.0"
features = [
"macros",
"rt",
"rt-multi-thread",
"test-util",
"fs",
"net",
]
[dev-dependencies.tracing-subscriber]
version = "0.3.19"