Commit graph

241 commits

Author SHA1 Message Date
Emmanuel Gil Peyrot
a48565e171 data_forms: Fix FORM_TYPE, <title/> and <instructions/> serialisation. 2017-06-25 20:13:43 +01:00
Emmanuel Gil Peyrot
13e8507848 chatstates: Improve parsing. 2017-06-25 19:55:55 +01:00
Emmanuel Gil Peyrot
17798190cf error: Implement fmt::Display and error::Error. 2017-06-17 03:36:12 +01:00
Emmanuel Gil Peyrot
6f69f2d7d9 jingle_ft: Parse <date/> into a proper DateTime. 2017-06-16 20:37:48 +01:00
Emmanuel Gil Peyrot
e7f0c45da5 jingle: Fix sid test. 2017-06-14 09:19:06 +01:00
Emmanuel Gil Peyrot
48d340120c jingle: Specialise Sid to get an increased type safety. 2017-06-14 02:28:42 +01:00
Emmanuel Gil Peyrot
216f6f8389 Fix build and compilation. 2017-06-14 01:57:02 +01:00
Emmanuel Gil Peyrot
393402032c jingle: Add a comment. 2017-06-14 00:59:37 +01:00
Emmanuel Gil Peyrot
ebc7582250 Move the Default implementation into more generate_attribute!. 2017-06-14 00:53:18 +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
9955c1131b ns: Remove now useless 'static lifetime. 2017-06-12 22:49:27 +01:00
Emmanuel Gil Peyrot
6c1c9d0851 Add a PubSub event parser and serialiser. 2017-06-11 14:48:31 +01:00
Emmanuel Gil Peyrot
334f2f78f8 data_forms: Implement IntoElements. 2017-06-11 14:42:11 +01:00
Emmanuel Gil Peyrot
88a3f507f6 idle, delay: Don’t import * from chrono::prelude. 2017-06-08 22:46:27 +02:00
Maxime “pep” Buquet
bd19341f69 Muc <x xmlns='http://jabber.org/protocol/muc#user'/> and <status /> parser 2017-05-31 02:54:47 +01:00
Maxime “pep” Buquet
c4c6528197 Muc <x xmlns='http://jabber.org/protocol/muc'/> parser 2017-05-30 22:02:56 +01:00
Emmanuel Gil Peyrot
33994c1042 hashes: Implement Eq and Hash. 2017-05-29 05:14:49 +01:00
Emmanuel Gil Peyrot
08ba164073 roster: Add a test for empty name == no name. 2017-05-29 03:42:11 +01:00
Emmanuel Gil Peyrot
7395e4b88f roster: Make an empty name be None instead.
RFC 6121 §2.4.1:
“Implementation Note: Including an empty 'name' attribute is equivalent
to including no 'name' attribute; both actions set the name to the
empty string.”
2017-05-29 03:40:34 +01:00
Emmanuel Gil Peyrot
073e208f06 iq: Wire up Roster. 2017-05-28 17:12:46 +01:00
Emmanuel Gil Peyrot
9eb8f39a38 presence: Make Show handle the None case, and rename PresenceType to Type. 2017-05-28 17:10:12 +01:00
Emmanuel Gil Peyrot
32bfa84551 presence: Rename Available to None, since that’s what it is. 2017-05-28 16:33:43 +01:00
Emmanuel Gil Peyrot
aae435c4d9 Add a roster parser/serialiser. 2017-05-28 16:30:43 +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
8e1d5e7983 disco: Make xml:lang a proper Option and rename it to lang. 2017-05-27 22:10:00 +01:00
Emmanuel Gil Peyrot
d1a7d222f0 delay: Use chrono to parse the stamp. 2017-05-27 12:29:21 +01:00
Emmanuel Gil Peyrot
bdaced7603 caps, ecaps2: Add a function to create a Disco query from a hash. 2017-05-27 12:22:50 +01:00
Emmanuel Gil Peyrot
42235c42fb hashes: Implement From<Hash> for String. 2017-05-27 12:22:11 +01:00
Emmanuel Gil Peyrot
357568813d presence: Wire up legacy caps. 2017-05-27 12:21:32 +01:00
Emmanuel Gil Peyrot
2c77c4f701 idle: Add the chrono dependency to actually parse dates. 2017-05-27 12:20:19 +01:00
Emmanuel Gil Peyrot
dfdfd8cf71 Add a legacy caps parser and serialiser. 2017-05-25 02:34:03 +01:00
Emmanuel Gil Peyrot
764a7190e9 stanza_error: Simplify with IntoElements. 2017-05-25 01:14:36 +01:00
Emmanuel Gil Peyrot
56b7785942 delay: Remove clones. 2017-05-25 01:04:51 +01:00
Emmanuel Gil Peyrot
f08c81382c data_forms, media_element: Implement forgotten serialisation. 2017-05-25 01:00:17 +01:00
Emmanuel Gil Peyrot
b4e47e9a78 mam: Improve serialisation. 2017-05-25 00:41:13 +01:00
Emmanuel Gil Peyrot
a6b3152add hashes: Make the hash a Vec<u8>, to avoid base64 issues. 2017-05-25 00:30:29 +01:00
Emmanuel Gil Peyrot
070227ea03 eme: Remove two clones. 2017-05-25 00:30:00 +01:00
Emmanuel Gil Peyrot
b172a6e05c ecaps2: Remove the last clone. 2017-05-25 00:04:37 +01:00
Emmanuel Gil Peyrot
9bb65ea8fb jingle_ibb: Simplify parsing and remove clones. 2017-05-24 23:59:45 +01:00
Emmanuel Gil Peyrot
3678d9f0d3 stanza_error: Simplify attribute handling. 2017-05-24 23:56:35 +01:00
Emmanuel Gil Peyrot
898baddd3f disco: Split Into<Element> for Identity and Feature. 2017-05-24 23:47:27 +01:00
Emmanuel Gil Peyrot
17d6959606 jingle: Remove unused clones. 2017-05-24 23:38:44 +01:00
Emmanuel Gil Peyrot
9bd1e7f295 jingle_s5b: Remove the clones. 2017-05-24 23:00:38 +01:00
Emmanuel Gil Peyrot
947c49330f receipts: Parse 'id' using get_attr!(), and make it optional. 2017-05-24 22:43:21 +01:00
Emmanuel Gil Peyrot
47fc116906 media_element: Stop swallowing integer parsing errors. 2017-05-24 22:41:09 +01:00
Emmanuel Gil Peyrot
00f3f3eee6 jingle: Simplify parsing and serialisation. 2017-05-24 22:28:54 +01:00
Emmanuel Gil Peyrot
ecd98251bf rsm: Remove useless clones. 2017-05-24 21:44:35 +01:00
Emmanuel Gil Peyrot
6952f3adfc message_correct: Check for unwanted attributes. 2017-05-24 21:42:29 +01:00
Emmanuel Gil Peyrot
453a3635fd message: Remove extra clones, and simplify Into<Element>. 2017-05-24 21:40:11 +01:00