Commit graph

39 commits

Author SHA1 Message Date
Emmanuel Gil Peyrot
5bf14b0b22 Drop dependency on try_from.
This bumps the minimum supported stable Rust version to 1.34.

The TryFrom and TryInto traits are still reexported to not break the
API, but these reexports are deprecated and will be removed in a future
release.
2019-04-12 11:06:03 +02:00
Emmanuel Gil Peyrot
ae3a5b6725 macros: Remove backwards-compatibility variants introduced in the previous commit. 2019-02-24 20:48:19 +01:00
Emmanuel Gil Peyrot
bcd42a26e3 macros: Use a nicer syntax when declaring attributes.
The previous version had a => required|optional|default token, this was
duplicating information for Option types and didn’t look very good.

This new version looks like a type, which can be either Required<_>,
Option<_> or Default<_>, and means the same thing.
2019-02-24 20:26:42 +01:00
Emmanuel Gil Peyrot
637c3eadd7 Fix clippy lints. 2019-02-21 21:00:58 +01:00
Emmanuel Gil Peyrot
409a1dafa9 Move Error, helpers and macros into a util module. 2019-01-13 12:39:51 +01:00
Emmanuel Gil Peyrot
efd7bd5f2f Run cargo fmt. 2018-12-18 15:32:05 +01:00
Emmanuel Gil Peyrot
6b2dd8fe5e Run cargo fix --edition to move to Edition 2018. 2018-12-18 15:27:30 +01:00
Emmanuel Gil Peyrot
7a2dcbee01 Test struct sizes on 32-bit too. 2018-10-28 13:10:48 +01:00
Emmanuel Gil Peyrot
40aedcf184 Test the size of every struct defined here. 2018-10-26 14:26:16 +02:00
Emmanuel Gil Peyrot
22b424f43a jingle_s5b: Document this module. 2018-08-08 21:07:22 +02:00
Emmanuel Gil Peyrot
7f12d05fd2 Switch allow→deny(missing_docs) for the whole crate. 2018-08-08 18:48:05 +02:00
Emmanuel Gil Peyrot
76877bf85a jingle_s5b: Strenghten the types used by the payloads. 2018-05-28 17:27:21 +02:00
Emmanuel Gil Peyrot
9c598fbdf9 macros: Rename generate_element_with_only_attributes!() into generate_element!(). 2018-05-28 16:42:35 +02:00
Emmanuel Gil Peyrot
f52c28fb35 jingle, jingle_s5b: Add missing checks for unknown attributes and children. 2018-05-15 01:47:12 +02:00
Emmanuel Gil Peyrot
93b018e5ac macros: Remove use requirement on ns. 2018-05-14 16:30:28 +02:00
Emmanuel Gil Peyrot
0d4327eb42 macros: Remove use requirement on minidom::IntoAttributeValue. 2018-05-14 16:12:56 +02:00
Emmanuel Gil Peyrot
040792c242 macros: Remove use requirement on std::str::FromStr. 2018-05-14 16:11:22 +02:00
Emmanuel Gil Peyrot
6bb466eea2 Use check_self!() where it makes sense. 2018-05-12 18:31:11 +02:00
Emmanuel Gil Peyrot
53e23cbf65 jingle_s5b: Make Candidate.host an IpAddr instead of a String. 2018-05-04 21:19:40 +02:00
Emmanuel Gil Peyrot
3310f29704 jingle_s5b: Add constructors and setters. 2018-05-04 19:11:03 +02:00
Emmanuel Gil Peyrot
1e39a4cdd7 jingle_s5b: Actually use the Candidate parser. 2017-10-31 22:31:57 +00:00
Emmanuel Gil Peyrot
929bd577f3 Add a generate_element_with_only_attributes macro, and use it wherever it makes sense. 2017-10-31 17:58:11 +00:00
Astro
1b1661fd82 Introduce comparing with namespace support. 2017-08-19 00:04:18 +01:00
Emmanuel Gil Peyrot
4b3ced042e ecaps2, jingle_s5b: Replace drain() with into_iter(). 2017-07-26 00:04:20 +01:00
Emmanuel Gil Peyrot
cc563b46d2 ecaps2, forwarding, jingle_s5b, mam: Replace complex into expressions with .map(Element::from). 2017-07-20 20:52:25 +01:00
Emmanuel Gil Peyrot
487dbdc6de Replace Into<Element> with From<…> for Element.
This allows Element::from() to work, and since Into<Element> is
automatically implemented for any type implementing From there is no
change to existing code.
2017-07-20 20:36:13 +01:00
Emmanuel Gil Peyrot
1f43cd934b Use TryFrom from the try_from crate, instead of the unstable feature.
This makes xmpp-parsers usable on stable.
2017-07-20 20:03:15 +01:00
Emmanuel Gil Peyrot
4338d9d638 jingle_s5b: Make jid a Jid and not a String. 2017-06-25 22:20:24 +01:00
Emmanuel Gil Peyrot
a219501fed jingle, jingle_ft: Use the new generate_id! macro to simplify Sid/Cid generation. 2017-06-25 22:14:51 +01:00
Emmanuel Gil Peyrot
3ea0c45337 jingle_s5b: Strengthen type safety for ids. 2017-06-25 21:38:58 +01:00
Emmanuel Gil Peyrot
0f297d2d2d Add a generate_attribute! macro, and use it for the common case. 2017-06-14 00:50:57 +01:00
Emmanuel Gil Peyrot
ee34bc1a86 jingle_s5b: Remove unused .to_owned() during serialisation. 2017-05-28 01:47:12 +01:00
Emmanuel Gil Peyrot
6794b34714 Cargo.toml: Update minidom to 0.4.3 to use its new IntoAttributeValue implementation on numbers. 2017-05-27 23:18:15 +01:00
Emmanuel Gil Peyrot
9bd1e7f295 jingle_s5b: Remove the clones. 2017-05-24 23:00:38 +01:00
Emmanuel Gil Peyrot
16e43c0b01 Convert all of the parsers/serialisers into consuming their parameter. 2017-05-23 23:31:33 +01:00
Emmanuel Gil Peyrot
ca9a250efd jingle_s5b: Obtain attributes using the get_attr! macro. 2017-05-21 21:00:34 +01:00
Emmanuel Gil Peyrot
4ec92b16ac Fix most clippy warnings. 2017-05-07 15:23:06 +01:00
Emmanuel Gil Peyrot
bb12168c41 jingle_s5b: Handle the forgotten case of an empty transport element, see §2.2. 2017-05-06 13:54:16 +01:00
Emmanuel Gil Peyrot
828b88e5b2 Add a Jingle SOCKS5 Bytestreams Transport implementation. 2017-05-06 12:49:30 +01:00