Use failure instead Box<dyn Error>
[?]
Dec 30, 2018, 6:40 AM
QYY3KRGLZFFOMYZUMEX5DUFU2DSP3H3NVFLMVTS2PEFQZ6U63AMACDependencies
- [2]
IK3YDPTYUpdate deps - [3]
X6L47BHQUse different structure for established xmpp connection - [4]
NDDQQP2PUpdate deps - [5]
OGMBXBKPMove online to XmppConnection - [6]
QWE26TMVupdate deps - [7]
5OBTKGDLUpdate deps - [8]
AGIW6YR3Use shared future for signal everywhere - [9]
EOHEZXX3Move request processing to structure - [10]
ZI4GJ72VAdd message to xmpp command - [11]
FVVPKFTLInitial commit - [12]
TDOR5XQUAccept destination - [13]
UCY2DO3DTry to read request body - [14]
FV6BJ5K6Send self-presence and store account info in Rc so it willbe used in some future in parallel - [15]
5A5UVGNMMove receiver closing logic out of xmpp processing - [16]
VS6AHRWIMove XMPP to separate dir
Change contents
- replacement in src/xmpp/mod.rs at line 157
pub struct XmppCommand;pub struct XmppCommand {pub xmpp_to: String,} - 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
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<String, std::borrow::Cow<str>> = xmpp_to_opt.map_or_else(|| Err("none".into()),|xmpp_to| {xmpp_to.to_str().map(|x| x.to_owned()).map_err(|e| {format!("\"{}\" {}", String::from_utf8_lossy(xmpp_to.as_bytes()), e).into()})},); - edit in src/main.rs at line 60
match xmpp_to_res {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(|e| e.into()),)) as Box<Future<Item = _, Error = _> + Send + 'static>}Ok(xmpp_to) => {info!("Got request. Reading body...");let cmd_send = self.cmd_send.clone();Box::new(req.into_body().map_err(|e| e.into()).fold(String::new(), |mut acc, ch| {std::str::from_utf8(&*ch).map(|s| {acc.push_str(s);acc})}).and_then(move |msg: String| {if !msg.is_empty() {Box::new(cmd_send.clone().send(XmppCommand { xmpp_to }).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(|e| e.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(|e| e.into()),))as Box<Future<Item = _, Error = _> + Send + 'static>}}),) as Box<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 172
.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 }) - replacement in Cargo.toml at line 13
failure = "0.1.4"failure = "0.1" - edit in Cargo.lock at line 1
name = "MacTypes-sys"version = "1.3.0"source = "registry+https://github.com/rust-lang/crates.io-index"dependencies = ["libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)",][[package]] - replacement in Cargo.lock at line 5
"memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)","memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 18
version = "0.3.7"version = "0.3.6" - replacement in Cargo.lock at line 28
version = "0.4.10"version = "0.4.8" - replacement in Cargo.lock at line 39
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - edit in Cargo.lock at line 43
[[package]]name = "autocfg"version = "0.1.1"source = "registry+https://github.com/rust-lang/crates.io-index" - replacement in Cargo.lock at line 49
"backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)","backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 53
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","rustc-demangle 0.1.11 (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)", - replacement in Cargo.lock at line 60
version = "0.3.13"version = "0.3.9" - replacement in Cargo.lock at line 63
"autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)","backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)","backtrace-sys 0.1.24 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 65
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","rustc-demangle 0.1.11 (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)", - replacement in Cargo.lock at line 72
version = "0.1.28"version = "0.1.24" - replacement in Cargo.lock at line 75
"cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 138
version = "1.0.28"version = "1.0.25" - replacement in Cargo.lock at line 153
"time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 189
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 197
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 202
version = "0.6.3"version = "0.6.2" - replacement in Cargo.lock at line 205
"crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 211
version = "0.7.0"version = "0.6.1" - replacement in Cargo.lock at line 214
"arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)","arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 216
"crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 224
version = "0.6.3"version = "0.6.1" - replacement in Cargo.lock at line 268
version = "0.8.13"version = "0.8.12" - replacement in Cargo.lock at line 282
"regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)","regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 299
"backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)","backtrace 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 304
version = "0.1.4"version = "0.1.3" - replacement in Cargo.lock at line 307
"backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 313
version = "0.1.4"version = "0.1.3" - replacement in Cargo.lock at line 318
"syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 379
"num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 412
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 441
version = "0.12.19"version = "0.12.17" - replacement in Cargo.lock at line 454
"time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 485
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 511
"failure 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 542
version = "0.2.45"version = "0.2.44" - replacement in Cargo.lock at line 582
version = "0.7.5"version = "0.7.3" - replacement in Cargo.lock at line 587
"serde 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)","serde_derive 1.0.83 (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)", - replacement in Cargo.lock at line 592
"tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)","tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 602
version = "2.1.2"version = "2.1.1" - replacement in Cargo.lock at line 606
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 620
"failure 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","failure_derive 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 635
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 649
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 670
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 672
"openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)","openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 674
"openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)","openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 677
"security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)","security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 687
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 719
version = "1.9.0"version = "1.8.0" - replacement in Cargo.lock at line 722
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 727
version = "0.10.16"version = "0.10.15" - replacement in Cargo.lock at line 734
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","openssl-sys 0.9.40 (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)", - replacement in Cargo.lock at line 745
version = "0.9.40"version = "0.9.39" - replacement in Cargo.lock at line 748
"cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 776
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 779
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 850
"encoding_rs 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)","failure 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 853
"memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)","memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 875
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 886
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 898
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 966
version = "0.1.49"version = "0.1.43" - replacement in Cargo.lock at line 974
"redox_syscall 0.1.49 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 979
version = "1.1.0"version = "1.0.6" - replacement in Cargo.lock at line 983
"memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)","regex-syntax 0.6.4 (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)", - replacement in Cargo.lock at line 991
version = "0.6.4"version = "0.6.3" - replacement in Cargo.lock at line 1016
version = "0.1.11"version = "0.1.9" - replacement in Cargo.lock at line 1043
"openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)","openssl 0.10.15 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1067
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","security-framework-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)","security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1073
version = "0.2.2"version = "0.2.1" - edit in Cargo.lock at line 1076
"MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1077
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1099
"failure 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)","hyper 0.12.19 (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)", - replacement in Cargo.lock at line 1103
"serde 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)","serde_derive 1.0.83 (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)", - replacement in Cargo.lock at line 1108
"tokio-xmpp 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)","tokio-xmpp 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1115
version = "1.0.83"version = "1.0.80" - replacement in Cargo.lock at line 1120
version = "1.0.83"version = "1.0.80" - replacement in Cargo.lock at line 1125
"syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1135
"serde 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1173
version = "0.1.7"version = "0.1.6" - replacement in Cargo.lock at line 1176
"arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 1192
version = "0.6.7"version = "0.6.6" - replacement in Cargo.lock at line 1204
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.49 (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)", - replacement in Cargo.lock at line 1228
"serde 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1267
version = "0.15.23"version = "0.15.22" - replacement in Cargo.lock at line 1290
"syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)","syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1300
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1302
"redox_syscall 0.1.49 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1309
version = "0.4.1"version = "0.4.0" - replacement in Cargo.lock at line 1330
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.49 (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)", - replacement in Cargo.lock at line 1353
version = "0.1.41"version = "0.1.40" - replacement in Cargo.lock at line 1356
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","redox_syscall 0.1.49 (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)", - replacement in Cargo.lock at line 1369
"num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1443
"crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1448
"num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1461
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1464
"signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)","signal-hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1489
"crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","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)", - replacement in Cargo.lock at line 1493
"num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)","num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1503
"crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)","crossbeam-utils 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1541
"libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)","libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1552
version = "0.2.1"version = "0.2.0" - replacement in Cargo.lock at line 1580
"serde 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)","serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1595
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1619
"smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)","smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)", - replacement in Cargo.lock at line 1813
"markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)","time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)","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)", - edit in Cargo.lock at line 1835
"checksum MacTypes-sys 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7dbbe033994ae2198a18517c7132d952a29fb1db44249a1234779da7c50f4698" - replacement in Cargo.lock at line 1837
"checksum arc-swap 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1025aeae2b664ca0ea726a89d574fe8f4e77dd712d443236ad1de00379450cf6""checksum arc-swap 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "5c5ed110e2537bdd3f5b9091707a8a5556a72ac49bbd7302ae0b28fdccb3246c" - replacement in Cargo.lock at line 1839
"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71""checksum arrayvec 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f405cc4c21cd8b784f6c8fc2adf9bc00f59558f0049b5ec21517f875963040cc" - edit in Cargo.lock at line 1841
"checksum autocfg 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e5f34df7a019573fb8bdc7e24a2bfebe51a2a1d6bfdbaeccedb3c41fc574727" - replacement in Cargo.lock at line 1842
"checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5""checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6""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" - replacement in Cargo.lock at line 1852
"checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749""checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16" - replacement in Cargo.lock at line 1860
"checksum crossbeam-deque 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13""checksum crossbeam-epoch 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f10a4f8f409aaac4b16a5474fb233624238fcdeefb9ba50d5ea059aab63ba31c""checksum crossbeam-utils 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "41ee4864f4797060e52044376f7d107429ce1fb43460021b126424b7180ee21a""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" - replacement in Cargo.lock at line 1867
"checksum encoding_rs 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)" = "1a8fa54e6689eb2549c4efed8d00d7f3b2b994a064555b0e8df4ae3764bcc4be""checksum encoding_rs 0.8.12 (registry+https://github.com/rust-lang/crates.io-index)" = "ca20350a7cb5aab5b9034731123d6d412caf3e92d4985e739e411ba0955fd0eb" - replacement in Cargo.lock at line 1871
"checksum failure 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "e945b93ec214c6e97b520ec6c5d80267fc97af327658ee5b9f35984626e51fbf""checksum failure_derive 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7c395a14ab27b42704e85bf2435c5c51f334ad7a96e16fe23c6e63a1cad6cc12""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" - replacement in Cargo.lock at line 1888
"checksum hyper 0.12.19 (registry+https://github.com/rust-lang/crates.io-index)" = "f1ebec079129e43af5e234ef36ee3d7e6085687d145b7ea653b262d16c6b65f1""checksum hyper 0.12.17 (registry+https://github.com/rust-lang/crates.io-index)" = "c49a75385d35ff5e9202755f09beb0b878a05c4c363fcc52b23eeb5dcb6782cc" - replacement in Cargo.lock at line 1899
"checksum libc 0.2.45 (registry+https://github.com/rust-lang/crates.io-index)" = "2d2857ec59fadc0773853c664d2d18e7198e83883e7060b63c924cb077bd5c74""checksum libc 0.2.44 (registry+https://github.com/rust-lang/crates.io-index)" = "10923947f84a519a45c8fefb7dd1b3e8c08747993381adee176d7a82b4195311" - replacement in Cargo.lock at line 1905
"checksum markup5ever 0.7.5 (registry+https://github.com/rust-lang/crates.io-index)" = "897636f9850c3eef4905a5540683ed53dc9393860f0846cab2c2ddf9939862ff""checksum markup5ever 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a87c4100d614080c8ab43334fb028ebe387f273fb61ed4ff0eae9189b94b6be8" - replacement in Cargo.lock at line 1907
"checksum memchr 2.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "db4c41318937f6e76648f42826b1d9ade5c09cafb5aef7e351240a70f39206e9""checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16" - replacement in Cargo.lock at line 1919
"checksum num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238""checksum openssl 0.10.16 (registry+https://github.com/rust-lang/crates.io-index)" = "ec7bd7ca4cce6dbdc77e7c1230682740d307d1218a87fb0349a571272be749f9""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" - replacement in Cargo.lock at line 1922
"checksum openssl-sys 0.9.40 (registry+https://github.com/rust-lang/crates.io-index)" = "1bb974e77de925ef426b6bc82fce15fd45bdcbeb5728bffcfc7cdeeb7ce1c2d6""checksum openssl-sys 0.9.39 (registry+https://github.com/rust-lang/crates.io-index)" = "278c1ad40a89aa1e741a1eed089a2f60b18fab8089c3139b542140fc7d674106" - replacement in Cargo.lock at line 1948
"checksum redox_syscall 0.1.49 (registry+https://github.com/rust-lang/crates.io-index)" = "f22c50afdcf3f0a31ebb6b47697f6a7c5e5a24967e842858118bce0615f0afad""checksum redox_syscall 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "679da7508e9a6390aeaf7fbd02a800fdc64b73fe2204dd2c8ae66d22d9d5ad5d" - replacement in Cargo.lock at line 1950
"checksum regex 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "37e7cbbd370869ce2e8dff25c7018702d10b21a20ef7135316f8daecd6c25b7f""checksum regex-syntax 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "4e47a2ed29da7a9e1960e1639e7a982e6edc6d49be308a3b02daf511504a16d1""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" - replacement in Cargo.lock at line 1954
"checksum rustc-demangle 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "01b90379b8664dd83460d59bdc5dd1fd3172b8913788db483ed1325171eab2f7""checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395" - replacement in Cargo.lock at line 1962
"checksum security-framework-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "40d95f3d7da09612affe897f320d78264f0d2320f3e8eea27d12bd1bd94445e2""checksum security-framework-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ab01dfbe5756785b5b4d46e0289e5a18071dfa9a7c2b24213ea00b9ef9b665bf" - replacement in Cargo.lock at line 1965
"checksum serde 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)" = "157e12af46859e968da75dea9845530e13d03bcab2009a41b9b7bb3cf4eb3ec2""checksum serde_derive 1.0.83 (registry+https://github.com/rust-lang/crates.io-index)" = "9469829702497daf2daf3c190e130c3fa72f719920f73c86160d43e8f8d76951""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" - replacement in Cargo.lock at line 1971
"checksum signal-hook 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1f272d1b7586bec132ed427f532dd418d8beca1ca7f2caf7df35569b1415a4b4""checksum signal-hook 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "8941ae94fa73d0f73b422774b3a40a7195cecd88d1c090f4b37ade7dc795ab66" - replacement in Cargo.lock at line 1974
"checksum smallvec 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b73ea3738b47563803ef814925e69be00799a8c07420be8b996f8e98fb2336db""checksum smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "622df2d454c29a4d89b30dc3b27b42d7d90d6b9e587dbf8f67652eb7514da484" - replacement in Cargo.lock at line 1983
"checksum syn 0.15.23 (registry+https://github.com/rust-lang/crates.io-index)" = "9545a6a093a3f0bd59adb472700acc08cad3776f860f16a897dfce8c88721cbc""checksum syn 0.15.22 (registry+https://github.com/rust-lang/crates.io-index)" = "ae8b29eb5210bc5cf63ed6149cbf9adfc82ac0be023d8735c176ee74a2db4da7" - replacement in Cargo.lock at line 1987
"checksum tendril 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "707feda9f2582d5d680d733e38755547a3e8fb471e7ba11452ecfd9ce93a5d3b""checksum tendril 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9de21546595a0873061940d994bbbc5c35f024ae4fd61ec5c5b159115684f508" - replacement in Cargo.lock at line 1992
"checksum time 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "847da467bf0db05882a9e2375934a8a55cffdc9db0d128af1518200260ba1f6c""checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" - replacement in Cargo.lock at line 2008
"checksum tokio-xmpp 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f6583920d10a72bd1605adec50f5efb298e0ba5dcad1ff987560675a7280013b""checksum tokio-xmpp 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c27385c4781afc851c61ac66d79463c511bf073d3a5d71b8bfd13a816e475989"