diff --git a/src/attention.rs b/src/attention.rs
index a2af3a9cd79a9be54cef033e5b7468da397c1ccc..83a871ccfba3a0dc3c31e4e71839b8e157512dde 100644
--- a/src/attention.rs
+++ b/src/attention.rs
@@ -20,7 +20,7 @@ mod tests {
use super::*;
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[test]
diff --git a/src/avatar.rs b/src/avatar.rs
index 0940c33a41ce68a2d13c9e3b63a84ef9113b47d9..c475db82ac767caee63f9300a30717d3dfecef66 100644
--- a/src/avatar.rs
+++ b/src/avatar.rs
@@ -60,7 +60,7 @@ mod tests {
use crate::hashes::Algo;
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/bind.rs b/src/bind.rs
index 16fb487bc7ef00a931d3bcd16a736589c19ec50c..4da3564156abb8abd6025e0fa49fa9442508d11f 100644
--- a/src/bind.rs
+++ b/src/bind.rs
@@ -8,7 +8,7 @@ use crate::util::error::Error;
use crate::iq::{IqResultPayload, IqSetPayload};
use crate::ns;
use jid::{FullJid, Jid};
-use minidom::Element;
+use crate::Element;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/blocking.rs b/src/blocking.rs
index 741d43405412864166729d53f17e0d210ba5cfe6..1ddfa5c9a6d7cddc6212577292308983aefbd009 100644
--- a/src/blocking.rs
+++ b/src/blocking.rs
@@ -8,7 +8,7 @@ use crate::util::error::Error;
use crate::iq::{IqGetPayload, IqResultPayload, IqSetPayload};
use crate::ns;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
generate_empty_element!(
diff --git a/src/bob.rs b/src/bob.rs
index edb0c89103128ef94f5045c05c9ade37f78f9d74..c78f6c34ed274ecf8c06fe498aa14385cb862b92 100644
--- a/src/bob.rs
+++ b/src/bob.rs
@@ -88,7 +88,7 @@ generate_element!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
use std::error::Error as StdError;
diff --git a/src/bookmarks.rs b/src/bookmarks.rs
index c00195a526bd6b8568d94fe241e5660916a8d854..900a3a911656feccdd6bce3c556ac9a892eea570 100644
--- a/src/bookmarks.rs
+++ b/src/bookmarks.rs
@@ -71,7 +71,7 @@ impl Storage {
mod tests {
use super::*;
use crate::util::compare_elements::NamespaceAwareCompare;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/caps.rs b/src/caps.rs
index 32f8f5735edd94fad2c3cb6e217bce745f264c50..96ffa22adefe47fcf24891c7df2aec091ab14cba 100644
--- a/src/caps.rs
+++ b/src/caps.rs
@@ -12,7 +12,7 @@ use crate::ns;
use crate::presence::PresencePayload;
use blake2::VarBlake2b;
use digest::{Digest, Input, VariableOutput};
-use minidom::Element;
+use crate::Element;
use sha1::Sha1;
use sha2::{Sha256, Sha512};
use sha3::{Sha3_256, Sha3_512};
diff --git a/src/carbons.rs b/src/carbons.rs
index b40c1e2e7563c8b1f02e4c3311079c7567cb619e..43047c2b27f511fa8b05e55e69714deeabb868f6 100644
--- a/src/carbons.rs
+++ b/src/carbons.rs
@@ -63,7 +63,7 @@ impl MessagePayload for Sent {}
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/cert_management.rs b/src/cert_management.rs
index 7ed5ca7a4f461bf90cdc9814a2667006cd428cd6..817a01bb284fcdb81cff9a2e36a6e8ec333aa79d 100644
--- a/src/cert_management.rs
+++ b/src/cert_management.rs
@@ -113,7 +113,7 @@ impl IqSetPayload for Revoke {}
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
use std::str::FromStr;
use crate::ns;
diff --git a/src/chatstates.rs b/src/chatstates.rs
index d7ae1e37d8a6dbe94bdf41b76ae6351a4da26b1b..4d8f9a4dbb7edcf17cb0919a6ee785407eb00359 100644
--- a/src/chatstates.rs
+++ b/src/chatstates.rs
@@ -34,7 +34,7 @@ mod tests {
use super::*;
use crate::util::error::Error;
use crate::ns;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[test]
diff --git a/src/component.rs b/src/component.rs
index a0588177fecc45c3c133b319ea4d2fb8238bdcef..b8120ffde74e18f3ae3120489090525d6adfe6f4 100644
--- a/src/component.rs
+++ b/src/component.rs
@@ -43,7 +43,7 @@ impl Handshake {
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/csi.rs b/src/csi.rs
index 0465f94b2014f3d98e050a069052414e3d8647ff..f3a9130d4afca79f24f772517dbbead2de9ef501 100644
--- a/src/csi.rs
+++ b/src/csi.rs
@@ -22,7 +22,7 @@ generate_empty_element!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
use crate::ns;
diff --git a/src/data_forms.rs b/src/data_forms.rs
index 80c9131b32da9798eba8ce64d57505ab9500b5db..37f94dfa541e068694b8830b45eeddab99ddaff0 100644
--- a/src/data_forms.rs
+++ b/src/data_forms.rs
@@ -7,7 +7,7 @@
use crate::util::error::Error;
use crate::media_element::MediaElement;
use crate::ns;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
generate_element!(
diff --git a/src/delay.rs b/src/delay.rs
index e987a4f0e013352c8221ce586f4c67fc49d74df9..e7c7449a73d3e4fafc3832439fbaf520770828ca 100644
--- a/src/delay.rs
+++ b/src/delay.rs
@@ -33,7 +33,7 @@ impl PresencePayload for Delay {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/disco.rs b/src/disco.rs
index 857afaf8c758de96eac503d50249a572475375f5..040ce8c42e9b4d94f242d09092240b3c80f9ca67 100644
--- a/src/disco.rs
+++ b/src/disco.rs
@@ -9,7 +9,7 @@ use crate::util::error::Error;
use crate::iq::{IqGetPayload, IqResultPayload};
use crate::ns;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
generate_element!(
diff --git a/src/ecaps2.rs b/src/ecaps2.rs
index 8722d065050bca5c65d33291c20db39da6c4c962..cfcb340f34a1891465f015736174104d6c51beb8 100644
--- a/src/ecaps2.rs
+++ b/src/ecaps2.rs
@@ -174,7 +174,7 @@ pub fn query_ecaps2(hash: Hash) -> DiscoInfoQuery {
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/eme.rs b/src/eme.rs
index 623a0cd1eb1378c6b24a9fb55e15eb72ee633167..1014318e36eceb79dd3ef0313969aa7d3102596a 100644
--- a/src/eme.rs
+++ b/src/eme.rs
@@ -25,7 +25,7 @@ impl MessagePayload for ExplicitMessageEncryption {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/forwarding.rs b/src/forwarding.rs
index 5286323cfe1bcb21228b886c230acd69f8ca7436..6517d22f9f280d27fb4d339d99312a11efca36df 100644
--- a/src/forwarding.rs
+++ b/src/forwarding.rs
@@ -27,7 +27,7 @@ generate_element!(
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/hashes.rs b/src/hashes.rs
index 9987407a694fb736b4f783606b43e4a1fe6d2586..ae7b61bc2585efc6199ed1b5dc48f8c2c936a498 100644
--- a/src/hashes.rs
+++ b/src/hashes.rs
@@ -191,7 +191,7 @@ impl Deref for Sha1HexAttribute {
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/ibb.rs b/src/ibb.rs
index 8a81b651826903733a271e3aab7c9953302ace4d..719fd8537e66390ba8722dc8c9edaafecad4c6ec 100644
--- a/src/ibb.rs
+++ b/src/ibb.rs
@@ -73,7 +73,7 @@ impl IqSetPayload for Close {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::error::Error as StdError;
use std::convert::TryFrom;
diff --git a/src/ibr.rs b/src/ibr.rs
index 8ced963f259e0c27375efbd4875b7e38d23b354a..b1b15286653395d7b63bb619d342f91ecd3a2bd8 100644
--- a/src/ibr.rs
+++ b/src/ibr.rs
@@ -8,7 +8,7 @@ use crate::data_forms::DataForm;
use crate::util::error::Error;
use crate::iq::{IqGetPayload, IqResultPayload, IqSetPayload};
use crate::ns;
-use minidom::Element;
+use crate::Element;
use std::collections::HashMap;
use std::convert::TryFrom;
diff --git a/src/idle.rs b/src/idle.rs
index cba3698b4db829c20cc6afd7232cd7cef1d7e07b..47d1c18335c7627c7f20449b21eba42cd491927d 100644
--- a/src/idle.rs
+++ b/src/idle.rs
@@ -22,7 +22,7 @@ impl PresencePayload for Idle {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::error::Error as StdError;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/iq.rs b/src/iq.rs
index f3aa7f5d17a8f2f477b4b8ed79bdbdc53d6d876b..644926163157e0e0dedea535fe9adbb5c7db5023 100644
--- a/src/iq.rs
+++ b/src/iq.rs
@@ -9,7 +9,7 @@ use crate::util::error::Error;
use crate::ns;
use crate::stanza_error::StanzaError;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use minidom::IntoAttributeValue;
use std::convert::TryFrom;
diff --git a/src/jid_prep.rs b/src/jid_prep.rs
index ba8c9d84e18a28a3ade067108b53765af97bc84a..5fbc0a0c0f3f7ab29bf42f978cd329ab248af273 100644
--- a/src/jid_prep.rs
+++ b/src/jid_prep.rs
@@ -42,7 +42,7 @@ impl IqResultPayload for JidPrepResponse {}
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
use std::str::FromStr;
diff --git a/src/jingle.rs b/src/jingle.rs
index 7e27ebbc6efe2ff73d628fdbcc4aedb5819db276..4c568bfc55e683fb449cf6a65146829641b882d2 100644
--- a/src/jingle.rs
+++ b/src/jingle.rs
@@ -8,7 +8,7 @@ use crate::util::error::Error;
use crate::iq::IqSetPayload;
use crate::ns;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::collections::BTreeMap;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/jingle_dtls_srtp.rs b/src/jingle_dtls_srtp.rs
index e65c368170a229208e130dc0a9f4d8b4fb63449c..150388f6eac7f3128f079f376964c725b5d42911 100644
--- a/src/jingle_dtls_srtp.rs
+++ b/src/jingle_dtls_srtp.rs
@@ -49,7 +49,7 @@ generate_element!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/jingle_ibb.rs b/src/jingle_ibb.rs
index d1fe61f9d295271c6582a3285f3e178f32cccb70..f0fb90f0f8a12b43758d046b8f1cf7933fa8e99d 100644
--- a/src/jingle_ibb.rs
+++ b/src/jingle_ibb.rs
@@ -25,7 +25,7 @@ attributes: [
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::error::Error as StdError;
use std::convert::TryFrom;
diff --git a/src/jingle_ice_udp.rs b/src/jingle_ice_udp.rs
index 323014380d89a17a26d30390ae96e337e58d075c..51a725ee705ed6b0598e7b6a862a4973bb669950 100644
--- a/src/jingle_ice_udp.rs
+++ b/src/jingle_ice_udp.rs
@@ -91,7 +91,7 @@ generate_element!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
use crate::hashes::Algo;
use crate::jingle_dtls_srtp::Setup;
diff --git a/src/jingle_message.rs b/src/jingle_message.rs
index bf0478cf4801aed8018eae1a115a7069ac3626a1..78bf1db22ca38112eae8b3a363ce9563e8515b9d 100644
--- a/src/jingle_message.rs
+++ b/src/jingle_message.rs
@@ -7,7 +7,7 @@
use crate::util::error::Error;
use crate::jingle::SessionId;
use crate::ns;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
/// Defines a protocol for broadcasting Jingle requests to all of the clients
diff --git a/src/jingle_rtp.rs b/src/jingle_rtp.rs
index 108010d00404ae87fdc3ccbf4086c146ed6660da..5e686ca965eab32e60edaa0391896cc4b515e88a 100644
--- a/src/jingle_rtp.rs
+++ b/src/jingle_rtp.rs
@@ -75,7 +75,7 @@ generate_element!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/jingle_s5b.rs b/src/jingle_s5b.rs
index 17c5d996fb3bb7070cf8f3bf5d442d310883deb4..b6df19ed6d835abb8f7b5e4779366b9ea715d2c9 100644
--- a/src/jingle_s5b.rs
+++ b/src/jingle_s5b.rs
@@ -7,7 +7,7 @@
use crate::util::error::Error;
use crate::ns;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::net::IpAddr;
use std::convert::TryFrom;
diff --git a/src/media_element.rs b/src/media_element.rs
index f632e48c13428c4e722e9871a62019f07d3f2b9b..099dadae5ab37387540ca22170afbec6d5f7eeaa 100644
--- a/src/media_element.rs
+++ b/src/media_element.rs
@@ -47,7 +47,7 @@ mod tests {
use super::*;
use crate::data_forms::DataForm;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::error::Error as StdError;
use std::convert::TryFrom;
diff --git a/src/message.rs b/src/message.rs
index 4a78c6c0b7794e1cda6738af6739718031acd9e0..2c7eb29946abca98cfa5926ab459a109c78e9a78 100644
--- a/src/message.rs
+++ b/src/message.rs
@@ -7,7 +7,7 @@
use crate::util::error::Error;
use crate::ns;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::collections::BTreeMap;
use std::convert::TryFrom;
diff --git a/src/message_correct.rs b/src/message_correct.rs
index 1055af9bd261bc0e3a9cb0b72c0a5996aab92fed..374900f41304c35e879e6d5980a9aa767d20fedf 100644
--- a/src/message_correct.rs
+++ b/src/message_correct.rs
@@ -22,7 +22,7 @@ impl MessagePayload for Replace {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/mood.rs b/src/mood.rs
index f4b529c592ba6e7719e261138c03a735c1d2ff04..4270c5889642bbce1c2f2b631175615a38e14586 100644
--- a/src/mood.rs
+++ b/src/mood.rs
@@ -271,7 +271,7 @@ generate_elem_id!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/muc/muc.rs b/src/muc/muc.rs
index a4d13f8a90a082740069319f6d1e92a041253c52..01688ec3623c4a073a8482fcd7592e520695c3fd 100644
--- a/src/muc/muc.rs
+++ b/src/muc/muc.rs
@@ -96,7 +96,7 @@ mod tests {
use super::*;
use crate::util::compare_elements::NamespaceAwareCompare;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/muc/user.rs b/src/muc/user.rs
index d785d2356cd208adc2a4a22d0a363fb1a66f5128..31157f7681d7b367f98336d24ec11344cb27e93d 100644
--- a/src/muc/user.rs
+++ b/src/muc/user.rs
@@ -8,7 +8,7 @@
use crate::util::error::Error;
use crate::ns;
use jid::FullJid;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
generate_attribute_enum!(
diff --git a/src/nick.rs b/src/nick.rs
index 07f07f770125550a41cbd5e53674ff842f8586c1..20ae7a94c9cf03eb34751f4b87c2647af521fe2e 100644
--- a/src/nick.rs
+++ b/src/nick.rs
@@ -16,7 +16,7 @@ mod tests {
use super::*;
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/occupant_id.rs b/src/occupant_id.rs
index 730652942d9073973f3e7d149796e5155a6b5a7d..418a878bd5729fb44d0d8b266cb32a8083aee383 100644
--- a/src/occupant_id.rs
+++ b/src/occupant_id.rs
@@ -27,7 +27,7 @@ impl PresencePayload for OccupantId {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/ping.rs b/src/ping.rs
index be8ac48c2be8f2ef4625bc683fd89428135dda7e..70663fa3a79d483da66f040b3b2419c4245272f6 100644
--- a/src/ping.rs
+++ b/src/ping.rs
@@ -22,7 +22,7 @@ mod tests {
use super::*;
#[cfg(not(feature = "disable-validation"))]
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[test]
diff --git a/src/pubsub/event.rs b/src/pubsub/event.rs
index 30c118de688830d9b8924de15c7a97a42c7274b0..2228a067dd1ea49af5b73598414e3d3d72a5f5f3 100644
--- a/src/pubsub/event.rs
+++ b/src/pubsub/event.rs
@@ -10,7 +10,7 @@ use crate::util::error::Error;
use crate::ns;
use crate::pubsub::{ItemId, NodeName, Subscription, SubscriptionId, Item as PubSubItem};
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
/// Event wrapper for a PubSub ` `.
diff --git a/src/pubsub/pubsub.rs b/src/pubsub/pubsub.rs
index 875c1989538364ba805e8fac39ffcb8fe525f13f..8faf9c433c2dcece35c7af4c80a5f02a63b8eb98 100644
--- a/src/pubsub/pubsub.rs
+++ b/src/pubsub/pubsub.rs
@@ -10,7 +10,7 @@ use crate::iq::{IqGetPayload, IqResultPayload, IqSetPayload};
use crate::ns;
use crate::pubsub::{NodeName, Subscription, SubscriptionId, Item as PubSubItem};
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
// TODO: a better solution would be to split this into a query and a result elements, like for
diff --git a/src/receipts.rs b/src/receipts.rs
index af40f641e605088bcefd14fbb938f7c5eba8ddd4..e837a17fdcedf984266206c513561f5433dc4847 100644
--- a/src/receipts.rs
+++ b/src/receipts.rs
@@ -32,7 +32,7 @@ impl MessagePayload for Received {}
mod tests {
use super::*;
use crate::ns;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
use crate::util::error::Error;
diff --git a/src/roster.rs b/src/roster.rs
index 6c871ba651d84cfaf9f22668143c68ed732e3219..730da52df65f0b2f3d2e0a0ae9f9c607e3f1caa0 100644
--- a/src/roster.rs
+++ b/src/roster.rs
@@ -94,7 +94,7 @@ mod tests {
use super::*;
use crate::util::compare_elements::NamespaceAwareCompare;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/rsm.rs b/src/rsm.rs
index 8299c9b67132b27d50e43d6df1222d5cc20facf3..169681d1e911f47aed85802c0cae31aaf92e12b0 100644
--- a/src/rsm.rs
+++ b/src/rsm.rs
@@ -6,7 +6,7 @@
use crate::util::error::Error;
use crate::ns;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
/// Requests paging through a potentially big set of items (represented by an
diff --git a/src/sasl.rs b/src/sasl.rs
index e8f3aa6e041727102c112b3ea28ddd9f0130837b..e3f0900576adf0f29af36d679f68e398a16283bd 100644
--- a/src/sasl.rs
+++ b/src/sasl.rs
@@ -7,7 +7,7 @@
use crate::util::error::Error;
use crate::util::helpers::Base64;
use crate::ns;
-use minidom::Element;
+use crate::Element;
use std::collections::BTreeMap;
use std::convert::TryFrom;
@@ -221,7 +221,7 @@ impl From for Element {
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/sm.rs b/src/sm.rs
index b483514023031ca34bdf02fe07ddf1c75daacdfb..a78320f22c54b2a33d64f1be1646a67cd5e580d6 100644
--- a/src/sm.rs
+++ b/src/sm.rs
@@ -145,7 +145,7 @@ generate_empty_element!(
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/stanza_error.rs b/src/stanza_error.rs
index 1f4dbbe16de934e405af539040c7231763341bb5..0bdc2887f1c36a55dc62a7dba7927ee64cf7cdb7 100644
--- a/src/stanza_error.rs
+++ b/src/stanza_error.rs
@@ -9,7 +9,7 @@ use crate::message::MessagePayload;
use crate::ns;
use crate::presence::PresencePayload;
use jid::Jid;
-use minidom::Element;
+use crate::Element;
use std::collections::BTreeMap;
use std::convert::TryFrom;
diff --git a/src/stanza_id.rs b/src/stanza_id.rs
index bbbfb48f2c5bfbfef5f0f4baba3946c3b1d522e0..1ba48f85da115c69d93a790b021b0eee6fd1e418 100644
--- a/src/stanza_id.rs
+++ b/src/stanza_id.rs
@@ -38,7 +38,7 @@ impl MessagePayload for OriginId {}
mod tests {
use super::*;
use crate::util::error::Error;
- use minidom::Element;
+ use crate::Element;
use std::str::FromStr;
use std::convert::TryFrom;
diff --git a/src/stream.rs b/src/stream.rs
index e6f5be009b0dfce49565f359c4b193f4dd43c589..c1b5e1ea6276aedb5523e79e48f345ce5c284ef7 100644
--- a/src/stream.rs
+++ b/src/stream.rs
@@ -73,7 +73,7 @@ impl Stream {
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/time.rs b/src/time.rs
index 601b3a4cd0032a323c90664f9c554328f24e8746..363cd210890eb6de2f0427ad02e4058c17d56fe5 100644
--- a/src/time.rs
+++ b/src/time.rs
@@ -9,7 +9,7 @@ use crate::date::DateTime;
use crate::iq::{IqGetPayload, IqResultPayload};
use crate::ns;
use crate::util::error::Error;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
use std::str::FromStr;
diff --git a/src/tune.rs b/src/tune.rs
index df9b6679865114fffb7c652eb93d28666c3f78b2..ed35357d8bef5e9b4e7fdd7854e6de13bd516e1a 100644
--- a/src/tune.rs
+++ b/src/tune.rs
@@ -7,7 +7,7 @@
use crate::util::error::Error;
use crate::pubsub::PubSubPayload;
use crate::ns;
-use minidom::Element;
+use crate::Element;
use std::convert::TryFrom;
generate_elem_id!(
diff --git a/src/util/compare_elements.rs b/src/util/compare_elements.rs
index df2e4157cc2930f7bc6625280e352407bbe532ae..7494be7bf2fd14a724bb0e683227b143840c8328 100644
--- a/src/util/compare_elements.rs
+++ b/src/util/compare_elements.rs
@@ -51,7 +51,7 @@ impl NamespaceAwareCompare for Element {
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
#[test]
fn simple() {
diff --git a/src/util/macros.rs b/src/util/macros.rs
index fd7f58cc649c2ff3ef5352ff5e6a3a047edb395d..107083a4b9ad7687d13af85de235324ea8b96416 100644
--- a/src/util/macros.rs
+++ b/src/util/macros.rs
@@ -230,9 +230,9 @@ macro_rules! generate_element_enum {
$enum
),+
}
- impl ::std::convert::TryFrom<::minidom::Element> for $elem {
+ impl ::std::convert::TryFrom for $elem {
type Error = crate::util::error::Error;
- fn try_from(elem: ::minidom::Element) -> Result<$elem, crate::util::error::Error> {
+ fn try_from(elem: crate::Element) -> Result<$elem, crate::util::error::Error> {
check_ns_only!(elem, $name, $ns);
check_no_children!(elem, $name);
check_no_attributes!(elem, $name);
@@ -242,9 +242,9 @@ macro_rules! generate_element_enum {
})
}
}
- impl From<$elem> for ::minidom::Element {
- fn from(elem: $elem) -> ::minidom::Element {
- ::minidom::Element::builder(
+ impl From<$elem> for crate::Element {
+ fn from(elem: $elem) -> crate::Element {
+ crate::Element::builder(
match elem {
$($elem::$enum => $enum_name,)+
}
@@ -274,9 +274,9 @@ macro_rules! generate_attribute_enum {
$enum
),+
}
- impl ::std::convert::TryFrom<::minidom::Element> for $elem {
+ impl ::std::convert::TryFrom for $elem {
type Error = crate::util::error::Error;
- fn try_from(elem: ::minidom::Element) -> Result<$elem, crate::util::error::Error> {
+ fn try_from(elem: crate::Element) -> Result<$elem, crate::util::error::Error> {
check_ns_only!(elem, $name, $ns);
check_no_children!(elem, $name);
check_no_unknown_attributes!(elem, $name, [$attr]);
@@ -286,9 +286,9 @@ macro_rules! generate_attribute_enum {
})
}
}
- impl From<$elem> for ::minidom::Element {
- fn from(elem: $elem) -> ::minidom::Element {
- ::minidom::Element::builder($name)
+ impl From<$elem> for crate::Element {
+ fn from(elem: $elem) -> crate::Element {
+ crate::Element::builder($name)
.ns(crate::ns::$ns)
.attr($attr, match elem {
$($elem::$enum => $enum_name,)+
@@ -377,10 +377,10 @@ macro_rules! generate_empty_element {
#[derive(Debug, Clone)]
pub struct $elem;
- impl ::std::convert::TryFrom<::minidom::Element> for $elem {
+ impl ::std::convert::TryFrom for $elem {
type Error = crate::util::error::Error;
- fn try_from(elem: ::minidom::Element) -> Result<$elem, crate::util::error::Error> {
+ fn try_from(elem: crate::Element) -> Result<$elem, crate::util::error::Error> {
check_self!(elem, $name, $ns);
check_no_children!(elem, $name);
check_no_attributes!(elem, $name);
@@ -388,9 +388,9 @@ macro_rules! generate_empty_element {
}
}
- impl From<$elem> for ::minidom::Element {
- fn from(_: $elem) -> ::minidom::Element {
- ::minidom::Element::builder($name)
+ impl From<$elem> for crate::Element {
+ fn from(_: $elem) -> crate::Element {
+ crate::Element::builder($name)
.ns(crate::ns::$ns)
.build()
}
@@ -439,9 +439,9 @@ macro_rules! generate_elem_id {
$(#[$meta])*
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
pub struct $elem(pub $type);
- impl ::std::convert::TryFrom<::minidom::Element> for $elem {
+ impl ::std::convert::TryFrom for $elem {
type Error = crate::util::error::Error;
- fn try_from(elem: ::minidom::Element) -> Result<$elem, crate::util::error::Error> {
+ fn try_from(elem: crate::Element) -> Result<$elem, crate::util::error::Error> {
check_self!(elem, $name, $ns);
check_no_children!(elem, $name);
check_no_attributes!(elem, $name);
@@ -449,9 +449,9 @@ macro_rules! generate_elem_id {
Ok($elem(elem.text().parse()?))
}
}
- impl From<$elem> for ::minidom::Element {
- fn from(elem: $elem) -> ::minidom::Element {
- ::minidom::Element::builder($name)
+ impl From<$elem> for crate::Element {
+ fn from(elem: $elem) -> crate::Element {
+ crate::Element::builder($name)
.ns(crate::ns::$ns)
.append(elem.0.to_string())
.build()
@@ -592,14 +592,14 @@ macro_rules! finish_parse_elem {
macro_rules! generate_serialiser {
($builder:ident, $parent:ident, $elem:ident, Required, String, ($name:tt, $ns:ident)) => {
$builder.append(
- ::minidom::Element::builder($name)
+ crate::Element::builder($name)
.ns(crate::ns::$ns)
.append(::minidom::Node::Text($parent.$elem))
)
};
($builder:ident, $parent:ident, $elem:ident, Option, String, ($name:tt, $ns:ident)) => {
$builder.append_all($parent.$elem.map(|elem| {
- ::minidom::Element::builder($name)
+ crate::Element::builder($name)
.ns(crate::ns::$ns)
.append(::minidom::Node::Text(elem))
})
@@ -607,9 +607,9 @@ macro_rules! generate_serialiser {
};
($builder:ident, $parent:ident, $elem:ident, Option, $constructor:ident, ($name:tt, $ns:ident)) => {
$builder.append_all($parent.$elem.map(|elem| {
- ::minidom::Element::builder($name)
+ crate::Element::builder($name)
.ns(crate::ns::$ns)
- .append(::minidom::Node::Element(::minidom::Element::from(elem)))
+ .append(::minidom::Node::Element(crate::Element::from(elem)))
})
)
};
@@ -617,10 +617,10 @@ macro_rules! generate_serialiser {
$builder.append_all($parent.$elem.into_iter())
};
($builder:ident, $parent:ident, $elem:ident, Present, $constructor:ident, ($name:tt, $ns:ident)) => {
- $builder.append(::minidom::Node::Element(::minidom::Element::builder($name).ns(crate::ns::$ns).build()))
+ $builder.append(::minidom::Node::Element(crate::Element::builder($name).ns(crate::ns::$ns).build()))
};
($builder:ident, $parent:ident, $elem:ident, $_:ident, $constructor:ident, ($name:tt, $ns:ident)) => {
- $builder.append(::minidom::Node::Element(::minidom::Element::from($parent.$elem)))
+ $builder.append(::minidom::Node::Element(crate::Element::from($parent.$elem)))
};
}
@@ -661,10 +661,10 @@ macro_rules! generate_element {
)*
}
- impl ::std::convert::TryFrom<::minidom::Element> for $elem {
+ impl ::std::convert::TryFrom for $elem {
type Error = crate::util::error::Error;
- fn try_from(elem: ::minidom::Element) -> Result<$elem, crate::util::error::Error> {
+ fn try_from(elem: crate::Element) -> Result<$elem, crate::util::error::Error> {
check_self!(elem, $name, $ns);
check_no_unknown_attributes!(elem, $name, [$($attr_name),*]);
$(
@@ -693,9 +693,9 @@ macro_rules! generate_element {
}
}
- impl From<$elem> for ::minidom::Element {
- fn from(elem: $elem) -> ::minidom::Element {
- let mut builder = ::minidom::Element::builder($name)
+ impl From<$elem> for crate::Element {
+ fn from(elem: $elem) -> crate::Element {
+ let mut builder = crate::Element::builder($name)
.ns(crate::ns::$ns);
$(
builder = builder.attr($attr_name, elem.$attr);
diff --git a/src/version.rs b/src/version.rs
index afc617897adf033e0dfd46865165e04af4e551f2..028ce968a2bc70e7a5bf168366958d04109b0061 100644
--- a/src/version.rs
+++ b/src/version.rs
@@ -42,7 +42,7 @@ impl IqResultPayload for VersionResult {}
mod tests {
use super::*;
use crate::util::compare_elements::NamespaceAwareCompare;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]
diff --git a/src/websocket.rs b/src/websocket.rs
index 1092423a10cddb9612823af7865ff81d62774b97..fbc1fb2b7aa983210195e1f4d439b0efb2332020 100644
--- a/src/websocket.rs
+++ b/src/websocket.rs
@@ -72,7 +72,7 @@ impl Open {
#[cfg(test)]
mod tests {
use super::*;
- use minidom::Element;
+ use crate::Element;
use std::convert::TryFrom;
#[cfg(target_pointer_width = "32")]