[package] name = "irc" version = "0.15.0" authors = ["Aaron Weiss "] edition = "2018" rust-version = "1.60" description = "the irc crate – usable, async IRC for Rust " documentation = "https://docs.rs/irc/" readme = "README.md" repository = "https://github.com/aatxe/irc" license = "MPL-2.0" keywords = ["irc", "client", "thread-safe", "async", "tokio"] categories = ["asynchronous", "network-programming"] [badges] travis-ci = { repository = "aatxe/irc" } is-it-maintained-issue-resolution = { repository = "aatxe/irc" } is-it-maintained-open-issues = { repository = "aatxe/irc" } [workspace] members = [ "./", "irc-proto/" ] [features] default = ["ctcp", "tls-native", "channel-lists", "toml_config"] ctcp = [] channel-lists = [] json_config = ["serde", "serde/derive", "serde_derive", "serde_json"] toml_config = ["serde", "serde/derive", "serde_derive", "toml"] yaml_config = ["serde", "serde/derive", "serde_derive", "serde_yaml"] # Temporary transitionary features json = ["json_config"] yaml = ["yaml_config"] proxy = ["tokio-socks"] tls-native = ["native-tls", "tokio-native-tls"] tls-rust = ["tokio-rustls", "webpki-roots", "rustls-pemfile"] [dependencies] chrono = { version = "0.4.24", default-features = false, features = ["clock", "std"] } encoding = "0.2.33" futures-util = { version = "0.3.28", default-features = false, features = ["alloc", "sink"] } irc-proto = { version = "0.15.0", path = "irc-proto" } log = "0.4.17" parking_lot = "0.12.1" thiserror = "1.0.40" pin-project = "1.0.12" tokio = { version = "1.27.0", features = ["net", "time", "sync"] } tokio-stream = "0.1.12" tokio-util = { version = "0.7.7", features = ["codec"] } # Feature - Config serde = { version = "1.0.160", optional = true } serde_derive = { version = "1.0.160", optional = true } serde_json = { version = "1.0.95", optional = true } serde_yaml = { version = "0.9.21", optional = true } toml = { version = "0.7.3", optional = true } # Feature - Proxy tokio-socks = { version = "0.5.1", optional = true } # Feature - TLS native-tls = { version = "0.2.11", optional = true } tokio-rustls = { version = "0.24.0", features = ["dangerous_configuration"], optional = true } rustls-pemfile = { version = "1.0.2", optional = true } tokio-native-tls = { version = "0.3.1", optional = true } webpki-roots = { version = "0.23.0", optional = true } [dev-dependencies] anyhow = "1.0.70" args = "2.2.0" env_logger = "0.10.0" futures = "0.3.28" getopts = "0.2.21" tokio = { version = "1.27.0", features = ["rt", "rt-multi-thread", "macros", "net", "time"] } [[example]] name = "simple_proxy" path = "examples/simple_proxy.rs" required-features = ["proxy"] [[example]] name = "simple_plaintext" path = "examples/simple_plaintext.rs" required-features = ["tls-native"]