[package]
name = "harmony_rust_sdk"
version = "0.3.0"
authors = [ "Yusuf Bera Ertan <y.bera003.06@protonmail.com>" ]
edition = "2018"
license = "MIT"
description = "Rust library to work with the Harmony chat protocol."
repository = "https://github.com/harmony-development/harmony_rust_sdk"
homepage = "https://github.com/harmony-development/harmony_rust_sdk"
keywords = [ "harmony", "protocol", "api", "chat", "client" ]
categories = [ "api-bindings" ]
exclude = [
"*.nix",
"flake.lock",
".github/*",
]
[workspace]
members = [ "harmony_derive" ]
[package.metadata.docs.rs]
all-features = true
[dependencies]
prost = "0.6"
prost-types = "0.6"
tonic = { version = "0.3", features = [ "tls", "tls-roots", "prost" ] }
http = "0.2"
derive-new = "0.5"
derive_more = "0.99"
harmony_derive = { version = "0.1.0", path = "harmony_derive", optional = true }
async-trait = { version = "0.1.42", optional = true }
async-mutex = { version = "1.4.0", optional = true }
flume = { version = "0.10.1", optional = true }
log = { version = "0.4", optional = true }
assign = { version = "1.1", optional = true }
paste = { version = "1.0", optional = true }
futures = { version = "0.3", optional = true }
reqwest = { version = "0.10", default-features = false, features = [ "rustls-tls-native-roots", "json" ], optional = true }
serde = { version = "1.0", features = ["derive"] }
parking_lot = { version = "0.11", optional = true }
[build-dependencies]
tonic-build = "0.3"
[features]
default = [
"gen_chat",
"gen_auth",
"gen_mediaproxy",
"gen_voice",
"gen_harmonytypes",
]
client = [
"gen_chat",
"gen_auth",
"gen_mediaproxy",
"gen_voice",
"gen_harmonytypes",
"gen_client",
"async-mutex",
"futures",
"paste",
"assign",
"log",
"reqwest",
"flume",
]
request_method = [ "async-trait" ]
gen_client = [ ]
gen_server = [ ]
gen_chat = [ "gen_harmonytypes", "harmony_derive" ]
gen_auth = [ ]
gen_mediaproxy = [ "gen_harmonytypes" ]
gen_voice = [ ]
gen_harmonytypes = [ ]
[dev-dependencies]
tokio = { version = "0.2", features = [ "rt-threaded", "macros", "fs" ] }
env_logger = "0.8"
ctrlc = "3.1.7"
[[test]]
name = "all"
required-features = [ "client" ]
[[example]]
name = "echo_bot"
required-features = [ "client" ]
[[example]]
name = "message_log"
required-features = [ "client" ]