Cargo.toml

 1[package]
 2name = "tokio-xmpp"
 3version = "5.0.0"
 4authors = ["Astro <astro@spaceboyz.net>", "Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>", "pep <pep+code@bouah.net>", "O01eg <o01eg@yandex.ru>", "SonnyX <randy@vonderweide.nl>", "Paul Fariello <paul@fariello.eu>"]
 5description = "Asynchronous XMPP for Rust with tokio"
 6license = "MPL-2.0"
 7homepage = "https://gitlab.com/xmpp-rs/xmpp-rs"
 8repository = "https://gitlab.com/xmpp-rs/xmpp-rs"
 9documentation = "https://docs.rs/tokio-xmpp"
10categories = ["asynchronous", "network-programming"]
11keywords = ["xmpp", "tokio"]
12edition = "2021"
13
14[dependencies]
15bytes = "1"
16futures = "0.3"
17log = "0.4"
18tokio = { version = "1", features = ["net", "rt", "rt-multi-thread", "macros", "io-util"] }
19tokio-stream = { version = "0.1", features = ["sync"] }
20webpki-roots = { version = "1", optional = true }
21rustls-native-certs = { version = "0.8", optional = true }
22rxml = { version = "0.13.1", features = ["compact_str"] }
23rand = "0.9"
24syntect = { version = "5", optional = true }
25pin-project-lite = { version = "0.2" }
26thiserror = "2.0"
27# same repository dependencies
28sasl = { version = "0.5", path = "../sasl" }
29xmpp-parsers = { version = "0.22", path = "../parsers", features = [ "log" ] }
30xso = { version = "0.3", path = "../xso" }
31
32# these are only needed for starttls ServerConnector support
33hickory-resolver = { version = "0.25", optional = true}
34idna = { version = "1.0", optional = true}
35native-tls = { version = "0.2", optional = true }
36tokio-native-tls = { version = "0.3", optional = true }
37tokio-rustls = { version = "0.26", optional = true, default-features = false, features = ["logging", "tls12"] }
38ktls = { version = "6", optional = true }
39
40[dev-dependencies]
41env_logger = { version = "0.11", default-features = false, features = ["auto-color", "humantime"] }
42# this is needed for echo-component example
43tokio = { version = "1", features = ["signal", "test-util"] }
44tokio-xmpp = { path = ".", default-features = false, features = ["rustls-native-certs"]}
45
46[[example]]
47name = "contact_addr"
48required-features = ["starttls", "aws_lc_rs"]
49
50[[example]]
51name = "download_avatars"
52required-features = ["starttls", "aws_lc_rs"]
53
54[[example]]
55name = "echo_bot"
56required-features = ["starttls", "aws_lc_rs"]
57
58[[example]]
59name = "echo_component"
60required-features = ["starttls", "insecure-tcp"]
61
62[[example]]
63name = "echo_server"
64required-features = ["starttls", "aws_lc_rs"]
65
66[[example]]
67name = "keep_connection"
68required-features = ["starttls"]
69
70[features]
71default = ["direct-tls", "starttls", "aws_lc_rs", "rustls-native-certs"]
72starttls = ["dns"]
73direct-tls = ["dns"]
74
75aws_lc_rs = ["rustls-any-backend", "tokio-rustls/aws_lc_rs"]
76ring = ["rustls-any-backend", "tokio-rustls/ring"]
77native-tls = ["dep:tokio-native-tls", "dep:native-tls"]
78ktls = ["rustls-any-backend", "dep:ktls"]
79
80rustls-any-backend = ["dep:tokio-rustls"]
81
82rustls-native-certs = ["dep:rustls-native-certs"]
83webpki-roots = ["dep:webpki-roots"]
84
85insecure-tcp = []
86syntax-highlighting = ["syntect"]
87# Enable serde support in jid crate
88serde = [ "xmpp-parsers/serde" ]
89# Required by starttls, and used by insecure-tcp by default
90dns = [ "hickory-resolver", "idna" ]
91component = ["xmpp-parsers/component", "insecure-tcp"]
92
93[lints.rust]
94unexpected_cfgs = { level = "warn", check-cfg = ['cfg(xmpprs_doc_build)'] }