Cargo.toml 🔗
@@ -7,6 +7,7 @@ members = [ # alphabetically sorted
"tokio-xmpp",
"xmpp",
]
+resolver = "2"
[patch.crates-io]
jid = { path = "jid" }
Maxime “pep” Buquet created
- Remove TryFrom/Into and FromIterator imports
- Prevent impl_validator_using_provider macro in sasl crate from
constructing trait object
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
Cargo.toml | 1 +
jid/Cargo.toml | 2 +-
jid/src/lib.rs | 1 -
minidom/Cargo.toml | 2 +-
minidom/src/element.rs | 3 ---
minidom/src/node.rs | 1 -
parsers/Cargo.toml | 2 +-
parsers/examples/generate-caps.rs | 1 -
parsers/src/attention.rs | 1 -
parsers/src/avatar.rs | 1 -
parsers/src/bind.rs | 1 -
parsers/src/blocking.rs | 1 -
parsers/src/bob.rs | 1 -
parsers/src/bookmarks.rs | 1 -
parsers/src/bookmarks2.rs | 2 --
parsers/src/caps.rs | 1 -
parsers/src/carbons.rs | 1 -
parsers/src/cert_management.rs | 1 -
parsers/src/chatstates.rs | 1 -
parsers/src/component.rs | 1 -
parsers/src/csi.rs | 1 -
parsers/src/data_forms.rs | 1 -
parsers/src/delay.rs | 1 -
parsers/src/disco.rs | 1 -
parsers/src/ecaps2.rs | 1 -
parsers/src/eme.rs | 1 -
parsers/src/extdisco.rs | 1 -
parsers/src/forwarding.rs | 1 -
parsers/src/hashes.rs | 1 -
parsers/src/http_upload.rs | 3 ---
parsers/src/ibb.rs | 1 -
parsers/src/ibr.rs | 1 -
parsers/src/idle.rs | 1 -
parsers/src/iq.rs | 1 -
parsers/src/jid_prep.rs | 1 -
parsers/src/jingle.rs | 1 -
parsers/src/jingle_dtls_srtp.rs | 1 -
parsers/src/jingle_ft.rs | 1 -
parsers/src/jingle_grouping.rs | 1 -
parsers/src/jingle_ibb.rs | 1 -
parsers/src/jingle_ice_udp.rs | 1 -
parsers/src/jingle_message.rs | 1 -
parsers/src/jingle_raw_udp.rs | 1 -
parsers/src/jingle_rtcp_fb.rs | 1 -
parsers/src/jingle_rtp.rs | 1 -
parsers/src/jingle_rtp_hdrext.rs | 1 -
parsers/src/jingle_s5b.rs | 1 -
parsers/src/jingle_ssma.rs | 1 -
parsers/src/legacy_omemo.rs | 1 -
parsers/src/mam.rs | 1 -
parsers/src/mam_prefs.rs | 1 -
parsers/src/media_element.rs | 1 -
parsers/src/message.rs | 1 -
parsers/src/message_correct.rs | 1 -
parsers/src/mix.rs | 1 -
parsers/src/mood.rs | 1 -
parsers/src/muc/muc.rs | 1 -
parsers/src/muc/user.rs | 1 -
parsers/src/nick.rs | 1 -
parsers/src/occupant_id.rs | 1 -
parsers/src/ping.rs | 1 -
parsers/src/presence.rs | 1 -
parsers/src/pubsub/event.rs | 1 -
parsers/src/pubsub/owner.rs | 1 -
parsers/src/pubsub/pubsub.rs | 1 -
parsers/src/receipts.rs | 1 -
parsers/src/roster.rs | 1 -
parsers/src/rsm.rs | 1 -
parsers/src/rtt.rs | 2 --
parsers/src/sasl.rs | 2 --
parsers/src/server_info.rs | 1 -
parsers/src/sm.rs | 1 -
parsers/src/stanza_error.rs | 1 -
parsers/src/stanza_id.rs | 1 -
parsers/src/stream.rs | 1 -
parsers/src/time.rs | 1 -
parsers/src/tune.rs | 1 -
parsers/src/version.rs | 1 -
parsers/src/websocket.rs | 1 -
parsers/src/xhtml.rs | 1 -
sasl/Cargo.toml | 2 +-
sasl/src/server/mod.rs | 2 +-
tokio-xmpp/Cargo.toml | 2 +-
tokio-xmpp/examples/contact_addr.rs | 1 -
tokio-xmpp/examples/download_avatars.rs | 1 -
tokio-xmpp/examples/echo_bot.rs | 1 -
tokio-xmpp/examples/echo_component.rs | 1 -
tokio-xmpp/src/client/auth.rs | 1 -
tokio-xmpp/src/client/bind.rs | 1 -
tokio-xmpp/src/starttls.rs | 1 -
xmpp/Cargo.toml | 2 +-
xmpp/src/lib.rs | 1 -
xmpp/src/pubsub/avatar.rs | 1 -
xmpp/src/pubsub/mod.rs | 1 -
94 files changed, 8 insertions(+), 100 deletions(-)
@@ -7,6 +7,7 @@ members = [ # alphabetically sorted
"tokio-xmpp",
"xmpp",
]
+resolver = "2"
[patch.crates-io]
jid = { path = "jid" }
@@ -13,7 +13,7 @@ documentation = "https://docs.rs/jid"
readme = "README.md"
keywords = ["xmpp", "jid"]
license = "MPL-2.0"
-edition = "2018"
+edition = "2021"
[badges]
gitlab = { repository = "xmpp-rs/xmpp-rs" }
@@ -31,7 +31,6 @@
//! mixing left-to-write and right-to-left characters
use core::num::NonZeroU16;
-use std::convert::TryFrom;
use std::fmt;
use std::str::FromStr;
@@ -15,7 +15,7 @@ documentation = "https://docs.rs/minidom"
readme = "README.md"
keywords = ["xml", "xmpp"]
license = "MPL-2.0"
-edition = "2018"
+edition = "2021"
[badges]
gitlab = { repository = "xmpp-rs/xmpp-rs" }
@@ -20,7 +20,6 @@ use crate::prefixes::{Namespace, Prefix, Prefixes};
use crate::tree_builder::TreeBuilder;
use std::collections::{btree_map, BTreeMap};
-use std::convert::{TryFrom, TryInto};
use std::io::{BufRead, Write};
use std::sync::Arc;
@@ -884,8 +883,6 @@ mod tests {
#[test]
fn test_element_new() {
- use std::iter::FromIterator;
-
let elem = Element::new(
"name".to_owned(),
"namespace".to_owned(),
@@ -13,7 +13,6 @@ use crate::error::Result;
use rxml::writer::Item;
-use std::convert::TryInto;
use std::io::Write;
/// A node in an element tree.
@@ -11,7 +11,7 @@ repository = "https://gitlab.com/xmpp-rs/xmpp-rs"
keywords = ["xmpp", "jabber", "xml"]
categories = ["parsing", "network-programming"]
license = "MPL-2.0"
-edition = "2018"
+edition = "2021"
[dependencies]
minidom = "0.15"
@@ -4,7 +4,6 @@
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
-use std::convert::TryFrom;
use std::env;
use std::io::{self, Read};
use xmpp_parsers::{
@@ -21,7 +21,6 @@ mod tests {
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[test]
fn test_size() {
@@ -61,7 +61,6 @@ mod tests {
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -9,7 +9,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::Element;
use jid::{FullJid, Jid};
-use std::convert::TryFrom;
use std::str::FromStr;
/// The request for resource binding, which is the process by which a client
@@ -9,7 +9,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::Element;
use jid::Jid;
-use std::convert::TryFrom;
generate_empty_element!(
/// The element requesting the blocklist, the result iq will contain a
@@ -89,7 +89,6 @@ generate_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -71,7 +71,6 @@ impl Storage {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -6,7 +6,6 @@
use crate::ns;
use crate::util::error::Error;
use crate::Element;
-use std::convert::TryFrom;
generate_attribute!(
/// Whether a conference bookmark should be joined automatically.
@@ -123,7 +122,6 @@ mod tests {
use super::*;
use crate::pubsub::{pubsub::Item as PubSubItem, PubSubEvent};
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -17,7 +17,6 @@ use digest::{Digest, Update, VariableOutput};
use sha1::Sha1;
use sha2::{Sha256, Sha512};
use sha3::{Sha3_256, Sha3_512};
-use std::convert::TryFrom;
/// Represents a capability hash for a given client.
#[derive(Debug, Clone)]
@@ -64,7 +64,6 @@ impl MessagePayload for Sent {}
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -121,7 +121,6 @@ mod tests {
use super::*;
use crate::ns;
use crate::Element;
- use std::convert::TryFrom;
use std::str::FromStr;
#[cfg(target_pointer_width = "32")]
@@ -35,7 +35,6 @@ mod tests {
use crate::ns;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[test]
fn test_size() {
@@ -44,7 +44,6 @@ impl Handshake {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -30,7 +30,6 @@ mod tests {
use super::*;
use crate::ns;
use crate::Element;
- use std::convert::TryFrom;
#[test]
fn test_size() {
@@ -8,7 +8,6 @@ use crate::media_element::MediaElement;
use crate::ns;
use crate::util::error::Error;
use crate::Element;
-use std::convert::TryFrom;
generate_element!(
/// Represents one of the possible values for a list- field.
@@ -35,7 +35,6 @@ mod tests {
use crate::util::error::Error;
use crate::Element;
use jid::BareJid;
- use std::convert::TryFrom;
use std::str::FromStr;
#[cfg(target_pointer_width = "32")]
@@ -10,7 +10,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::Element;
use jid::Jid;
-use std::convert::TryFrom;
generate_element!(
/// Structure representing a `<query xmlns='http://jabber.org/protocol/disco#info'/>` element.
@@ -185,7 +185,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -26,7 +26,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -141,7 +141,6 @@ mod tests {
use super::*;
use crate::ns;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -28,7 +28,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -205,7 +205,6 @@ impl Deref for Sha1HexAttribute {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -4,8 +4,6 @@
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
-use std::convert::TryFrom;
-
use crate::iq::{IqGetPayload, IqResultPayload};
use crate::ns;
use crate::util::error::Error;
@@ -117,7 +115,6 @@ impl IqResultPayload for SlotResult {}
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[test]
fn test_slot_request() {
@@ -74,7 +74,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -10,7 +10,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::Element;
use std::collections::HashMap;
-use std::convert::TryFrom;
/// Query for registering against a service.
#[derive(Debug, Clone)]
@@ -23,7 +23,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
use std::str::FromStr;
#[test]
@@ -11,7 +11,6 @@ use crate::util::error::Error;
use crate::Element;
use jid::Jid;
use minidom::IntoAttributeValue;
-use std::convert::TryFrom;
/// Should be implemented on every known payload of an `<iq type='get'/>`.
pub trait IqGetPayload: TryFrom<Element> + Into<Element> {}
@@ -42,7 +42,6 @@ mod tests {
use super::*;
use crate::Element;
use jid::FullJid;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -15,7 +15,6 @@ use crate::util::error::Error;
use crate::Element;
use jid::Jid;
use std::collections::BTreeMap;
-use std::convert::TryFrom;
use std::fmt;
use std::str::FromStr;
@@ -73,7 +73,6 @@ impl Fingerprint {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -11,7 +11,6 @@ use crate::ns;
use crate::util::error::Error;
use minidom::{Element, Node};
use std::collections::BTreeMap;
-use std::convert::TryFrom;
use std::str::FromStr;
generate_element!(
@@ -52,7 +52,6 @@ generate_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -26,7 +26,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -114,7 +114,6 @@ mod tests {
use crate::hashes::Algo;
use crate::jingle_dtls_srtp::Setup;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -8,7 +8,6 @@ use crate::jingle::SessionId;
use crate::ns;
use crate::util::error::Error;
use crate::Element;
-use std::convert::TryFrom;
/// Defines a protocol for broadcasting Jingle requests to all of the clients
/// of a user.
@@ -60,7 +60,6 @@ generate_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -20,7 +20,6 @@ generate_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -153,7 +153,6 @@ generate_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -56,7 +56,6 @@ impl RtpHdrext {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -8,7 +8,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::Element;
use jid::Jid;
-use std::convert::TryFrom;
use std::net::IpAddr;
generate_attribute!(
@@ -79,7 +79,6 @@ generate_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -182,7 +182,6 @@ impl MessagePayload for Encrypted {}
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryInto;
#[test]
fn parse_bundle() {
@@ -92,7 +92,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use minidom::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -9,7 +9,6 @@ use crate::ns;
use crate::util::error::Error;
use jid::Jid;
use minidom::{Element, Node};
-use std::convert::TryFrom;
generate_attribute!(
/// Notes the default archiving preference for the user.
@@ -48,7 +48,6 @@ mod tests {
use crate::data_forms::DataForm;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -9,7 +9,6 @@ use crate::util::error::Error;
use crate::Element;
use jid::Jid;
use std::collections::BTreeMap;
-use std::convert::TryFrom;
/// Should be implemented on every known payload of a `<message/>`.
pub trait MessagePayload: TryFrom<Element> + Into<Element> {}
@@ -23,7 +23,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -255,7 +255,6 @@ impl Destroy {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[test]
fn participant() {
@@ -272,7 +272,6 @@ generate_elem_id!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -96,7 +96,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
use std::str::FromStr;
#[test]
@@ -12,7 +12,6 @@ use crate::util::error::Error;
use crate::Element;
use jid::FullJid;
-use std::convert::TryFrom;
generate_attribute_enum!(
/// Lists all of the possible status codes used in MUC presences.
@@ -17,7 +17,6 @@ mod tests {
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -28,7 +28,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -23,7 +23,6 @@ mod tests {
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[test]
fn test_size() {
@@ -10,7 +10,6 @@ use crate::util::error::Error;
use jid::Jid;
use minidom::{Element, IntoAttributeValue};
use std::collections::BTreeMap;
-use std::convert::TryFrom;
use std::str::FromStr;
/// Should be implemented on every known payload of a `<presence/>`.
@@ -12,7 +12,6 @@ use crate::pubsub::{Item as PubSubItem, ItemId, NodeName, Subscription, Subscrip
use crate::util::error::Error;
use crate::Element;
use jid::Jid;
-use std::convert::TryFrom;
/// Event wrapper for a PubSub `<item/>`.
#[derive(Debug, Clone)]
@@ -12,7 +12,6 @@ use crate::pubsub::{AffiliationAttribute, NodeName, Subscription};
use crate::util::error::Error;
use crate::Element;
use jid::Jid;
-use std::convert::TryFrom;
generate_element!(
/// A list of affiliations you have on a service, or on a node.
@@ -13,7 +13,6 @@ use crate::pubsub::{
use crate::util::error::Error;
use crate::Element;
use jid::Jid;
-use std::convert::TryFrom;
// TODO: a better solution would be to split this into a query and a result elements, like for
// XEP-0030.
@@ -34,7 +34,6 @@ mod tests {
use crate::ns;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -93,7 +93,6 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::Element;
- use std::convert::TryFrom;
use std::str::FromStr;
#[cfg(target_pointer_width = "32")]
@@ -7,7 +7,6 @@
use crate::ns;
use crate::util::error::Error;
use crate::Element;
-use std::convert::TryFrom;
/// Requests paging through a potentially big set of items (represented by an
/// UID).
@@ -8,7 +8,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::util::helpers::PlainText;
use crate::Element;
-use std::convert::TryFrom;
generate_attribute!(
/// Events for real-time text.
@@ -245,7 +244,6 @@ impl From<Rtt> for Element {
#[cfg(test)]
mod tests {
use super::*;
- use std::convert::TryInto;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -9,7 +9,6 @@ use crate::util::error::Error;
use crate::util::helpers::Base64;
use crate::Element;
use std::collections::BTreeMap;
-use std::convert::TryFrom;
generate_attribute!(
/// The list of available SASL mechanisms.
@@ -215,7 +214,6 @@ impl From<Failure> for Element {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -6,7 +6,6 @@
use crate::data_forms::{DataForm, DataFormType, Field, FieldType};
use crate::ns;
use crate::util::error::Error;
-use std::convert::TryFrom;
/// Structure representing a `http://jabber.org/network/serverinfo` form type.
#[derive(Debug, Clone, PartialEq, Default)]
@@ -146,7 +146,6 @@ generate_empty_element!(
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -11,7 +11,6 @@ use crate::util::error::Error;
use crate::Element;
use jid::Jid;
use std::collections::BTreeMap;
-use std::convert::TryFrom;
generate_attribute!(
/// The type of the error.
@@ -40,7 +40,6 @@ mod tests {
use crate::util::error::Error;
use crate::Element;
use jid::BareJid;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -74,7 +74,6 @@ impl Stream {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -10,7 +10,6 @@ use crate::ns;
use crate::util::error::Error;
use crate::Element;
use chrono::FixedOffset;
-use std::convert::TryFrom;
use std::str::FromStr;
generate_empty_element!(
@@ -8,7 +8,6 @@ use crate::ns;
use crate::pubsub::PubSubPayload;
use crate::util::error::Error;
use crate::Element;
-use std::convert::TryFrom;
generate_elem_id!(
/// The artist or performer of the song or piece.
@@ -42,7 +42,6 @@ impl IqResultPayload for VersionResult {}
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -73,7 +73,6 @@ impl Open {
mod tests {
use super::*;
use crate::Element;
- use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
#[test]
@@ -9,7 +9,6 @@ use crate::ns;
use crate::util::error::Error;
use minidom::{Element, Node};
use std::collections::HashMap;
-use std::convert::TryFrom;
// TODO: Use a proper lang type.
type Lang = String;
@@ -9,7 +9,7 @@ documentation = "https://docs.rs/sasl"
readme = "README.md"
keywords = ["sasl", "authentication"]
license = "MPL-2.0"
-edition = "2018"
+edition = "2021"
[badges]
gitlab = { repository = "xmpp-rs/xmpp-rs" }
@@ -14,7 +14,7 @@ macro_rules! impl_validator_using_provider {
identity: &$crate::common::Identity,
value: &$secret,
) -> Result<(), $crate::server::ValidatorError> {
- if &(self as &$crate::server::Provider<$secret>).provide(identity)? == value {
+ if $crate::server::Provider::<$secret>::provide(self, identity).is_ok() {
Ok(())
} else {
Err($crate::server::ValidatorError::AuthenticationFailed)
@@ -9,7 +9,7 @@ repository = "https://gitlab.com/xmpp-rs/xmpp-rs"
documentation = "https://docs.rs/tokio-xmpp"
categories = ["asynchronous", "network-programming"]
keywords = ["xmpp", "tokio"]
-edition = "2018"
+edition = "2021"
[dependencies]
bytes = "1"
@@ -1,5 +1,4 @@
use futures::stream::StreamExt;
-use std::convert::TryFrom;
use std::env::args;
use std::process::exit;
use std::str::FromStr;
@@ -1,5 +1,4 @@
use futures::stream::StreamExt;
-use std::convert::TryFrom;
use std::env::args;
use std::fs::{create_dir_all, File};
use std::io::{self, Write};
@@ -1,5 +1,4 @@
use futures::stream::StreamExt;
-use std::convert::TryFrom;
use std::env::args;
use std::process::exit;
use std::str::FromStr;
@@ -1,5 +1,4 @@
use futures::stream::StreamExt;
-use std::convert::TryFrom;
use std::env::args;
use std::process::exit;
use std::str::FromStr;
@@ -4,7 +4,6 @@ use sasl::client::Mechanism;
use sasl::common::scram::{Sha1, Sha256};
use sasl::common::Credentials;
use std::collections::HashSet;
-use std::convert::TryFrom;
use std::str::FromStr;
use tokio::io::{AsyncRead, AsyncWrite};
use xmpp_parsers::sasl::{Auth, Challenge, Failure, Mechanism as XMPPMechanism, Response, Success};
@@ -1,5 +1,4 @@
use futures::stream::StreamExt;
-use std::convert::TryFrom;
use std::marker::Unpin;
use tokio::io::{AsyncRead, AsyncWrite};
use xmpp_parsers::bind::{BindQuery, BindResponse};
@@ -2,7 +2,6 @@ use futures::{sink::SinkExt, stream::StreamExt};
#[cfg(all(feature = "tls-rust", not(feature = "tls-native")))]
use {
- std::convert::TryFrom,
std::sync::Arc,
tokio_rustls::{
client::TlsStream,
@@ -11,7 +11,7 @@ repository = "https://gitlab.com/xmpp-rs/xmpp-rs"
keywords = ["xmpp", "jabber", "chat", "messaging", "bot"]
categories = ["network-programming"]
license = "MPL-2.0"
-edition = "2018"
+edition = "2021"
[dependencies]
tokio-xmpp = "3.4"
@@ -10,7 +10,6 @@ use futures::stream::StreamExt;
use reqwest::{
header::HeaderMap as ReqwestHeaderMap, Body as ReqwestBody, Client as ReqwestClient,
};
-use std::convert::TryFrom;
use std::path::{Path, PathBuf};
use std::sync::{Arc, RwLock};
use tokio::fs::File;
@@ -6,7 +6,6 @@
use super::Agent;
use crate::Event;
-use std::convert::TryFrom;
use std::fs::{self, File};
use std::io::{self, Write};
use tokio_xmpp::parsers::{
@@ -6,7 +6,6 @@
use super::Agent;
use crate::Event;
-use std::convert::TryFrom;
use std::str::FromStr;
use tokio_xmpp::parsers::{
bookmarks2::{Autojoin, Conference},