[package]
name = "cloudpub-common"
version = "3.0.2"
edition = "2021"
authors = ["CloudPub <support@cloudpub.ru>"]
license = "Apache-2.0"
description = "Common code for the client, server, and GUI"
homepage = "https://github.com/ermak-dev/cloudpub"
repository = "https://github.com/ermak-dev/cloudpub"
include = ["src/**/*", "build.rs", "roots/*"]
[features]
default = []
serde = []
rustls = [
"dep:rustls",
"tokio-rustls",
"tokio-tungstenite/rustls",
"tokio-tungstenite/rustls-tls-native-roots",
"rustls-pemfile",
"rustls-native-certs",
"p12",
"x509-parser",
]
[build-dependencies]
prost-build = "0.14.1"
chrono = { version = "0.4" }
[dependencies]
tokio.workspace = true
bytes.workspace = true
clap.workspace = true
serde.workspace = true
anyhow.workspace = true
lazy_static.workspace = true
backoff.workspace = true
rand.workspace = true
time.workspace = true
tokio-util.workspace = true
futures-core.workspace = true
futures-sink.workspace = true
serde_json.workspace = true
url.workspace = true
libc.workspace = true
parking_lot.workspace = true
dirs.workspace = true
fluent.workspace = true
fluent-bundle.workspace = true
unic-langid.workspace = true
futures.workspace = true
dashmap.workspace = true
tracing.workspace = true
tracing-subscriber.workspace = true
tracing-appender = "0.2.3"
tracing-log = "0.2.0"
bincode = { version = "2.0.1", features = ["serde"] }
prost = "0.14.1"
log-panics = { version = "2.1.0", features = ["with-backtrace"] }
rolling-file = "0.2.0"
socket2 = { version = "0.6.0", features = ["all"] }
async-trait.workspace = true
base64 = { version = "0.22.1", optional = true }
notify = { version = "8.1.0", optional = true }
async-http-proxy = { version = "1.2.5", features = [
"runtime-tokio",
"basic-auth",
] }
async-socks5 = "0.6.0"
tokio-tungstenite = { version = "0.27.0", features = ["connect"] }
rustls = { version = "0.23.0", optional = true, default-features = false, features = [
"ring",
] }
tokio-rustls = { version = "0.26.2", optional = true, default-features = false }
rustls-native-certs = { version = "0.8.1", optional = true }
rustls-pemfile = { version = "2.2.0", optional = true }
p12 = { version = "0.6.3", optional = true }
urlencoding = "2.1.3"
x509-parser = { version = "0.17.0", optional = true }
futures-util = "0.3.31"