Use element processor for iq
[?]
Apr 13, 2019, 8:19 PM
RRLRZTMR3RQMZCMPIW5DJYAH5A6GXJMJ6ACOM2DPRYXQMQAGMPVACDependencies
- [2]
LL3D5CXKStaring using element processor - [3]
3FYEOGCIMove additional rarely changed data to separate structure - [4]
UIXIQHDYWait for commands via new processing code - [5]
ACXUIS63Update dependecies - [6]
HOAZX2PBReorganize roster processing. Output roster - [7]
BTOZT4JPUse failure - [8]
TPVUBB3FAnswer to ping requests - [9]
XOAM22TTSimplify xmpp incoming stanzas processing without futures - [10]
3GEU7TC7Welcome to 2018! - [11]
TDOR5XQUAccept destination - [12]
UAT5MV5ODirectly use id for initial roster request - [13]
MAC6WCSXFix pipelines - [14]
DISBBP3IUpdate dependencies - [15]
HKSQO7JZEnable hyper http server and configuration - [16]
ALP2YJIURename XmppState to XmppProcessState - [17]
SYH7UQP6Make xmpp command enum to allow different commands Save subscription ask status. Don't ask if already requested subscription. - [18]
5OBTKGDLUpdate deps - [19]
AGIW6YR3Use shared future for signal everywhere - [20]
EOHEZXX3Move request processing to structure - [21]
X6L47BHQUse different structure for established xmpp connection - [22]
NDDQQP2PUpdate deps - [23]
BWDUANCVSecond part of processing result is only about stop_future - [24]
XGP44R5HRework stopping xmpp connection - [25]
L3D22A5JPrepare to check incoming presence - [26]
QWE26TMVupdate deps - [27]
J7VX56FWToDo - [28]
QTCUURXNAdd additional requirement for command stream - [29]
HCCX7VW6Generate ids from counter - [30]
FCPF2FV6Break connection on iq error - [31]
OGMBXBKPMove online to XmppConnection - [32]
PFC7OJQFQuery roster - [33]
OB3HA2MDUse Client::new_with_jid to parse jid only once - [34]
AA2ZWGRLEnter to MUC - [35]
AYQZ2UIAUpdate deps - [36]
VS6AHRWIMove XMPP to separate dir - [37]
QYY3KRGLUse failure instead Box<dyn Error> - [38]
5IKA4GO7Rename xmpp client field from "inner" to "client" - [39]
IK3YDPTYUpdate deps - [40]
4LRBIGVTShow info about xmpp errors - [41]
FVVPKFTLInitial commit - [42]
UO4WTU6UUpdate dependencies - [43]
OANBCLN5Move xmpp client into XmppState - [44]
EBETRYK7Add counter for id. Check for jid in roster - [45]
PVCRPP3BSome servers don't send to in initial presence - [46]
2VZBEEXAMessages fixed - [47]
CBWCXUZZPrepare adding new items to roster - [48]
UWY5EVZ6Add dummy roster data - [49]
SA2IOFGYAdd items to roster - [50]
DCGEFPRCBetter README - [51]
FWJDW3G5Allow process xmpp incoming stanzas with futures - [52]
HU3NZX5ZProcess self-presence via new processing code - [53]
DKXSFTDYSend stanzas via send queue - [54]
SU4DNVCBStart to processing roster data - [55]
RGOSS73UConvert self-presence to xmpp_parser's type - [56]
JD62RVOJUpdate dependencies - [57]
YZVEEOYTUpdate dependencies - [58]
FV6BJ5K6Send self-presence and store account info in Rc so it willbe used in some future in parallel - [59]
WBU7UOQWRead chatroom from config - [60]
37OMJ4CKSend MUC message - [61]
5A5UVGNMMove receiver closing logic out of xmpp processing - [62]
V5HDBSZMUse jid for receiver address - [63]
UMTLHH77Process commands in the separate function - [64]
77USPY5ISending messages works! - [65]
VW7NVWAGLeave MUC properly - [66]
5Y6YJ6UHAdd shutdown function to make actions before offline - [67]
5GINRCKLSend ping XEP-0199 - [68]
ZI4GJ72VAdd message to xmpp command
Change contents
- edit in src/xmpp/stanzas.rs at line 3
use xmpp_parsers::message::{Body, Message, MessageType};use xmpp_parsers::ping::Ping; - replacement in src/xmpp/stanzas.rs at line 6
use xmpp_parsers::roster::Roster;use xmpp_parsers::roster::{Item, Roster}; - replacement in src/xmpp/stanzas.rs at line 18
let mut get_roster = Iq::from_get(Roster {ver: None,items: vec![],});get_roster.id = Some(id.to_string());get_roster.into()Iq::from_get(id,Roster {items: vec![],ver: None,},).into()}pub fn make_add_roster(id: &str, jid: xmpp_parsers::Jid) -> Element {Iq::from_set(id,Roster {items: vec![Item {jid,name: None,subscription: xmpp_parsers::roster::Subscription::None,ask: xmpp_parsers::roster::Ask::None,groups: vec![],}],ver: None,},).into()}pub fn make_ask_subscribe(jid: xmpp_parsers::Jid) -> Element {let mut presence = Presence::new(PresenceType::Subscribe);presence.to = Some(jid);presence.into()}pub fn make_chat_message(jid: xmpp_parsers::Jid, text: String) -> Element {let mut message = Message::new(Some(jid));message.bodies.insert(String::new(), Body(text));message.type_ = MessageType::Chat;message.into()}pub fn make_muc_presence(id: &str, from: xmpp_parsers::Jid, to: xmpp_parsers::Jid) -> Element {let mut presence = Presence::new(PresenceType::None);presence.from = Some(from);presence.to = Some(to);presence.id = Some(id.to_string());presence.add_payload(xmpp_parsers::muc::Muc::new());presence.into()}pub fn make_muc_message(to: xmpp_parsers::Jid, text: String) -> Element {let mut message = Message::new(Some(to.into_bare_jid()));message.bodies.insert(String::new(), Body(text));message.type_ = MessageType::Groupchat;message.into() - edit in src/xmpp/stanzas.rs at line 73[3.359]
pub fn make_muc_presence_leave(from: xmpp_parsers::Jid, to: xmpp_parsers::Jid) -> Element {let mut presence = Presence::new(PresenceType::Unavailable);presence.from = Some(from);presence.to = Some(to);presence.into()}pub fn make_ping(id: &str, from: xmpp_parsers::Jid) -> Element {let mut ping = Iq::from_get(id, Ping);ping.to = Some(from.clone().into_domain_jid());ping.from = Some(from);ping.into()}pub fn make_pong(id: &str, from: xmpp_parsers::Jid, to: Option<xmpp_parsers::Jid>) -> Element {let mut pong = Iq::from_result(id, None as Option<Roster>);pong.from = Some(from);pong.to = to;pong.into()} - replacement in src/xmpp/mod.rs at line 4
use tokio_xmpp::{Client, Event};use tokio_xmpp::{Client, Event, Packet}; - replacement in src/xmpp/mod.rs at line 8
use std::collections::HashMap;use std::collections::{HashMap, VecDeque}; - edit in src/xmpp/mod.rs at line 11
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> - edit in src/xmpp/mod.rs at line 12
const ID_GET_ROSTER: &str = "id_get_roster0";================================ - edit in src/xmpp/mod.rs at line 13
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< - replacement in src/xmpp/mod.rs at line 16
roster: HashMap<jid::Jid, ()>,_counter: usize,/// known roster dataroster: HashMap<xmpp_parsers::Jid,(xmpp_parsers::roster::Subscription,xmpp_parsers::roster::Ask,),>,/// ids countercounter: usize,/// map from id of adding item to roster and jid of itempending_add_roster_ids: HashMap<String, xmpp_parsers::Jid>,/// stanzas to sendsend_queue: VecDeque<minidom::Element>,/// outgoing mailboxoutgoing_mailbox: HashMap<xmpp_parsers::Jid, Vec<String>>,/// muc id to muc jidmucs: HashMap<String, xmpp_parsers::Jid>, - replacement in src/xmpp/mod.rs at line 42
incoming: element_processor::Processor<XmppConnection, (), xmpp_parsers::Element>,incoming: element_processor::Processor<XmppConnection, bool, xmpp_parsers::Element>, - replacement in src/xmpp/mod.rs at line 47
let mut incoming =element_processor::Processor::new(&|_, e| warn!("Unknown stanza {:#?}", e));let mut incoming = element_processor::Processor::new(&|_, e| {warn!("Unknown stanza {:#?}", e);true});incoming.register(&XmppConnection::incoming_iq_processing); - replacement in src/xmpp/mod.rs at line 110
as Box<Future<Item = _, Error = _>>as Box<dyn Future<Item = _, Error = _>> - replacement in src/xmpp/mod.rs at line 118
let res_client = Client::new(&account.jid, &account.password);match res_client {Err(_e) => Box::new(future::ok(future::Loop::Continue(account)))as Box<Future<Item = _, Error = _>>,Ok(client) => {info!("xmpp initialized");let client =Client::new_with_jid(account.jid.clone(), &account.password);info!("xmpp initialized"); - replacement in src/xmpp/mod.rs at line 122
let stop_future2 = stop_future.clone();let stop_future3 = stop_future.clone();let stop_future2 = stop_future.clone();let stop_future3 = stop_future.clone();let stop_future4 = stop_future.clone(); - replacement in src/xmpp/mod.rs at line 126
// future to wait for onlineBox::new(XmppConnection {state: XmppState {client,data: std::default::Default::default(),},account,}.processing(XmppConnection::online, stop_future.clone()).map_err(|(acc, _)| acc).and_then(|(conn, r)| match r {Ok(Either::A(_)) => future::ok(conn),Ok(Either::B(_)) => future::err(conn.account),Err(_e) => future::err(conn.account),}).and_then(|conn| conn.initial_roster(stop_future2)).and_then(|conn| conn.self_presence(stop_future3)).then(|r| match r {Ok(conn) => future::ok(future::Loop::Break(conn)),Err(acc) => future::ok(future::Loop::Continue(acc)),},),)// future to wait for onlineBox::new(XmppConnection {state: XmppState {client,data: std::default::Default::default(),},account, - replacement in src/xmpp/mod.rs at line 135
}.processing(XmppConnection::online, stop_future.clone()).map_err(|(acc, _)| acc).and_then(|(conn, r)| match r {Ok(Either::A(_)) => future::ok(conn),Ok(Either::B(_)) => future::err(conn.account),Err(_e) => future::err(conn.account),}).and_then(|conn| conn.initial_roster(stop_future2)).and_then(|conn| conn.self_presence(stop_future3)).and_then(|conn| conn.enter_mucs(stop_future4)).then(|r| match r {Ok(conn) => future::ok(future::Loop::Break(conn)),Err(acc) => future::ok(future::Loop::Continue(acc)),}),) - replacement in src/xmpp/mod.rs at line 168
fn xmpp_processing(self,event: &Event,) -> impl Future<Item = Self, Error = std::rc::Rc<config::Account>> {/// Returns false on error to disconnectfn xmpp_processing(&mut self, event: &Event) -> bool { - replacement in src/xmpp/mod.rs at line 173[2.3369]→[2.3369:3437](∅→∅),[2.3437]→[3.4606:4712](∅→∅),[3.4606]→[3.4606:4712](∅→∅),[3.4712]→[2.3438:3603](∅→∅)
processors.incoming.process(self, stanza.clone());info!("Incoming xmpp event: {:?}", stanza);let stanza = stanza.clone();use try_from::TryInto;if let Some(_iq) = stanza.try_into().ok() as Option<xmpp_parsers::iq::Iq> {}future::ok(self)processors.incoming.process(self, stanza.clone()) - replacement in src/xmpp/mod.rs at line 175
Event::Online => future::ok(self),Event::Online => true, - replacement in src/xmpp/mod.rs at line 178
future::err(self.account)false}}}fn incoming_iq_processing(&mut self, iq: xmpp_parsers::iq::Iq) -> bool {use std::convert::TryInto;if let Some((_, jid)) = self.state.data.pending_add_roster_ids.remove_entry(&iq.id) {if let xmpp_parsers::iq::IqType::Result(None) = iq.payload {if self.state.data.roster.contains_key(&jid) {info!("Jid {} updated to roster", jid);} else {info!("Jid {} added in roster", jid);self.state.data.roster.insert(jid.clone(),(xmpp_parsers::roster::Subscription::None,xmpp_parsers::roster::Ask::None,),);}self.process_jid(&jid);} else {warn!("Wrong payload when adding {} to roster: {:?}",jid, iq.payload);}}match iq.payload {xmpp_parsers::iq::IqType::Set(element) => {if let Some(roster) =element.try_into().ok() as Option<xmpp_parsers::roster::Roster>{for i in roster.items {if let Some(ref mut rdata) = self.state.data.roster.get_mut(&i.jid) {info!("Update {} in roster", i.jid);rdata.0 = i.subscription;rdata.1 = i.ask;} else {info!("Add {} to roster", i.jid);self.state.data.roster.insert(i.jid.clone(), (i.subscription, i.ask));}self.process_jid(&i.jid);}}}xmpp_parsers::iq::IqType::Error(e) => {error!("iq error: {:?}", e);return false;}xmpp_parsers::iq::IqType::Get(element) => {if let Some(_ping) = element.try_into().ok() as Option<xmpp_parsers::ping::Ping> {let pong = stanzas::make_pong(&iq.id, self.state.client.jid.clone(), iq.from);self.state.data.send_queue.push_back(pong);} - edit in src/xmpp/mod.rs at line 238
_ => (), // ignore - edit in src/xmpp/mod.rs at line 240
true - replacement in src/xmpp/mod.rs at line 266
state: XmppState { client, data },state: XmppState { client, mut data }, - replacement in src/xmpp/mod.rs at line 269
client.into_future().select2(stop_future).then(move |r| match r {Ok(Either::A(((event, client), b))) => {if let Some(event) = event {let xmpp = XmppConnection {state: XmppState { client, data },account,};Box::new(xmpp.xmpp_processing(&event).then(|r| match r {Ok(mut xmpp) => match stop_condition(&mut xmpp, event) {Ok(true) => future::ok(future::Loop::Break((xmpp,Ok(Either::A(b)),))),Ok(false) => future::ok(future::Loop::Continue((xmpp,b,stop_condition,))),Err(_e) => future::err((xmpp.account, Ok(Either::A(b)))),},Err(account) => future::err((account, Ok(Either::A(b)))),}))as Box<dyn Future<Item = _, Error = _>>} else {Box::new(future::err((account, Ok(Either::A(b)))))}}Ok(Either::B((t, a))) => Box::new(if let Some(client) = a.into_inner() {future::ok(future::Loop::Break((XmppConnection {state: XmppState { client, data },account,},Ok(Either::B(t)),)))} else {future::err((account, Ok(Either::B(t))))}),Err(Either::A((e, b))) => {warn!("XMPP error: {}", e.0);Box::new(future::err((account, Ok(Either::A(b)))))}Err(Either::B((e, a))) => Box::new(if let Some(client) = a.into_inner() {future::ok(future::Loop::Break((XmppConnection {state: XmppState { client, data },account,},Err(e),)))} else {future::err((account, Err(e)))}),})if let Some(send_element) = data.send_queue.pop_front() {use tokio::prelude::Sink;info!("Sending {:?}", send_element);Box::new(client.send(Packet::Stanza(send_element)).select2(stop_future).then(move |r| match r {Ok(Either::A((client, b))) => {Box::new(future::ok(future::Loop::Continue((XmppConnection {state: XmppState { client, data },account,},b,stop_condition,))))as Box<dyn Future<Item = _, Error = _>>}Ok(Either::B((t, a))) => Box::new(a.then(|r| match r {Ok(client) => future::ok(future::Loop::Break((XmppConnection {state: XmppState { client, data },account,},Ok(Either::B(t)),))),Err(se) => {warn!("XMPP sending error: {}", se);future::err((account, Ok(Either::B(t))))}})),Err(Either::A((e, b))) => {warn!("XMPP sending error: {}", e);Box::new(future::err((account, Ok(Either::A(b)))))}Err(Either::B((e, a))) => Box::new(a.then(|r| match r {Ok(client) => future::ok(future::Loop::Break((XmppConnection {state: XmppState { client, data },account,},Err(e),))),Err(se) => {warn!("XMPP sending error: {}", se);future::err((account, Err(e)))}})),}),) as Box<dyn Future<Item = _, Error = _>>} else {Box::new(client.into_future().select2(stop_future).then(move |r| match r {Ok(Either::A(((event, client), b))) => {if let Some(event) = event {let mut xmpp = XmppConnection {state: XmppState { client, data },account,};if xmpp.xmpp_processing(&event) {match stop_condition(&mut xmpp, event) {Ok(true) => future::ok(future::Loop::Break((xmpp,Ok(Either::A(b)),))),Ok(false) => future::ok(future::Loop::Continue((xmpp,b,stop_condition,))),Err(_e) => {future::err((xmpp.account, Ok(Either::A(b))))}}} else {future::err((xmpp.account, Ok(Either::A(b))))}} else {future::err((account, Ok(Either::A(b))))}}Ok(Either::B((t, a))) => {if let Some(client) = a.into_inner() {future::ok(future::Loop::Break((XmppConnection {state: XmppState { client, data },account,},Ok(Either::B(t)),)))} else {future::err((account, Ok(Either::B(t))))}}Err(Either::A((e, b))) => {warn!("XMPP error: {}", e.0);future::err((account, Ok(Either::A(b))))}Err(Either::B((e, a))) => {if let Some(client) = a.into_inner() {future::ok(future::Loop::Break((XmppConnection {state: XmppState { client, data },account,},Err(e),)))} else {future::err((account, Err(e)))}}}),)} - replacement in src/xmpp/mod.rs at line 413
fn process_initial_roster(&mut self, event: Event) -> Result<bool, ()> {fn process_initial_roster(&mut self, event: Event, id_init_roster: &str) -> Result<bool, ()> { - replacement in src/xmpp/mod.rs at line 415
use try_from::TryInto;use std::convert::TryInto; - replacement in src/xmpp/mod.rs at line 418
if let Some(id) = iq.id {if id == ID_GET_ROSTER {match iq.payload {xmpp_parsers::iq::IqType::Error(_e) => {error!("Get error instead of roster");Err(())}xmpp_parsers::iq::IqType::Result(Some(result)) => {match result.try_into()as Result<xmpp_parsers::roster::Roster, _>{Ok(roster) => {self.state.data.roster.clear();info!("Got first roster:");for i in roster.items {info!(" >>> {:?}", i);self.state.data.roster.insert(i.jid, ());}Ok(true)}Err(e) => {error!("Cann't parse roster: {}", e);Err(())if iq.id == id_init_roster {match iq.payload {xmpp_parsers::iq::IqType::Error(_e) => {error!("Get error instead of roster");Err(())}xmpp_parsers::iq::IqType::Result(Some(result)) => {match result.try_into() as Result<xmpp_parsers::roster::Roster, _> {Ok(roster) => {self.state.data.roster.clear();info!("Got first roster:");for i in roster.items {info!(" >>> {:?}", i);self.state.data.roster.insert(i.jid, (i.subscription, i.ask)); - edit in src/xmpp/mod.rs at line 436
Ok(true) - edit in src/xmpp/mod.rs at line 438
Err(e) => {error!("Cann't parse roster: {}", e);Err(())} - replacement in src/xmpp/mod.rs at line 443
_ => {error!("Unknown result of roster");Err(())}}_ => {error!("Unknown result of roster");Err(()) - edit in src/xmpp/mod.rs at line 448
} else {Ok(false) - replacement in src/xmpp/mod.rs at line 450
error!("Iq stanza without id");Err(())Ok(false) - replacement in src/xmpp/mod.rs at line 471
state: XmppState { client, data },state: XmppState { client, mut data }, - replacement in src/xmpp/mod.rs at line 475
let get_roster = stanzas::make_get_roster(ID_GET_ROSTER);data.counter += 1;let id_init_roster = format!("id_init_roster{}", data.counter);let get_roster = stanzas::make_get_roster(&id_init_roster); - replacement in src/xmpp/mod.rs at line 482
.send(get_roster).send(Packet::Stanza(get_roster)) - replacement in src/xmpp/mod.rs at line 492
.processing(XmppConnection::process_initial_roster, stop_future).processing(move |conn, event| conn.process_initial_roster(event, &id_init_roster),stop_future,) - replacement in src/xmpp/mod.rs at line 524
.send(presence).send(Packet::Stanza(presence)) - replacement in src/xmpp/mod.rs at line 537
if s.name() == "presence"&& s.attr("from").map_or(false, |f| f == conn.account.jid)&& s.attr("to").map_or(false, |f| f == conn.account.jid){Ok(true)} else {Ok(false)use std::convert::TryInto;match s.try_into() as Result<xmpp_parsers::presence::Presence, _> {Ok(presence) => {Ok(presence.from.as_ref() == Some(&conn.state.client.jid))}Err(e) => {warn!("Not a self-presence: {}", e);Ok(false)} - replacement in src/xmpp/mod.rs at line 563
fn process_command(self,cmd: &XmppCommand,) -> impl Future<Item = Self, Error = std::rc::Rc<config::Account>> {fn process_jid(&mut self, xmpp_to: &xmpp_parsers::Jid) {if let Some(ref mut mailbox) = self.state.data.outgoing_mailbox.get_mut(xmpp_to) {if !mailbox.is_empty() {if let Some(ref mut rdata) = self.state.data.roster.get_mut(xmpp_to) {info!("Jid {} in roster", xmpp_to);let sub_to = match rdata.0 {xmpp_parsers::roster::Subscription::To => true,xmpp_parsers::roster::Subscription::Both => true,_ => false,};if sub_to {info!("Subscribed to {}", xmpp_to);self.state.data.send_queue.extend(mailbox.drain(..).map(|message| {stanzas::make_chat_message(xmpp_to.clone(), message)}),);} else if rdata.1 == xmpp_parsers::roster::Ask::None {info!("Not subscribed to {}", xmpp_to);self.state.data.send_queue.push_back(stanzas::make_ask_subscribe(xmpp_to.clone()));}} else {info!("Jid {} not in roster", xmpp_to);self.state.data.counter += 1;let id_add_roster = format!("id_add_roster{}", self.state.data.counter);let add_roster = stanzas::make_add_roster(&id_add_roster, xmpp_to.clone());self.state.data.pending_add_roster_ids.insert(id_add_roster, xmpp_to.clone());info!("Adding jid to roster... {:?}", add_roster);self.state.data.send_queue.push_back(add_roster);}}}}fn process_command(&mut self, cmd: XmppCommand) { - replacement in src/xmpp/mod.rs at line 607
if let Some(_jid_data) = self.state.data.roster.get(&cmd.xmpp_to) {info!("Jid {} in roster", cmd.xmpp_to);} else {info!("Jid {} not in roster", cmd.xmpp_to);match cmd {XmppCommand::Chat { xmpp_to, message } => {self.state.data.outgoing_mailbox.entry(xmpp_to.clone()).or_default().push(message);self.process_jid(&xmpp_to);}XmppCommand::Chatroom { muc_id, message } => {if let Some(muc) = self.state.data.mucs.get(&muc_id) {self.state.data.send_queue.push_back(stanzas::make_muc_message(muc.clone(), message));} else {error!("Not found MUC {}", muc_id);}}XmppCommand::Ping => {self.state.data.counter += 1;let id_ping = format!("id_ping{}", self.state.data.counter);let ping = stanzas::make_ping(&id_ping, self.state.client.jid.clone());self.state.data.send_queue.push_back(ping);} - replacement in src/xmpp/mod.rs at line 634
future::ok(self)}fn shutdown(self) -> impl Future<Item = (), Error = failure::Error> {info!("Shutdown connection");let XmppConnection { account, state } = self;stream::iter_ok(state.data.mucs.values().map(std::clone::Clone::clone).collect::<Vec<_>>(),).fold(state, move |XmppState { client, data }, muc_jid| {let muc_presence =stanzas::make_muc_presence_leave(account.jid.clone(), muc_jid.clone());info!("Sending muc leave presence... {:?}", muc_presence);use tokio::prelude::Sink;client.send(Packet::Stanza(muc_presence)).map_err(|e| {error!("Error on send muc presence: {}", e);e}).and_then(|client| future::ok(XmppState { client, data }))}).map(|_| ())}fn enter_mucs<F, E>(self,_stop_future: F,) -> impl Future<Item = Self, Error = std::rc::Rc<config::Account>>whereF: Future<Error = E> + 'static,E: Into<failure::Error> + 'static,{let XmppConnection { account, state } = self;let account2 = account.clone();let account3 = account.clone();stream::iter_ok(account.chatrooms.clone()).fold(state, move |XmppState { client, mut data }, muc_jid| {data.counter += 1;let id_muc_presence = format!("id_muc_presence{}", data.counter);let muc_presence = stanzas::make_muc_presence(&id_muc_presence,account2.jid.clone(),muc_jid.1.clone(),);info!("Sending muc presence... {:?}", muc_presence);let account4 = account2.clone();use tokio::prelude::Sink;client.send(Packet::Stanza(muc_presence)).map_err(|e| {error!("Error on send muc presence: {}", e);account4}).and_then(|client| {data.mucs.insert(muc_jid.0, muc_jid.1);future::ok(XmppState { client, data })})}).map(|state| XmppConnection {account: account3,state,}) - replacement in src/xmpp/mod.rs at line 711
pub struct XmppCommand;pub enum XmppCommand {Chat {xmpp_to: xmpp_parsers::Jid,message: String,},Chatroom {muc_id: String,message: String,},Ping,} - replacement in src/xmpp/mod.rs at line 761
Ok((conn, r)) => match r {Ok(Either::A(f)) => Box::new(if let Some(cmd_recv) = f.into_inner() {future::ok(future::Loop::Continue(XmppProcessState {cmd_recv,signal,conn: conn.into(),}))} else {future::err(format_err!("Command receiver is gone"))})as Box<dyn Future<Item = _, Error = _>>,Ok((mut conn, r)) => match r {Ok(Either::A(f)) => {if let Some(cmd_recv) = f.into_inner() {future::ok(future::Loop::Continue(XmppProcessState {cmd_recv,signal,conn: conn.into(),}))} else {error!("Command receiver is gone");future::ok(future::Loop::Break(Some(conn)))}} - replacement in src/xmpp/mod.rs at line 776
Box::new(conn.process_command(&cmd).then(|r| {future::ok(future::Loop::Continue(XmppProcessState {cmd_recv,signal,conn: match r {Ok(conn) => conn.into(),Err(account) => account.into(),},}))conn.process_command(cmd);future::ok(future::Loop::Continue(XmppProcessState {cmd_recv,signal,conn: conn.into(), - edit in src/xmpp/mod.rs at line 783
as Box<dyn Future<Item = _, Error = _>> - replacement in src/xmpp/mod.rs at line 784
Box::new(future::ok(future::Loop::Break(())))future::ok(future::Loop::Break(Some(conn))) - replacement in src/xmpp/mod.rs at line 787
Err(_) => Box::new(future::err(format_err!("Command receiver is broken"))),Err(_) => {error!("Command receiver is broken");future::ok(future::Loop::Break(Some(conn)))} - replacement in src/xmpp/mod.rs at line 792
Err((account, r)) => Box::new(match r {Err((account, r)) => match r { - replacement in src/xmpp/mod.rs at line 813
future::ok(future::Loop::Break(()))future::ok(future::Loop::Break(None)) - replacement in src/xmpp/mod.rs at line 817
}),}, - edit in src/xmpp/mod.rs at line 820
}).and_then(|opt_conn| {if let Some(conn) = opt_conn {Box::new(conn.shutdown()) as Box<dyn Future<Item = (), Error = _>>} else {Box::new(future::ok(()))} - replacement in src/xmpp/element_processor.rs at line 0
pub struct Processor<S: 'static, T: 'static, E: Clone + 'static> {processors: Vec<Box<dyn Fn(&mut S, E) -> Option<T>>>,default: &'static dyn Fn(&mut S, E) -> T,}impl<S: 'static, T: 'static, E: Clone + 'static> Processor<S, T, E> {pub fn new<F>(f: &'static F) -> Processor<S, T, E>whereF: Fn(&mut S, E) -> T + 'static,{Processor {processors: vec![],default: f,}}pub fn register<F, A>(&mut self, f: &'static F)whereF: Fn(&mut S, A) -> T + 'static,A: std::convert::TryFrom<E>,{self.processors.push(Box::new(move |s, e: E| {use std::convert::TryInto;(e.try_into().ok() as Option<A>).map(|a| f(s, a))}));}pub fn process(&self, s: &mut S, e: E) -> T {for processor in self.processors.iter() {match processor(s, e.clone()) {Some(t) => return t,None => continue,}}(*self.default)(s, e)}}[2.11301]type Func<S, T, E> = dyn Fn(&mut S, E) -> T;pub struct Processor<S: 'static, T: 'static, E: Clone + 'static> {processors: Vec<Box<Func<S, Option<T>, E>>>,default: &'static Func<S, T, E>,}impl<S: 'static, T: 'static, E: Clone + 'static> Processor<S, T, E> {pub fn new<F>(f: &'static F) -> Processor<S, T, E>whereF: Fn(&mut S, E) -> T + 'static,{Processor {processors: vec![],default: f,}}pub fn register<F, A>(&mut self, f: &'static F)whereF: Fn(&mut S, A) -> T + 'static,A: std::convert::TryFrom<E>,{self.processors.push(Box::new(move |s, e: E| {use std::convert::TryInto;(e.try_into().ok() as Option<A>).map(|a| f(s, a))}));}pub fn process(&self, s: &mut S, e: E) -> T {for processor in self.processors.iter() {match processor(s, e.clone()) {Some(t) => return t,None => continue,}}(*self.default)(s, e)}} - edit in src/main.rs at line 2
#![deny(bare_trait_objects)] - edit in src/main.rs at line 8
extern crate minidom; - edit in src/main.rs at line 22
use hyper::service::service_fn; - replacement in src/main.rs at line 27
use tokio::prelude::Sink;use tokio::prelude::{Future, Sink, Stream}; - edit in src/main.rs at line 37
fn body_to_string(req: Request<Body>) -> impl Future<Item = String, Error = failure::Error> {req.into_body().map_err(std::convert::Into::into).fold(String::new(), |mut acc, ch| {std::str::from_utf8(&*ch).map(|s| {acc.push_str(s);acc})})}struct ServiceCmd {cmd_send: tokio_channel::mpsc::Sender<XmppCommand>,}impl hyper::service::Service for ServiceCmd {type ReqBody = Body;type ResBody = Body;type Error = failure::Error;type Future =Box<dyn Future<Item = Response<Self::ResBody>, Error = Self::Error> + Send + 'static>;fn call(&mut self, req: Request<Self::ReqBody>) -> Self::Future {let xmpp_to_opt = req.headers().get("X-XMPP-To");let xmpp_to_res: Result<xmpp_parsers::Jid, failure::Error> = xmpp_to_opt.map_or_else(|| Err(format_err!("No X-XMPP-To header")),|xmpp_to| {std::str::from_utf8(xmpp_to.as_bytes()).map_err(std::convert::Into::into).and_then(|s| std::str::FromStr::from_str(s).map_err(std::convert::Into::into))},);let xmpp_muc_opt = req.headers().get("X-XMPP-Muc").map(|h| h.to_str().map(std::string::ToString::to_string)); - edit in src/main.rs at line 76
match (xmpp_muc_opt, xmpp_to_res) {(None, Err(err)) => {warn!("Unknown destination: {}", err);Box::new(tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from(format!("Unknown destination: {}", err))).map_err(std::convert::Into::into),)) as Box<dyn Future<Item = _, Error = _> + Send + 'static>}(None, Ok(xmpp_to)) => {info!("Got request. Reading body...");let cmd_send = self.cmd_send.clone();Box::new(body_to_string(req).and_then(move |message: String| {if !message.is_empty() {Box::new(cmd_send.clone().send(XmppCommand::Chat { xmpp_to, message }).then(|r| match r {Ok(_) => tokio::prelude::future::ok(Response::new(Body::from("Accepted",))),Err(e) => {error!("Command sent error: {}", e);tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from(format!("Command sent error: {}",e))),)}}).map_err(std::convert::Into::into),)} else {warn!("Empty message");Box::new(tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from("Empty message")).map_err(std::convert::Into::into),))as Box<dyn Future<Item = _, Error = _> + Send + 'static>}})) as Box<dyn Future<Item = _, Error = _> + Send + 'static>}(Some(Ok(muc_id)), _) => {info!("Got MUC request. Reading body...");let cmd_send = self.cmd_send.clone();Box::new(body_to_string(req).and_then(move |message: String| {if !message.is_empty() {Box::new(cmd_send.clone().send(XmppCommand::Chatroom { muc_id, message }).then(|r| match r {Ok(_) => tokio::prelude::future::ok(Response::new(Body::from("Accepted",))),Err(e) => {error!("Command sent error: {}", e);tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from(format!("Command sent error: {}",e))),)}}).map_err(std::convert::Into::into),)} else {warn!("Empty message");Box::new(tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from("Empty message")).map_err(std::convert::Into::into),))as Box<dyn Future<Item = _, Error = _> + Send + 'static>}})) as Box<dyn Future<Item = _, Error = _> + Send + 'static>}(Some(Err(err)), _) => {warn!("Unknown MUC destination: {}", err);Box::new(tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from(format!("Unknown MUC destination: {}", err))).map_err(std::convert::Into::into),)) as Box<dyn Future<Item = _, Error = _> + Send + 'static>}}}}struct MakeServiceCmd {cmd_send: tokio_channel::mpsc::Sender<XmppCommand>,}impl<Ctx> hyper::service::MakeService<Ctx> for MakeServiceCmd {type ReqBody = Body;type ResBody = Body;type Error = failure::Error;type Service = ServiceCmd;type Future = tokio::prelude::future::FutureResult<ServiceCmd, Self::MakeError>;type MakeError = hyper::http::Error;fn make_service(&mut self, _ctx: Ctx) -> Self::Future {tokio::prelude::future::ok(ServiceCmd {cmd_send: self.cmd_send.clone(),})}} - replacement in src/main.rs at line 229
.serve(move || {let cmd_send = cmd_send.clone();service_fn(move |_req: Request<Body>| {info!("Got request");cmd_send.clone().send(XmppCommand {}).then(|r| match r {Ok(_) => tokio::prelude::future::ok(Response::new(Body::from("Accepted"))),Err(e) => {error!("Command sent error: {}", e);tokio::prelude::future::result(Response::builder().status(hyper::StatusCode::BAD_REQUEST).body(Body::from(format!("Command sent error: {}", e))),)}})}).serve(MakeServiceCmd {cmd_send: cmd_send.clone(), - edit in src/main.rs at line 237
if let Some(ping) = config.account.ping {let ping = tokio::timer::Interval::new_interval(std::time::Duration::from_secs(ping));rt.spawn(ping.map_err(|e| {error!("Ping error: {}", e);}).for_each(move |_| {cmd_send.clone().send(XmppCommand::Ping).map_err(|e| {error!("Ping command error: {}", e);}).map(|_| ())}).select(ctrl_c.clone().map(|_| ()).map_err(|e| error!("ping server error: {}", e)),).map(|_| ()).map_err(|_| ()),);} - edit in src/config.rs at line 0
use std::collections::HashMap; - replacement in src/config.rs at line 7
pub jid: String,#[serde(deserialize_with = "deserialize_jid")]pub jid: xmpp_parsers::Jid, - edit in src/config.rs at line 10
#[serde(default, deserialize_with = "deserialize_jid_map")]pub chatrooms: HashMap<String, xmpp_parsers::Jid>,pub ping: Option<u64>, - edit in src/config.rs at line 30
}fn deserialize_jid<'de, D>(deserializer: D) -> Result<xmpp_parsers::Jid, D::Error>whereD: serde::Deserializer<'de>,{use serde::Deserialize;let s = String::deserialize(deserializer)?;std::str::FromStr::from_str(&s).map_err(serde::de::Error::custom)}fn deserialize_jid_map<'de, D>(deserializer: D,) -> Result<HashMap<String, xmpp_parsers::Jid>, D::Error>whereD: serde::Deserializer<'de>,{use serde::Deserialize;let s = HashMap::<String, String>::deserialize(deserializer)?;let size = s.len();s.into_iter().map(|(k, v)| (k, std::str::FromStr::from_str(&v))).take_while(|(_k, r)| r.is_ok()).fold(Ok(HashMap::with_capacity(size)), |res, (k, r)| match res {Ok(mut res) => match r {Ok(v) => {res.insert(k, v);Ok(res)}Err(e) => Err(e),},Err(e) => Err(e),}).map_err(serde::de::Error::custom) - edit in README.md at line 0[3.76]
### XMPP client daemon#### Sending messages```curl http://localhost:8083/ -H "X-XMPP-To: some@domain.org" -d "Test"```#### Sending messages to MUC```curl http://localhost:8083/ -H "X-XMPP-Muc: smac" -d "Test"``` - replacement in Cargo.toml at line 12
tokio-xmpp = "0.2"failure = "0.1"tokio-xmpp = "1.0.0"failure = "0.1.5" - replacement in Cargo.toml at line 15
toml = "0.4"toml = "0.5" - replacement in Cargo.toml at line 21
minidom = "=0.9.1" # dependency of tokio-xmppxmpp-parsers = "0.11"try_from = "=0.2.2" # dependency of xmpp-parsers[3.6425]xmpp-parsers = "0.13"minidom = "=0.10.0" # xmpp-parsers - edit in Cargo.lock at line 0
# This file is automatically @generated by Cargo.# It is not intended for manual editing. - edit in Cargo.lock at line 3
name = "MacTypes-sys"version = "2.1.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)",][[package]] - replacement in Cargo.lock at line 12
version = "0.6.9"version = "0.7.3" - replacement in Cargo.lock at line 15
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)","memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 23
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 28
version = "0.3.6"version = "0.3.10" - edit in Cargo.lock at line 32[2.13658]→[2.13658:13694](∅→∅),[3.13512]→[3.1388:1466](∅→∅),[3.19557]→[3.1388:1466](∅→∅),[2.13694]→[3.1388:1466](∅→∅),[3.14414]→[3.1388:1466](∅→∅),[3.4795]→[3.1388:1466](∅→∅),[3.6772]→[3.1388:1466](∅→∅),[3.1388]→[3.1388:1466](∅→∅)
name = "arrayref"version = "0.3.5"source = "registry+https://github.com/rust-lang/crates.io-index"[[package]] - replacement in Cargo.lock at line 33
version = "0.4.8"version = "0.4.10" - replacement in Cargo.lock at line 44
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 46
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 50
name = "backtrace"version = "0.2.3"name = "autocfg"version = "0.1.2" - edit in Cargo.lock at line 53
dependencies = ["backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",] - replacement in Cargo.lock at line 56
version = "0.3.9"version = "0.3.15" - replacement in Cargo.lock at line 59
"backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rustc-demangle 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 69
version = "0.1.24"version = "0.1.28" - replacement in Cargo.lock at line 72
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 78
version = "0.9.3"version = "0.10.1" - replacement in Cargo.lock at line 81
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)","safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 91
version = "0.7.1"version = "0.8.0" - replacement in Cargo.lock at line 94
"byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","crypto-mac 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)","crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 102
version = "0.3.3"version = "0.7.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)","byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)","generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "block-padding"version = "0.1.3" - replacement in Cargo.lock at line 116
"arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 121
version = "0.2.0"version = "0.3.1" - replacement in Cargo.lock at line 126
version = "1.2.7"version = "1.3.1" - replacement in Cargo.lock at line 131
version = "0.4.11"version = "0.4.12" - replacement in Cargo.lock at line 134
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)","byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 145
version = "1.0.25"version = "1.0.35" - replacement in Cargo.lock at line 150
version = "0.1.6"version = "0.1.7" - replacement in Cargo.lock at line 160
"time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 165
version = "2.32.0"version = "2.33.0" - replacement in Cargo.lock at line 171
"strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)","strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 184
[[package]]name = "constant_time_eq"version = "0.1.3"source = "registry+https://github.com/rust-lang/crates.io-index" - replacement in Cargo.lock at line 191
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 199
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 204
version = "0.6.2"version = "0.7.1" - replacement in Cargo.lock at line 207
"crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 213
version = "0.6.1"version = "0.7.1" - replacement in Cargo.lock at line 216
"arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 225
name = "crossbeam-utils"version = "0.6.1"name = "crossbeam-queue"version = "0.1.2" - replacement in Cargo.lock at line 229
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 233
name = "crypto-mac"version = "0.5.2"name = "crossbeam-utils"version = "0.6.5" - replacement in Cargo.lock at line 237
"constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","generic-array 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 242
name = "dbghelp-sys"version = "0.2.0"name = "crypto-mac"version = "0.7.0" - replacement in Cargo.lock at line 246
"winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)","winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)","subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 262
version = "0.7.6"version = "0.8.0" - replacement in Cargo.lock at line 265
"generic-array 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)","generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 270
version = "0.8.12"version = "0.8.17" - replacement in Cargo.lock at line 273
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 278
version = "0.6.0"version = "0.6.1" - replacement in Cargo.lock at line 284
"regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)","regex 1.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 290
version = "0.1.12"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["backtrace 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "error-chain" - replacement in Cargo.lock at line 293
"backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)","backtrace 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 298
version = "0.1.3"version = "0.1.5" - replacement in Cargo.lock at line 301
"backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","backtrace 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 307
version = "0.1.3"version = "0.1.5" - replacement in Cargo.lock at line 310
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.30 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 336
version = "0.1.1"source = "registry+https://github.com/rust-lang/crates.io-index"[[package]]name = "fuchsia-cprng" - replacement in Cargo.lock at line 364
"new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)","new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 369
version = "0.1.25"version = "0.1.26" - replacement in Cargo.lock at line 377
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 383
version = "0.9.0"version = "0.12.0" - replacement in Cargo.lock at line 391
version = "0.1.14"version = "0.1.18" - replacement in Cargo.lock at line 394
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 397
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","http 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 401
"slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)","string 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)","string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "hmac"version = "0.7.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 420
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 426
version = "0.1.14"version = "0.1.17" - replacement in Cargo.lock at line 429
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 449
version = "0.12.17"version = "0.12.27" - replacement in Cargo.lock at line 452
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 455
"h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)","http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)","h2 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)","http 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 462
"time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)","rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)","tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 481
"unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 494
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 506
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 517
version = "0.5.2"version = "0.5.3" - replacement in Cargo.lock at line 520
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 541
version = "1.2.0"version = "1.3.0" - replacement in Cargo.lock at line 551
version = "0.2.44"version = "0.2.51" - replacement in Cargo.lock at line 556
version = "0.4.2"version = "0.5.2" - replacement in Cargo.lock at line 573
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 578
version = "0.1.1"version = "0.1.2" - replacement in Cargo.lock at line 581
"linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)","linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 591
version = "0.7.3"version = "0.7.5" - replacement in Cargo.lock at line 594
"phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)","phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)","phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)","serde_derive 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)","serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 601
"tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)","tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 611
version = "2.1.1"version = "2.2.0" - edit in Cargo.lock at line 613
dependencies = ["cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",] - replacement in Cargo.lock at line 621
version = "0.9.1"version = "0.10.0" - replacement in Cargo.lock at line 624
"failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","quick-xml 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","quick-xml 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 639
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 643
"slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 653
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 673
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 676
"openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)","openssl 0.10.20 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 678
"openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)","schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)","security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)","security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)","tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)","openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)","schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)","security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)","tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 690
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 697
version = "1.0.1"version = "1.0.3" - edit in Cargo.lock at line 699
dependencies = ["unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",] - replacement in Cargo.lock at line 720
version = "1.8.0"version = "1.10.0" - replacement in Cargo.lock at line 723
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 725
[[package]]name = "opaque-debug"version = "0.2.2"source = "registry+https://github.com/rust-lang/crates.io-index" - replacement in Cargo.lock at line 733
version = "0.10.15"version = "0.10.20" - replacement in Cargo.lock at line 737
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 739
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 751
version = "0.9.39"version = "0.9.43" - replacement in Cargo.lock at line 754
"cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 757
"rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 771
version = "0.6.4"version = "0.7.1" - replacement in Cargo.lock at line 775
"parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)","parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 780
version = "0.3.1"version = "0.4.0" - replacement in Cargo.lock at line 783
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 786
"smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "pbkdf2"version = "0.3.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)","crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 806
version = "0.7.23"version = "0.7.24" - replacement in Cargo.lock at line 809
"phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 814
version = "0.7.23"version = "0.7.24" - replacement in Cargo.lock at line 817
"phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 823
version = "0.7.23"version = "0.7.24" - replacement in Cargo.lock at line 826
"phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 832
version = "0.7.23"version = "0.7.24" - replacement in Cargo.lock at line 850
version = "0.4.24"version = "0.4.27" - replacement in Cargo.lock at line 863
version = "0.12.4"version = "0.13.3" - replacement in Cargo.lock at line 866
"encoding_rs 0.8.12 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 869
"memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)","memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 879
version = "0.6.10"version = "0.6.12" - replacement in Cargo.lock at line 882
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 887
version = "0.4.3"version = "0.5.6" - edit in Cargo.lock at line 890[2.25094]→[2.25094:25320](∅→∅),[3.29702]→[3.37374:37377](∅→∅),[2.25320]→[3.37374:37377](∅→∅),[3.23333]→[3.37374:37377](∅→∅),[3.13743]→[3.37374:37377](∅→∅),[3.37374]→[3.37374:37377](∅→∅),[3.37377]→[3.9029:9041](∅→∅),[3.9029]→[3.9029:9041](∅→∅),[3.9041]→[3.37378:37392](∅→∅),[3.37392]→[2.25321:25339](∅→∅),[3.23510]→[3.37410:37492](∅→∅),[3.29721]→[3.37410:37492](∅→∅),[3.11994]→[3.37410:37492](∅→∅),[2.25339]→[3.37410:37492](∅→∅),[3.41186]→[3.37410:37492](∅→∅),[3.17174]→[3.37410:37492](∅→∅),[3.37410]→[3.37410:37492](∅→∅)
"fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "rand"version = "0.5.5"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = [ - replacement in Cargo.lock at line 891
"fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 899
version = "0.6.1"version = "0.6.5" - replacement in Cargo.lock at line 902
"cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)","fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 908
"rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)","rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 917
version = "0.1.0"version = "0.1.1" - replacement in Cargo.lock at line 920
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)","autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 926
version = "0.2.2"version = "0.3.1" - replacement in Cargo.lock at line 929
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 934
version = "0.3.0"version = "0.4.0" - replacement in Cargo.lock at line 942
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 950
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "rand_jitter"version = "0.1.3"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "rand_os"version = "0.1.3"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)","fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)","rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 978
version = "0.1.2"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "rand_xorshift" - replacement in Cargo.lock at line 990
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 994[3.14146]→[3.14146:14169](∅→∅),[3.14146]→[3.14146:14169](∅→∅),[3.14146]→[3.14146:14169](∅→∅),[3.14146]→[3.14146:14169](∅→∅),[3.14146]→[3.14146:14169](∅→∅),[3.14146]→[3.14146:14169](∅→∅),[3.14146]→[3.14146:14169](∅→∅),[3.14169]→[2.26975:26993](∅→∅)
name = "rand_xorshift"version = "0.1.0"name = "rdrand"version = "0.4.0" - replacement in Cargo.lock at line 998
"rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1003
version = "0.1.43"version = "0.1.54" - replacement in Cargo.lock at line 1011
"redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1016
version = "1.0.6"version = "1.1.5" - replacement in Cargo.lock at line 1019
"aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)","memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)","regex-syntax 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","aho-corasick 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)","memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)","regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1028
version = "0.6.3"version = "0.6.6" - replacement in Cargo.lock at line 1039
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1044
version = "0.6.1"version = "0.6.2" - replacement in Cargo.lock at line 1053
version = "0.1.9"version = "0.1.14" - edit in Cargo.lock at line 1067
source = "registry+https://github.com/rust-lang/crates.io-index"[[package]]name = "safemem"version = "0.3.0" - replacement in Cargo.lock at line 1071
version = "0.4.2"version = "0.4.3" - replacement in Cargo.lock at line 1074
"base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)","openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)","base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)","hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)","rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)","sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1084
version = "0.1.14"version = "0.1.15" - replacement in Cargo.lock at line 1087
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1098
version = "0.2.1"version = "0.2.2" - replacement in Cargo.lock at line 1103
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1109
version = "0.2.1"version = "0.2.3" - edit in Cargo.lock at line 1112
"MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1114
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1134
"clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)","env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","hyper 0.12.17 (registry+https://github.com/rust-lang/crates.io-index)","clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)","env_logger 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","hyper 0.12.27 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1139
"minidom 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)","serde_derive 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1145
"tokio-xmpp 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)","try_from 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","xmpp-parsers 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)","tokio-xmpp 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)","toml 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)","xmpp-parsers 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1152
version = "1.0.80"version = "1.0.90" - replacement in Cargo.lock at line 1157
version = "1.0.80"version = "1.0.90" - replacement in Cargo.lock at line 1160
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.30 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1167
version = "1.0.33"version = "1.0.39" - replacement in Cargo.lock at line 1172
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1177
version = "0.7.0"version = "0.8.1" - replacement in Cargo.lock at line 1180
"block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)","block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 1183
"opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1188
version = "0.7.1"version = "0.8.0" - replacement in Cargo.lock at line 1191
"block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)","block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 1194
"opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1199
version = "0.7.3"version = "0.8.1" - replacement in Cargo.lock at line 1202
"block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)","block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 1206
"opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1211
version = "0.1.6"version = "0.1.8" - replacement in Cargo.lock at line 1214
"arc-swap 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","arc-swap 0.3.10 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1225
version = "0.4.1"version = "0.4.2" - replacement in Cargo.lock at line 1230
version = "0.6.6"version = "0.6.9" - edit in Cargo.lock at line 1232
dependencies = ["unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",] - replacement in Cargo.lock at line 1238
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1251
version = "0.1.2"version = "0.1.3" - replacement in Cargo.lock at line 1259
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)","new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1263
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1273
"phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)","phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)","phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1287
version = "0.7.0"version = "0.8.0"source = "registry+https://github.com/rust-lang/crates.io-index"[[package]]name = "subtle"version = "1.0.0" - replacement in Cargo.lock at line 1307
version = "0.15.22"version = "0.15.30" - replacement in Cargo.lock at line 1310
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1328
"proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)","proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)","quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.30 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1336
version = "3.0.5"version = "3.0.7" - replacement in Cargo.lock at line 1339
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1344
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1349
version = "0.4.0"version = "0.4.1" - replacement in Cargo.lock at line 1354
"utf-8 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)","utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1370
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1377
version = "0.10.0"version = "0.11.0" - replacement in Cargo.lock at line 1388
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1393
version = "0.1.40"version = "0.1.42" - replacement in Cargo.lock at line 1396
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1403
version = "0.1.13"version = "0.1.18" - replacement in Cargo.lock at line 1406
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1409
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1411
"tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)","tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)","tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1422
"tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)","tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1430
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1438
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1445
version = "0.1.4"version = "0.1.6" - replacement in Cargo.lock at line 1448
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1454
version = "0.1.5"version = "0.1.7" - replacement in Cargo.lock at line 1457
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1463
version = "0.1.4"version = "0.1.6" - replacement in Cargo.lock at line 1466
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1473
version = "0.1.10"version = "0.1.12" - replacement in Cargo.lock at line 1476
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1483
version = "0.1.7"version = "0.1.9" - replacement in Cargo.lock at line 1486
"crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1491
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)","parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)","parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1504
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1508
"signal-hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","signal-hook 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "tokio-sync"version = "0.1.4"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1526
version = "0.1.2"version = "0.1.3" - replacement in Cargo.lock at line 1529
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1533
"tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1539
version = "0.1.9"version = "0.1.13" - replacement in Cargo.lock at line 1542
"crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1547
"num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1555
version = "0.2.8"version = "0.2.10" - replacement in Cargo.lock at line 1558
"crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)","slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1566
version = "0.2.0"version = "0.2.1" - replacement in Cargo.lock at line 1569
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1571
"tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "tokio-trace-core"version = "0.1.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1587
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1592
"tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1598
version = "0.2.4"version = "0.2.5" - replacement in Cargo.lock at line 1601
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1604
"libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1609
"tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1615
version = "0.2.0"version = "1.0.0" - replacement in Cargo.lock at line 1618
"bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)","bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1620
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 1622
"jid 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1623
"quick-xml 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)","sasl 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)","quick-xml 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)","sasl 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1627
"tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tls 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)","trust-dns-proto 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)","trust-dns-resolver 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)","try_from 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tls 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)","trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1632
"xmpp-parsers 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)","xmpp-parsers 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1637
version = "0.4.10"version = "0.5.0" - replacement in Cargo.lock at line 1640
"serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1645
version = "0.4.3"version = "0.6.3" - replacement in Cargo.lock at line 1648
"byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)","error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1652
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1654
"rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)","rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1657
"tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)","tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)","tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)","tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1668
version = "0.9.1"version = "0.10.3" - replacement in Cargo.lock at line 1671
"cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)","error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1675
"lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)","lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1677
"lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)","trust-dns-proto 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)","lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)","resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)","tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)","trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1691
version = "0.2.2"version = "0.3.2" - edit in Cargo.lock at line 1693
dependencies = ["cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",] - replacement in Cargo.lock at line 1717
version = "0.1.7"version = "0.1.8" - edit in Cargo.lock at line 1719
dependencies = ["smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",] - edit in Cargo.lock at line 1739
name = "unreachable"version = "1.0.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",][[package]] - replacement in Cargo.lock at line 1750
version = "0.7.4"version = "0.7.5" - edit in Cargo.lock at line 1766
source = "registry+https://github.com/rust-lang/crates.io-index"[[package]]name = "version_check"version = "0.1.5"source = "registry+https://github.com/rust-lang/crates.io-index"[[package]]name = "void"version = "1.0.2" - replacement in Cargo.lock at line 1773
"futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)","futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1790
version = "0.3.6"version = "0.3.7" - replacement in Cargo.lock at line 1809
version = "0.1.1"version = "0.1.2" - replacement in Cargo.lock at line 1812
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1825
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)","winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1834
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1842
"winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)","winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1861
"markup5ever 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)","markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1867
version = "0.11.1"version = "0.12.2" - replacement in Cargo.lock at line 1870
"base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)","blake2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)","base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)","blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1873
"digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)","jid 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)","sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)","sha3 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)","try_from 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","jid 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)","sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)","sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)","try_from 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",][[package]]name = "xmpp-parsers"version = "0.13.1"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)","blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)","digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","jid 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)","minidom 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)","sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)","sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)","sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1899
"checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e""checksum MacTypes-sys 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eaf9f0d0b1cc33a4d2aee14fb4b2eac03462ef4db29c8ac4057327d8a71ad86f""checksum aho-corasick 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e6f484ae0c99fec2e858eb6134949117399f222608d84cadb3f58c1f97c2364c" - replacement in Cargo.lock at line 1902
"checksum arc-swap 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "5c5ed110e2537bdd3f5b9091707a8a5556a72ac49bbd7302ae0b28fdccb3246c""checksum arrayref 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee""checksum arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f405cc4c21cd8b784f6c8fc2adf9bc00f59558f0049b5ec21517f875963040cc""checksum arc-swap 0.3.10 (registry+https://github.com/rust-lang/crates.io-index)" = "a57a5698f85c6fd92f19dad87ff2d822fc4ba79dd85c13914d8c4dad589cb815""checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71" - replacement in Cargo.lock at line 1905
"checksum backtrace 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "346d7644f0b5f9bc73082d3b2236b69a05fd35cce0cfa3724e184e6a5c9e2a2f""checksum backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a""checksum backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)" = "c66d56ac8dabd07f6aacdaf633f4b8262f5b3601a810a0dcddffd5c22c69daa0""checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643""checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799""checksum backtrace 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f106c02a3604afcdc0df5d36cc47b44b55917dbaf3d808f71c163a0ddba64637""checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6""checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" - replacement in Cargo.lock at line 1910
"checksum blake2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73b77e29dbd0115e43938be2d5128ecf81c0353e00acaa65339a1242586951d9""checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab""checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40""checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d""checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa""checksum blake2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "91721a6330935673395a0607df4d49a9cb90ae12d259f1b3e0a3f6e1d486872e""checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d""checksum block-padding 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d75255892aeb580d3c566f213a2b6fdc1c66667839f45719ee1d30ebf2aea591""checksum byte-tools 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7""checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb""checksum bytes 0.4.12 (registry+https://github.com/rust-lang/crates.io-index)" = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" - replacement in Cargo.lock at line 1917
"checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16""checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4""checksum cc 1.0.35 (registry+https://github.com/rust-lang/crates.io-index)" = "5e5f3fee5eeb60324c2781f1e41286bdee933850fff9b3c672587fed5ec58c83""checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4" - replacement in Cargo.lock at line 1920
"checksum clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e""checksum clap 2.33.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5067f5bb2d80ef5d68b4c87db81601f0b75bca627bc2ef76b141d7b846a3c6d9" - edit in Cargo.lock at line 1922
"checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e" - replacement in Cargo.lock at line 1924
"checksum crossbeam-deque 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fe1b6f945f824c7a25afe44f62e25d714c0cc523f8e99d8db5cd1026e1269d3""checksum crossbeam-epoch 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2449aaa4ec7ef96e5fb24db16024b935df718e9ae1cec0a1e68feeca2efca7b8""checksum crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c55913cc2799171a550e307918c0a360e8c16004820291bf3b638969b4a01816""checksum crypto-mac 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "0999b4ff4d3446d4ddb19a63e9e00c1876e75cd7000d20e57a693b4b3f08d958""checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850""checksum crossbeam-deque 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b18cd2e169ad86297e6bc0ad9aa679aee9daa4f19e8163860faf7c164e4f5a71""checksum crossbeam-epoch 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "04c9e3102cc2d69cd681412141b390abd55a362afc1540965dad0ad4d34280b4""checksum crossbeam-queue 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7c979cd6cfe72335896575c6b5688da489e420d36a27a0b9eb0c73db574b4a4b""checksum crossbeam-utils 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "f8306fcef4a7b563b76b7dd949ca48f52bc1141aa067d2ea09565f3e2652aa5c""checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" - replacement in Cargo.lock at line 1930
"checksum digest 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "03b072242a8cbaf9c145665af9d250c59af3b958f83ed6824e13533cf76d5b90""checksum encoding_rs 0.8.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ca20350a7cb5aab5b9034731123d6d412caf3e92d4985e739e411ba0955fd0eb""checksum env_logger 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "afb070faf94c85d17d50ca44f6ad076bce18ae92f0037d350947240a36e9d42e""checksum error-chain 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "faa976b4fd2e4c2b2f3f486874b19e61944d3de3de8b61c9fcf835d583871bcc""checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c""checksum encoding_rs 0.8.17 (registry+https://github.com/rust-lang/crates.io-index)" = "4155785c79f2f6701f185eb2e6b4caf0555ec03477cb4c70db67b465311620ed""checksum env_logger 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b61fa891024a945da30a9581546e8cfaf5602c7b3f4c137a2805cf388f92075a" - replacement in Cargo.lock at line 1934
"checksum failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7""checksum failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596""checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2""checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" - edit in Cargo.lock at line 1940
"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" - replacement in Cargo.lock at line 1944
"checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b""checksum futures 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "62941eff9507c8177d448bd83a44d9b9760856e184081d8cd79ba9f03dd24981" - replacement in Cargo.lock at line 1946
"checksum generic-array 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ef25c5683767570c2bbd7deba372926a55eaae9982d7726ee2a1050239d45b9d""checksum h2 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "1ac030ae20dee464c5d0f36544d8b914a6bc606da44a57e052d2b0f5dae129e0""checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592""checksum h2 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "85ab6286db06040ddefb71641b50017c06874614001a134b423783e2db2920bd""checksum hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f127a908633569f208325f86f71255d3363c79721d7f9fe31cd5569908819771" - replacement in Cargo.lock at line 1950
"checksum http 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "02096a6d2c55e63f7fcb800690e4f889a25f6ec342e3adb4594e293b625215ab""checksum http 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "eed324f0f0daf6ec10c474f150505af2c143f251722bf9dbd1261bd1f2ee2c1a" - replacement in Cargo.lock at line 1953
"checksum hyper 0.12.17 (registry+https://github.com/rust-lang/crates.io-index)" = "c49a75385d35ff5e9202755f09beb0b878a05c4c363fcc52b23eeb5dcb6782cc""checksum hyper 0.12.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4f2777434f26af6e4ce4fdcdccd3bed9d861d11e87bcbe72c0f51ddaca8ff848" - replacement in Cargo.lock at line 1959
"checksum jid 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6c4cee633b7ce95e71202ecb99e632d15ad468de7753e616a924c93842f1a3d0""checksum jid 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "24e8a3f2ab860aa08074136e3144a2425e678d8823206e5adcc6145dc136503a" - replacement in Cargo.lock at line 1962
"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1""checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14" - replacement in Cargo.lock at line 1964
"checksum libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)" = "10923947f84a519a45c8fefb7dd1b3e8c08747993381adee176d7a82b4195311""checksum linked-hash-map 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7860ec297f7008ff7a1e3382d7f7e1dcd69efc94751a2284bafc3d013c2aa939""checksum libc 0.2.51 (registry+https://github.com/rust-lang/crates.io-index)" = "bedcc7a809076656486ffe045abeeac163da1b558e963a31e29fbfbeba916917""checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83" - replacement in Cargo.lock at line 1968
"checksum lru-cache 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4d06ff7ff06f729ce5f4e227876cb88d10bc59cd4ae1e09fbb2bde15c850dc21""checksum lru-cache 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" - replacement in Cargo.lock at line 1970
"checksum markup5ever 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a87c4100d614080c8ab43334fb028ebe387f273fb61ed4ff0eae9189b94b6be8""checksum markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "897636f9850c3eef4905a5540683ed53dc9393860f0846cab2c2ddf9939862ff" - replacement in Cargo.lock at line 1972
"checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16""checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" - replacement in Cargo.lock at line 1974
"checksum minidom 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c0a5296bf9d0ac9e4a6e4cb844e3ee84bf33f841c7b3ae2cc87f05ceb81b50ae""checksum minidom 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "275024eea6c6ff4ace22f2750843831183785288eec1cff91a4e6b8898cf94f9" - replacement in Cargo.lock at line 1980
"checksum new_debug_unreachable 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0cdc457076c78ab54d5e0d6fa7c47981757f1e34dc39ff92787f217dede586c4""checksum new_debug_unreachable 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f40f005c60db6e03bae699e414c58bf9aa7ea02a2d0b9bfbcf19286cc4c82b30" - replacement in Cargo.lock at line 1984
"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30""checksum openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)" = "5e1309181cdcbdb51bc3b6bedb33dfac2a83b3d585033d3f6d9e22e8c1928613""checksum num_cpus 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a23f0ed30a54abaa0c7e83b1d2d87ada7c3c23078d1d87815af3e3b6385fbba""checksum opaque-debug 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "93f5bb2e8e8dec81642920ccff6b61f1eb94fa3020c5a325c9851ff604152409""checksum openssl 0.10.20 (registry+https://github.com/rust-lang/crates.io-index)" = "5a0d6b781aac4ac1bd6cafe2a2f0ad8c16ae8e1dd5184822a16c50139f8838d9" - replacement in Cargo.lock at line 1988
"checksum openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)" = "278c1ad40a89aa1e741a1eed089a2f60b18fab8089c3139b542140fc7d674106""checksum openssl-sys 0.9.43 (registry+https://github.com/rust-lang/crates.io-index)" = "33c86834957dd5b915623e94f2f4ab2c70dd8f6b70679824155d5ae21dbd495d" - replacement in Cargo.lock at line 1990
"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5""checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c""checksum parking_lot 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab41b4aed082705d1056416ae4468b6ea99d52599ecf3169b00088d43113e337""checksum parking_lot_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "94c8c7923936b28d546dfd14d4472eaf34c99b14e1c973a32b3e6d4eb04298c9""checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" - replacement in Cargo.lock at line 1994
"checksum phf 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "cec29da322b242f4c3098852c77a0ca261c9c01b806cae85a5572a1eb94db9a6""checksum phf_codegen 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "7d187f00cd98d5afbcd8898f6cf181743a449162aeb329dcd2f3849009e605ad""checksum phf_generator 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "03dc191feb9b08b0dc1330d6549b795b9d81aec19efe6b4a45aec8d4caee0c4b""checksum phf_shared 0.7.23 (registry+https://github.com/rust-lang/crates.io-index)" = "b539898d22d4273ded07f64a05737649dc69095d92cb87c7097ec68e3f150b93""checksum phf 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b3da44b85f8e8dfaec21adae67f95d93244b2ecf6ad2a692320598dcc8e6dd18""checksum phf_codegen 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "b03e85129e324ad4166b06b2c7491ae27fe3ec353af72e72cd1654c7225d517e""checksum phf_generator 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "09364cc93c159b8b06b1f4dd8a4398984503483891b0c26b867cf431fb132662""checksum phf_shared 0.7.24 (registry+https://github.com/rust-lang/crates.io-index)" = "234f71a15de2288bcb7e3b6515828d22af7ec8598ee6d24c3b526fa0a80b67a0" - replacement in Cargo.lock at line 2000
"checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09""checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915" - replacement in Cargo.lock at line 2002
"checksum quick-xml 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1d8065cbb01701c11cc195cde85cbf39d1c6a80705b67a157ebb3042e0e5777f""checksum quick-xml 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)" = "22fcc48ecef4609b243e8c01ff4695d08ee0fc9d5bdbc54630e1a5fe8bb40953" - replacement in Cargo.lock at line 2004
"checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c""checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd""checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c""checksum rand 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ae9d223d52ae411a33cf7e54ec6034ec165df296ccd23533d671a28252b6f66a""checksum rand_chacha 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "771b009e3a508cb67e8823dda454aaa5368c7bc1c16829fb77d3e980440dd34a""checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372""checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db""checksum quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "faf4799c5d274f3868a4aae320a0a182cbd2baee377b378f080e16a23e9d80db""checksum rand 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c618c47cd3ebd209790115ab837de41425723956ad3ce2e6a7f09890947cacb9""checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca""checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef""checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b""checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0" - replacement in Cargo.lock at line 2012
"checksum rand_pcg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "086bd09a33c7044e56bb44d5bdde5a60e7f119a9e95b0775f545de759a32fe05""checksum rand_xorshift 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "effa3fcaa47e18db002bdde6060944b6d2f9cfd8db471c30e873448ad9187be3""checksum redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "679da7508e9a6390aeaf7fbd02a800fdc64b73fe2204dd2c8ae66d22d9d5ad5d""checksum rand_jitter 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b9ea758282efe12823e0d952ddb269d2e1897227e464919a554f2a03ef1b832""checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071""checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44""checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c""checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2""checksum redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)" = "12229c14a0f65c4f1cb046a3b52047cdd9da1f4b30f8a39c5063c8bae515e252" - replacement in Cargo.lock at line 2019
"checksum regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ee84f70c8c08744ea9641a731c7fadb475bf2ecc52d7f627feb833e0b3990467""checksum regex-syntax 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fbc557aac2b708fe84121caf261346cc2eed71978024337e42eb46b8a252ac6e""checksum regex 1.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "559008764a17de49a3146b234641644ed37d118d1ef641a0bb573d146edc6ce0""checksum regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dcfd8681eebe297b81d98498869d4aae052137651ad7b96822f09ceb690d0a96" - replacement in Cargo.lock at line 2022
"checksum resolv-conf 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c62bd95a41841efdf7fca2ae9951e64a8d8eae7e5da196d8ce489a2241491a92""checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395""checksum resolv-conf 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "b263b4aa1b5de9ffc0054a2386f96992058bb6870aab516f8cdeb8a667d56dcb""checksum rustc-demangle 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "ccc78bfd5acd7bf3e89cffcf899e5cb1a52d6fafa8dec2739ad70c9577a57288" - replacement in Cargo.lock at line 2026
"checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9""checksum sasl 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4dbda5436dcd059da44fbf84b87a7164c5e3cad354efd0630c1f2be3c51c8859""checksum schannel 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "0e1a231dc10abf6749cfa5d7767f25888d484201accbd919b66ab5413c502d56""checksum sasl 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e457758c85b736bbad56dc099406cd2a9c19554cf81880dba7a51d092929e600""checksum schannel 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f2f6abf258d99c3c1c5c2131d99d064e94b7b3dd5f416483057f308fea253339" - replacement in Cargo.lock at line 2029
"checksum security-framework 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "697d3f3c23a618272ead9e1fb259c1411102b31c6af8b93f1d64cca9c3b0e8e0""checksum security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab01dfbe5756785b5b4d46e0289e5a18071dfa9a7c2b24213ea00b9ef9b665bf""checksum security-framework 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bfab8dda0e7a327c696d893df9ffa19cadc4bd195797997f5223cf5831beaf05""checksum security-framework-sys 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3d6696852716b589dff9e886ff83778bb635150168e83afa8ac6b8a78cb82abc" - replacement in Cargo.lock at line 2033
"checksum serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "15c141fc7027dd265a47c090bf864cf62b42c4d228bbcf4e51a0c9e2b0d3f7ef""checksum serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "225de307c6302bec3898c51ca302fc94a7a1697ef0845fcee6448f33c032249c""checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811""checksum sha-1 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "51b9d1f3b5de8a167ab06834a7c883bd197f2191e1dda1a22d9ccfeedbf9aded""checksum sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9eb6be24e4c23a84d7184280d2722f7f2731fcdd4a9d886efbfe4413e4847ea0""checksum sha3 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b64dcef59ed4290b9fb562b53df07f564690d6539e8ecdd4728cf392477530bc""checksum signal-hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8941ae94fa73d0f73b422774b3a40a7195cecd88d1c090f4b37ade7dc795ab66""checksum serde 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)" = "aa5f7c20820475babd2c077c3ab5f8c77a31c15e16ea38687b4c02d3e48680f4""checksum serde_derive 1.0.90 (registry+https://github.com/rust-lang/crates.io-index)" = "58fc82bec244f168b23d1963b45c8bf5726e9a15a9d146a067f9081aeed2de79""checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d""checksum sha-1 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "23962131a91661d643c98940b20fcaffe62d776a823247be80a48fcb8b6fce68""checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d""checksum sha3 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "34a5e54083ce2b934bf059fdf38e7330a154177e029ab6c4e18638f2f624053a""checksum signal-hook 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "97a47ae722318beceb0294e6f3d601205a1e6abaa4437d9d33e3a212233e3021" - replacement in Cargo.lock at line 2041
"checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d""checksum smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "622df2d454c29a4d89b30dc3b27b42d7d90d6b9e587dbf8f67652eb7514da484""checksum slab 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8""checksum smallvec 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "c4488ae950c49d403731982257768f48fada354a5203fe81f9bb6f43ca9002be" - replacement in Cargo.lock at line 2045
"checksum string 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "98998cced76115b1da46f63388b909d118a37ae0be0f82ad35773d4a4bc9d18d""checksum string 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b639411d0b9c738748b5397d5ceba08e648f4f1992231aa859af1a017f31f60b" - replacement in Cargo.lock at line 2049
"checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550""checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a""checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" - replacement in Cargo.lock at line 2052
"checksum syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)" = "ae8b29eb5210bc5cf63ed6149cbf9adfc82ac0be023d8735c176ee74a2db4da7""checksum syn 0.15.30 (registry+https://github.com/rust-lang/crates.io-index)" = "66c8865bf5a7cbb662d8b011950060b3c8743dca141b054bf7195b20d314d8e2" - replacement in Cargo.lock at line 2055
"checksum tempfile 3.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "7e91405c14320e5c79b3d148e1c86f40749a36e490642202a31689cb1a3452b2""checksum tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9de21546595a0873061940d994bbbc5c35f024ae4fd61ec5c5b159115684f508""checksum tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a""checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b" - replacement in Cargo.lock at line 2059
"checksum textwrap 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "307686869c93e71f94da64286f9a9524c0f308a9e1c87a583de8e9c9039ad3f6""checksum textwrap 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" - replacement in Cargo.lock at line 2061
"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b""checksum tokio 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "a7817d4c98cc5be21360b3b37d6036fe9b7aefa5b7a201b7b16ff33423822f7d""checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f""checksum tokio 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "65641e515a437b308ab131a82ce3042ff9795bef5d6c5a9be4eb24195c417fd9" - replacement in Cargo.lock at line 2065
"checksum tokio-current-thread 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "331c8acc267855ec06eb0c94618dcbbfea45bed2d20b77252940095273fb58f6""checksum tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde""checksum tokio-fs 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "60ae25f6b17d25116d2cba342083abe5255d3c2c79cb21ea11aa049c53bf7c75""checksum tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)" = "7392fe0a70d5ce0c882c4778116c519bd5dbaa8a7c3ae3d04578b3afafdcda21""checksum tokio-reactor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "502b625acb4ee13cbb3b90b8ca80e0addd263ddacf6931666ef751e610b07fb5""checksum tokio-current-thread 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "d16217cad7f1b840c5a97dfb3c43b0c871fef423a6e8d2118c604e843662a443""checksum tokio-executor 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "83ea44c6c0773cc034771693711c35c677b4b5a4b21b9e7071704c54de7d555e""checksum tokio-fs 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe6dc22b08d6993916647d108a1a7d15b9cd29c4f4496c62b92c45b5041b7af""checksum tokio-io 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "5090db468dad16e1a7a54c8c67280c5e4b544f3d3e018f0b913b400261f85926""checksum tokio-reactor 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "6af16bfac7e112bea8b0442542161bfc41cbfa4466b580bdda7d18cb88b911ce" - replacement in Cargo.lock at line 2071
"checksum tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912""checksum tokio-threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "56c5556262383032878afad66943926a1d1f0967f17e94bd7764ceceb3b70e7f""checksum tokio-timer 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f37f0111d76cc5da132fe9bc0590b9b9cfd079bc7e75ac3846278430a299ff8""checksum tokio-tls 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e53fdbf3156f588be1676022fe794232b24922d426e8c14f4e46891c1e31c440""checksum tokio-sync 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "fda385df506bf7546e70872767f71e81640f1f251bdf2fd8eb81a0eaec5fe022""checksum tokio-tcp 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1d14b10654be682ac43efee27401d792507e30fd8d26389e1da3b185de2e4119""checksum tokio-threadpool 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "ec5759cf26cf9659555f36c431b515e3d05f66831741c85b4b5d5dfb9cf1323c""checksum tokio-timer 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "2910970404ba6fa78c5539126a9ae2045d62e3713041e447f695f41405a120c6""checksum tokio-tls 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "354b8cd83825b3c20217a9dc174d6a0c67441a2fae5c41bcb1ea6679f6ae0f7c""checksum tokio-trace-core 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "350c9edade9830dc185ae48ba45667a445ab59f6167ef6d0254ec9d2430d9dd3" - replacement in Cargo.lock at line 2078
"checksum tokio-uds 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "99ce87382f6c1a24b513a72c048b2c8efe66cb5161c9061d00bee510f08dc168""checksum tokio-xmpp 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c27385c4781afc851c61ac66d79463c511bf073d3a5d71b8bfd13a816e475989""checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f""checksum trust-dns-proto 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f1525ca4e26f5a09d81b79584f19225e7dba5606ae3a416311c2751c5cea60bb""checksum trust-dns-resolver 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4a821ad51a29816420b8cac4b026756b81c023630b97eaa4c8090637ee3508bd""checksum tokio-uds 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "037ffc3ba0e12a0ab4aca92e5234e0dedeb48fddf6ccd260f1f150a36a9f2445""checksum tokio-xmpp 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "952074d50e2a9907e714d28bb988232cc2f8c64542d3a97822e6d6afdd7a105f""checksum toml 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "87c5890a989fa47ecdc7bcb4c63a77a82c18f306714104b1decfd722db17b39e""checksum trust-dns-proto 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "09144f0992b0870fa8d2972cc069cbf1e3c0fda64d1f3d45c4d68d0e0b52ad4e""checksum trust-dns-resolver 0.10.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8a9f877f7a1ad821ab350505e1f1b146a4960402991787191d6d8cab2ce2de2c" - replacement in Cargo.lock at line 2084
"checksum try_from 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "923a7ee3e97dbfe8685261beb4511cc9620a1252405d02693d43169729570111""checksum try_from 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "283d3b89e1368717881a9d51dad843cc435380d8109c9e47d38780a324698d8b" - replacement in Cargo.lock at line 2088
"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25""checksum unicode-normalization 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "141339a08b982d942be2ca06ff8b076563cbe223d1befd5450716790d44e2426" - edit in Cargo.lock at line 2092
"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" - replacement in Cargo.lock at line 2093
"checksum utf-8 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bab35f71693630bb1953dce0f2bcd780e7cde025027124a202ac08a45ba25141""checksum utf-8 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "05e42f7c18b8f902290b009cde6d651262f956c98bc51bca4cd1d511c9cd85c7" - edit in Cargo.lock at line 2097
"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd""checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" - replacement in Cargo.lock at line 2100
"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0""checksum winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770" - replacement in Cargo.lock at line 2103
"checksum winapi-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "afc5508759c5bf4285e61feb862b6083c8480aec864fa17a81fdec6f69b461ab""checksum winapi-util 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7168bab6e1daee33b4557efd0e95d5ca70a03706d39fa5f3fe7a236f584b03c9" - replacement in Cargo.lock at line 2110
"checksum xmpp-parsers 0.11.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2e1e0a279d5af83a1dff442249f8a43214ac120267acfaac494b9d28c0027fea"[3.32568]"checksum xmpp-parsers 0.12.2 (registry+https://github.com/rust-lang/crates.io-index)" = "58b4400e1ae0d246044db5fa7f2e693fdfe9cc6e8eaa72ef2a68c5dc1d3c96de""checksum xmpp-parsers 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5094cec449beca92f82ae4d7fe13cda058005849766d71b86c23e6217f61a357"