Nov 29 20:58:13.281 INFO checking optimizely/optimizelyd-maildir against try#32252761328f59ccfadb1bafb8148c685bc830b3 for pr-56323 Nov 29 20:58:13.281 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-56323/worker-0/try#32252761328f59ccfadb1bafb8148c685bc830b3:/target:rw,Z" "-v" "/mnt/big/crater/work/local/test-source/worker-0/pr-56323/try#32252761328f59ccfadb1bafb8148c685bc830b3:/source:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/source" "-e" "USER_ID=1000" "-e" "CMD=cargo +32252761328f59ccfadb1bafb8148c685bc830b3-alt check --frozen --all --all-targets" "-e" "CARGO_TARGET_DIR=/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/cargo-home" "-e" "RUSTUP_HOME=/rustup-home" "-m" "1536M" "--network" "none" "crater"` Nov 29 20:58:13.542 INFO [stdout] b386227407ed9740ff04740b36aafcd791cac0eb8316d3d8eaabbca9ec2f5a9e Nov 29 20:58:13.548 INFO running `"docker" "start" "-a" "b386227407ed9740ff04740b36aafcd791cac0eb8316d3d8eaabbca9ec2f5a9e"` Nov 29 20:58:13.993 INFO [stderr] usermod: no changes Nov 29 20:58:14.259 INFO [stderr] Checking serde v1.0.9 Nov 29 20:58:14.261 INFO [stderr] Checking futures-cpupool v0.1.5 Nov 29 20:58:14.261 INFO [stderr] Checking uuid v0.4.0 Nov 29 20:58:14.261 INFO [stderr] Checking idna v0.1.2 Nov 29 20:58:14.262 INFO [stderr] Checking openssl-sys v0.9.14 Nov 29 20:58:14.816 INFO [stderr] Checking hyper v0.11.0 Nov 29 20:58:15.052 INFO [stderr] Checking openssl v0.9.14 Nov 29 20:58:19.359 INFO [stderr] Checking url v1.5.1 Nov 29 20:58:24.963 INFO [stderr] Checking native-tls v0.1.4 Nov 29 20:58:26.184 INFO [stderr] Checking tokio-tls v0.1.3 Nov 29 20:58:27.800 INFO [stderr] Checking hyper-tls v0.1.2 Nov 29 20:58:31.488 INFO [stderr] Checking serde_json v1.0.2 Nov 29 20:58:33.509 INFO [stderr] Checking optimizelyd-maildir v0.1.0 (/source) Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `std::time::SystemTime` Nov 29 20:58:35.141 INFO [stderr] --> src/maildirqueue.rs:7:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 7 | use std::time::SystemTime; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] = note: #[warn(unused_imports)] on by default Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `std::os::raw::c_char` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:10:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 10 | use std::os::raw::c_char; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `std::io::BufReader` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:13:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 13 | use std::io::BufReader; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `std::io::prelude::*` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:14:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 14 | use std::io::prelude::*; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `jsonsender::hyper::Body` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:16:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 16 | use jsonsender::hyper::Body; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `jsonsender::hyper::Chunk` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:17:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 17 | use jsonsender::hyper::Chunk; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `self` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:21:15 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 21 | use std::io::{self, Write}; Nov 29 20:58:35.141 INFO [stderr] | ^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `self::hyper::client::Response` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:25:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 25 | use self::hyper::client::Response; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `self::hyper::header::Headers` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:26:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 26 | use self::hyper::header::Headers; Nov 29 20:58:35.141 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.141 INFO [stderr] Nov 29 20:58:35.141 INFO [stderr] warning: unused import: `self::url::Url` Nov 29 20:58:35.141 INFO [stderr] --> src/jsonsender.rs:27:5 Nov 29 20:58:35.141 INFO [stderr] | Nov 29 20:58:35.141 INFO [stderr] 27 | use self::url::Url; Nov 29 20:58:35.142 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 29 20:58:35.142 INFO [stderr] Nov 29 20:58:35.142 INFO [stderr] warning: unused import: `self::hyper::Uri` Nov 29 20:58:35.142 INFO [stderr] --> src/jsonsender.rs:29:5 Nov 29 20:58:35.142 INFO [stderr] | Nov 29 20:58:35.142 INFO [stderr] 29 | use self::hyper::Uri; Nov 29 20:58:35.142 INFO [stderr] | ^^^^^^^^^^^^^^^^ Nov 29 20:58:35.142 INFO [stderr] Nov 29 20:58:35.142 INFO [stderr] warning: unused import: `Error` Nov 29 20:58:35.142 INFO [stderr] --> src/jsonsender.rs:32:31 Nov 29 20:58:35.142 INFO [stderr] | Nov 29 20:58:35.142 INFO [stderr] 32 | use self::serde_json::{Value, Error}; Nov 29 20:58:35.142 INFO [stderr] | ^^^^^ Nov 29 20:58:35.142 INFO [stderr] Nov 29 20:58:35.235 INFO [stderr] warning: unreachable statement Nov 29 20:58:35.235 INFO [stderr] --> src/main.rs:72:9 Nov 29 20:58:35.235 INFO [stderr] | Nov 29 20:58:35.235 INFO [stderr] 72 | println!("Decided to give up... no more in the queue"); Nov 29 20:58:35.235 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.235 INFO [stderr] | Nov 29 20:58:35.235 INFO [stderr] = note: #[warn(unreachable_code)] on by default Nov 29 20:58:35.235 INFO [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) Nov 29 20:58:35.235 INFO [stderr] Nov 29 20:58:35.416 INFO [stderr] warning: variable does not need to be mutable Nov 29 20:58:35.416 INFO [stderr] --> src/maildirqueue.rs:99:20 Nov 29 20:58:35.416 INFO [stderr] | Nov 29 20:58:35.416 INFO [stderr] 99 | if let Ok(mut entries) = fs::read_dir(new_path) { Nov 29 20:58:35.416 INFO [stderr] | ----^^^^^^^ Nov 29 20:58:35.416 INFO [stderr] | | Nov 29 20:58:35.416 INFO [stderr] | help: remove this `mut` Nov 29 20:58:35.416 INFO [stderr] | Nov 29 20:58:35.416 INFO [stderr] = note: #[warn(unused_mut)] on by default Nov 29 20:58:35.416 INFO [stderr] Nov 29 20:58:35.440 INFO [stderr] warning: static item is never used: `RES` Nov 29 20:58:35.441 INFO [stderr] --> src/maildirqueue.rs:17:1 Nov 29 20:58:35.441 INFO [stderr] | Nov 29 20:58:35.441 INFO [stderr] 17 | static RES: &'static str = "res"; // using the queue for a request/response area, give the user a place to move responses. Nov 29 20:58:35.441 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.441 INFO [stderr] | Nov 29 20:58:35.441 INFO [stderr] = note: #[warn(dead_code)] on by default Nov 29 20:58:35.441 INFO [stderr] Nov 29 20:58:35.441 INFO [stderr] warning: method is never used: `push` Nov 29 20:58:35.442 INFO [stderr] --> src/maildirqueue.rs:84:5 Nov 29 20:58:35.442 INFO [stderr] | Nov 29 20:58:35.442 INFO [stderr] 84 | pub fn push(&self, request_body:&str) -> bool { Nov 29 20:58:35.442 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.442 INFO [stderr] Nov 29 20:58:35.442 INFO [stderr] warning: method is never used: `res` Nov 29 20:58:35.442 INFO [stderr] --> src/maildirqueue.rs:93:5 Nov 29 20:58:35.442 INFO [stderr] | Nov 29 20:58:35.442 INFO [stderr] 93 | pub fn res(&self, request_body:&str) -> bool { Nov 29 20:58:35.442 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.443 INFO [stderr] Nov 29 20:58:35.444 INFO [stderr] warning: method `moveFile` should have a snake case name such as `move_file` Nov 29 20:58:35.444 INFO [stderr] --> src/maildirqueue.rs:70:5 Nov 29 20:58:35.444 INFO [stderr] | Nov 29 20:58:35.445 INFO [stderr] 70 | / fn moveFile(&self, request_body:&str, from:&str, to:&str, suffix:Option<&str>) -> bool { Nov 29 20:58:35.445 INFO [stderr] 71 | | let filename = format!("{}", Uuid::new_v4()) + if let Some(suf) = suffix { suf } else { "" }; Nov 29 20:58:35.445 INFO [stderr] 72 | | let tmp_path = self.base_dir.clone().as_str().to_owned() + "/" + from + "/" + filename.as_str(); Nov 29 20:58:35.445 INFO [stderr] 73 | | let new_path = self.base_dir.clone().as_str().to_owned() + "/" + to + "/" + filename.as_str(); Nov 29 20:58:35.445 INFO [stderr] ... | Nov 29 20:58:35.445 INFO [stderr] 82 | | true Nov 29 20:58:35.445 INFO [stderr] 83 | | } Nov 29 20:58:35.445 INFO [stderr] | |_____^ Nov 29 20:58:35.445 INFO [stderr] | Nov 29 20:58:35.445 INFO [stderr] = note: #[warn(non_snake_case)] on by default Nov 29 20:58:35.445 INFO [stderr] Nov 29 20:58:35.446 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.446 INFO [stderr] --> src/maildirqueue.rs:75:13 Nov 29 20:58:35.446 INFO [stderr] | Nov 29 20:58:35.446 INFO [stderr] 75 | f.write_all(request_body.as_bytes()); Nov 29 20:58:35.446 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.446 INFO [stderr] | Nov 29 20:58:35.446 INFO [stderr] = note: #[warn(unused_must_use)] on by default Nov 29 20:58:35.446 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.446 INFO [stderr] Nov 29 20:58:35.447 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.447 INFO [stderr] --> src/maildirqueue.rs:77:13 Nov 29 20:58:35.447 INFO [stderr] | Nov 29 20:58:35.447 INFO [stderr] 77 | f.sync_data(); Nov 29 20:58:35.447 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 29 20:58:35.447 INFO [stderr] | Nov 29 20:58:35.447 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.447 INFO [stderr] Nov 29 20:58:35.448 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.448 INFO [stderr] --> src/maildirqueue.rs:80:9 Nov 29 20:58:35.448 INFO [stderr] | Nov 29 20:58:35.448 INFO [stderr] 80 | fs::rename(Path::new(&tmp_path), Path::new(&new_path)); // Rename from tmp to new Nov 29 20:58:35.448 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.448 INFO [stderr] | Nov 29 20:58:35.448 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.448 INFO [stderr] Nov 29 20:58:35.449 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.449 INFO [stderr] --> src/maildirqueue.rs:121:20 Nov 29 20:58:35.449 INFO [stderr] | Nov 29 20:58:35.449 INFO [stderr] 121 | fs::rename(entry.path(), Path::new(&cur_path)); // Rename from new to cur directory Nov 29 20:58:35.449 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.449 INFO [stderr] | Nov 29 20:58:35.450 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.450 INFO [stderr] Nov 29 20:58:35.450 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.450 INFO [stderr] --> src/maildirqueue.rs:126:25 Nov 29 20:58:35.450 INFO [stderr] | Nov 29 20:58:35.450 INFO [stderr] 126 | buf_reader.read_to_string(&mut contents); Nov 29 20:58:35.450 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.450 INFO [stderr] | Nov 29 20:58:35.450 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.450 INFO [stderr] Nov 29 20:58:35.451 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.451 INFO [stderr] --> src/maildirqueue.rs:128:29 Nov 29 20:58:35.451 INFO [stderr] | Nov 29 20:58:35.451 INFO [stderr] 128 | fs::remove_file(&cur_path); Nov 29 20:58:35.451 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.451 INFO [stderr] | Nov 29 20:58:35.451 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.451 INFO [stderr] Nov 29 20:58:35.452 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.452 INFO [stderr] --> src/maildirqueue.rs:132:29 Nov 29 20:58:35.452 INFO [stderr] | Nov 29 20:58:35.452 INFO [stderr] 132 | fs::remove_file(&cur_path); Nov 29 20:58:35.452 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.452 INFO [stderr] | Nov 29 20:58:35.452 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.452 INFO [stderr] Nov 29 20:58:35.453 INFO [stderr] warning: method `sendJson` should have a snake case name such as `send_json` Nov 29 20:58:35.453 INFO [stderr] --> src/jsonsender.rs:45:5 Nov 29 20:58:35.453 INFO [stderr] | Nov 29 20:58:35.453 INFO [stderr] 45 | / pub fn sendJson(&self, jsonString:&str, res_path:&str) -> Result { Nov 29 20:58:35.453 INFO [stderr] 46 | | Nov 29 20:58:35.453 INFO [stderr] 47 | | let mut core = Core::new().unwrap(); Nov 29 20:58:35.453 INFO [stderr] 48 | | let handle = core.handle(); Nov 29 20:58:35.453 INFO [stderr] ... | Nov 29 20:58:35.453 INFO [stderr] 101 | | return Err("Problem sending request"); Nov 29 20:58:35.453 INFO [stderr] 102 | | } Nov 29 20:58:35.453 INFO [stderr] | |_____^ Nov 29 20:58:35.454 INFO [stderr] Nov 29 20:58:35.454 INFO [stderr] warning: variable `jsonString` should have a snake case name such as `json_string` Nov 29 20:58:35.454 INFO [stderr] --> src/jsonsender.rs:45:28 Nov 29 20:58:35.454 INFO [stderr] | Nov 29 20:58:35.454 INFO [stderr] 45 | pub fn sendJson(&self, jsonString:&str, res_path:&str) -> Result { Nov 29 20:58:35.454 INFO [stderr] | ^^^^^^^^^^ Nov 29 20:58:35.454 INFO [stderr] Nov 29 20:58:35.454 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.454 INFO [stderr] --> src/jsonsender.rs:82:33 Nov 29 20:58:35.454 INFO [stderr] | Nov 29 20:58:35.454 INFO [stderr] 82 | f.write_all(&bodyiter); Nov 29 20:58:35.454 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.454 INFO [stderr] | Nov 29 20:58:35.454 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.454 INFO [stderr] Nov 29 20:58:35.455 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.455 INFO [stderr] --> src/jsonsender.rs:83:33 Nov 29 20:58:35.455 INFO [stderr] | Nov 29 20:58:35.455 INFO [stderr] 83 | f.sync_data(); Nov 29 20:58:35.455 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 29 20:58:35.455 INFO [stderr] | Nov 29 20:58:35.455 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.455 INFO [stderr] Nov 29 20:58:35.456 INFO [stderr] warning: function `startServer` should have a snake case name such as `start_server` Nov 29 20:58:35.456 INFO [stderr] --> src/main.rs:51:1 Nov 29 20:58:35.456 INFO [stderr] | Nov 29 20:58:35.456 INFO [stderr] 51 | / fn startServer(baseDir:&str) { Nov 29 20:58:35.456 INFO [stderr] 52 | | let sender = Box::new(JsonSender::new()); Nov 29 20:58:35.456 INFO [stderr] 53 | | let mail_dir_que = Box::new(MaildirQueue::new(baseDir.to_string())); Nov 29 20:58:35.456 INFO [stderr] 54 | | if let Some(ref mail_dir_que) = mail_dir_que.init() { Nov 29 20:58:35.456 INFO [stderr] ... | Nov 29 20:58:35.456 INFO [stderr] 73 | | } Nov 29 20:58:35.456 INFO [stderr] 74 | | } Nov 29 20:58:35.456 INFO [stderr] | |_^ Nov 29 20:58:35.456 INFO [stderr] Nov 29 20:58:35.458 INFO [stderr] warning: variable `baseDir` should have a snake case name such as `base_dir` Nov 29 20:58:35.458 INFO [stderr] --> src/main.rs:51:16 Nov 29 20:58:35.458 INFO [stderr] | Nov 29 20:58:35.458 INFO [stderr] 51 | fn startServer(baseDir:&str) { Nov 29 20:58:35.458 INFO [stderr] | ^^^^^^^ Nov 29 20:58:35.458 INFO [stderr] Nov 29 20:58:35.572 INFO [stderr] warning: unused import: `std::time::SystemTime` Nov 29 20:58:35.573 INFO [stderr] --> src/maildirqueue.rs:7:5 Nov 29 20:58:35.573 INFO [stderr] | Nov 29 20:58:35.573 INFO [stderr] 7 | use std::time::SystemTime; Nov 29 20:58:35.573 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.573 INFO [stderr] | Nov 29 20:58:35.573 INFO [stderr] = note: #[warn(unused_imports)] on by default Nov 29 20:58:35.573 INFO [stderr] Nov 29 20:58:35.573 INFO [stderr] warning: unused import: `std::os::raw::c_char` Nov 29 20:58:35.573 INFO [stderr] --> src/jsonsender.rs:10:5 Nov 29 20:58:35.573 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 10 | use std::os::raw::c_char; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `std::io::BufReader` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:13:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 13 | use std::io::BufReader; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `std::io::prelude::*` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:14:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 14 | use std::io::prelude::*; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `jsonsender::hyper::Body` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:16:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 16 | use jsonsender::hyper::Body; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `jsonsender::hyper::Chunk` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:17:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 17 | use jsonsender::hyper::Chunk; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `self` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:21:15 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 21 | use std::io::{self, Write}; Nov 29 20:58:35.574 INFO [stderr] | ^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `self::hyper::client::Response` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:25:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 25 | use self::hyper::client::Response; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `self::hyper::header::Headers` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:26:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 26 | use self::hyper::header::Headers; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `self::url::Url` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:27:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 27 | use self::url::Url; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `self::hyper::Uri` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:29:5 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 29 | use self::hyper::Uri; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^^^^^^^^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.574 INFO [stderr] warning: unused import: `Error` Nov 29 20:58:35.574 INFO [stderr] --> src/jsonsender.rs:32:31 Nov 29 20:58:35.574 INFO [stderr] | Nov 29 20:58:35.574 INFO [stderr] 32 | use self::serde_json::{Value, Error}; Nov 29 20:58:35.574 INFO [stderr] | ^^^^^ Nov 29 20:58:35.574 INFO [stderr] Nov 29 20:58:35.668 INFO [stderr] warning: unreachable statement Nov 29 20:58:35.668 INFO [stderr] --> src/main.rs:72:9 Nov 29 20:58:35.668 INFO [stderr] | Nov 29 20:58:35.668 INFO [stderr] 72 | println!("Decided to give up... no more in the queue"); Nov 29 20:58:35.668 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.668 INFO [stderr] | Nov 29 20:58:35.668 INFO [stderr] = note: #[warn(unreachable_code)] on by default Nov 29 20:58:35.668 INFO [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) Nov 29 20:58:35.668 INFO [stderr] Nov 29 20:58:35.804 INFO [stderr] warning: variable does not need to be mutable Nov 29 20:58:35.804 INFO [stderr] --> src/maildirqueue.rs:99:20 Nov 29 20:58:35.804 INFO [stderr] | Nov 29 20:58:35.804 INFO [stderr] 99 | if let Ok(mut entries) = fs::read_dir(new_path) { Nov 29 20:58:35.804 INFO [stderr] | ----^^^^^^^ Nov 29 20:58:35.804 INFO [stderr] | | Nov 29 20:58:35.804 INFO [stderr] | help: remove this `mut` Nov 29 20:58:35.804 INFO [stderr] | Nov 29 20:58:35.804 INFO [stderr] = note: #[warn(unused_mut)] on by default Nov 29 20:58:35.804 INFO [stderr] Nov 29 20:58:35.812 INFO [stderr] warning: static item is never used: `RES` Nov 29 20:58:35.812 INFO [stderr] --> src/maildirqueue.rs:17:1 Nov 29 20:58:35.812 INFO [stderr] | Nov 29 20:58:35.812 INFO [stderr] 17 | static RES: &'static str = "res"; // using the queue for a request/response area, give the user a place to move responses. Nov 29 20:58:35.812 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.813 INFO [stderr] | Nov 29 20:58:35.813 INFO [stderr] = note: #[warn(dead_code)] on by default Nov 29 20:58:35.813 INFO [stderr] Nov 29 20:58:35.813 INFO [stderr] warning: method is never used: `push` Nov 29 20:58:35.813 INFO [stderr] --> src/maildirqueue.rs:84:5 Nov 29 20:58:35.813 INFO [stderr] | Nov 29 20:58:35.813 INFO [stderr] 84 | pub fn push(&self, request_body:&str) -> bool { Nov 29 20:58:35.813 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.813 INFO [stderr] Nov 29 20:58:35.813 INFO [stderr] warning: method is never used: `res` Nov 29 20:58:35.813 INFO [stderr] --> src/maildirqueue.rs:93:5 Nov 29 20:58:35.813 INFO [stderr] | Nov 29 20:58:35.813 INFO [stderr] 93 | pub fn res(&self, request_body:&str) -> bool { Nov 29 20:58:35.813 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.813 INFO [stderr] Nov 29 20:58:35.813 INFO [stderr] warning: method `moveFile` should have a snake case name such as `move_file` Nov 29 20:58:35.813 INFO [stderr] --> src/maildirqueue.rs:70:5 Nov 29 20:58:35.813 INFO [stderr] | Nov 29 20:58:35.813 INFO [stderr] 70 | / fn moveFile(&self, request_body:&str, from:&str, to:&str, suffix:Option<&str>) -> bool { Nov 29 20:58:35.813 INFO [stderr] 71 | | let filename = format!("{}", Uuid::new_v4()) + if let Some(suf) = suffix { suf } else { "" }; Nov 29 20:58:35.813 INFO [stderr] 72 | | let tmp_path = self.base_dir.clone().as_str().to_owned() + "/" + from + "/" + filename.as_str(); Nov 29 20:58:35.813 INFO [stderr] 73 | | let new_path = self.base_dir.clone().as_str().to_owned() + "/" + to + "/" + filename.as_str(); Nov 29 20:58:35.813 INFO [stderr] ... | Nov 29 20:58:35.813 INFO [stderr] 82 | | true Nov 29 20:58:35.813 INFO [stderr] 83 | | } Nov 29 20:58:35.813 INFO [stderr] | |_____^ Nov 29 20:58:35.813 INFO [stderr] | Nov 29 20:58:35.813 INFO [stderr] = note: #[warn(non_snake_case)] on by default Nov 29 20:58:35.813 INFO [stderr] Nov 29 20:58:35.814 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.814 INFO [stderr] --> src/maildirqueue.rs:75:13 Nov 29 20:58:35.814 INFO [stderr] | Nov 29 20:58:35.814 INFO [stderr] 75 | f.write_all(request_body.as_bytes()); Nov 29 20:58:35.814 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.814 INFO [stderr] | Nov 29 20:58:35.814 INFO [stderr] = note: #[warn(unused_must_use)] on by default Nov 29 20:58:35.814 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.814 INFO [stderr] Nov 29 20:58:35.814 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.814 INFO [stderr] --> src/maildirqueue.rs:77:13 Nov 29 20:58:35.814 INFO [stderr] | Nov 29 20:58:35.814 INFO [stderr] 77 | f.sync_data(); Nov 29 20:58:35.814 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 29 20:58:35.814 INFO [stderr] | Nov 29 20:58:35.815 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.815 INFO [stderr] Nov 29 20:58:35.815 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.815 INFO [stderr] --> src/maildirqueue.rs:80:9 Nov 29 20:58:35.815 INFO [stderr] | Nov 29 20:58:35.815 INFO [stderr] 80 | fs::rename(Path::new(&tmp_path), Path::new(&new_path)); // Rename from tmp to new Nov 29 20:58:35.815 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.815 INFO [stderr] | Nov 29 20:58:35.815 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.815 INFO [stderr] Nov 29 20:58:35.820 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.820 INFO [stderr] --> src/maildirqueue.rs:121:20 Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] 121 | fs::rename(entry.path(), Path::new(&cur_path)); // Rename from new to cur directory Nov 29 20:58:35.820 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.820 INFO [stderr] Nov 29 20:58:35.820 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.820 INFO [stderr] --> src/maildirqueue.rs:126:25 Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] 126 | buf_reader.read_to_string(&mut contents); Nov 29 20:58:35.820 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.820 INFO [stderr] Nov 29 20:58:35.820 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.820 INFO [stderr] --> src/maildirqueue.rs:128:29 Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] 128 | fs::remove_file(&cur_path); Nov 29 20:58:35.820 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.820 INFO [stderr] Nov 29 20:58:35.820 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.820 INFO [stderr] --> src/maildirqueue.rs:132:29 Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] 132 | fs::remove_file(&cur_path); Nov 29 20:58:35.820 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.820 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.820 INFO [stderr] Nov 29 20:58:35.820 INFO [stderr] warning: method `sendJson` should have a snake case name such as `send_json` Nov 29 20:58:35.820 INFO [stderr] --> src/jsonsender.rs:45:5 Nov 29 20:58:35.820 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] 45 | / pub fn sendJson(&self, jsonString:&str, res_path:&str) -> Result { Nov 29 20:58:35.821 INFO [stderr] 46 | | Nov 29 20:58:35.821 INFO [stderr] 47 | | let mut core = Core::new().unwrap(); Nov 29 20:58:35.821 INFO [stderr] 48 | | let handle = core.handle(); Nov 29 20:58:35.821 INFO [stderr] ... | Nov 29 20:58:35.821 INFO [stderr] 101 | | return Err("Problem sending request"); Nov 29 20:58:35.821 INFO [stderr] 102 | | } Nov 29 20:58:35.821 INFO [stderr] | |_____^ Nov 29 20:58:35.821 INFO [stderr] Nov 29 20:58:35.821 INFO [stderr] warning: variable `jsonString` should have a snake case name such as `json_string` Nov 29 20:58:35.821 INFO [stderr] --> src/jsonsender.rs:45:28 Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] 45 | pub fn sendJson(&self, jsonString:&str, res_path:&str) -> Result { Nov 29 20:58:35.821 INFO [stderr] | ^^^^^^^^^^ Nov 29 20:58:35.821 INFO [stderr] Nov 29 20:58:35.821 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.821 INFO [stderr] --> src/jsonsender.rs:82:33 Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] 82 | f.write_all(&bodyiter); Nov 29 20:58:35.821 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.821 INFO [stderr] Nov 29 20:58:35.821 INFO [stderr] warning: unused `std::result::Result` that must be used Nov 29 20:58:35.821 INFO [stderr] --> src/jsonsender.rs:83:33 Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] 83 | f.sync_data(); Nov 29 20:58:35.821 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] = note: this `Result` may be an `Err` variant, which should be handled Nov 29 20:58:35.821 INFO [stderr] Nov 29 20:58:35.821 INFO [stderr] warning: function `startServer` should have a snake case name such as `start_server` Nov 29 20:58:35.821 INFO [stderr] --> src/main.rs:51:1 Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] 51 | / fn startServer(baseDir:&str) { Nov 29 20:58:35.821 INFO [stderr] 52 | | let sender = Box::new(JsonSender::new()); Nov 29 20:58:35.821 INFO [stderr] 53 | | let mail_dir_que = Box::new(MaildirQueue::new(baseDir.to_string())); Nov 29 20:58:35.821 INFO [stderr] 54 | | if let Some(ref mail_dir_que) = mail_dir_que.init() { Nov 29 20:58:35.821 INFO [stderr] ... | Nov 29 20:58:35.821 INFO [stderr] 73 | | } Nov 29 20:58:35.821 INFO [stderr] 74 | | } Nov 29 20:58:35.821 INFO [stderr] | |_^ Nov 29 20:58:35.821 INFO [stderr] Nov 29 20:58:35.821 INFO [stderr] warning: variable `baseDir` should have a snake case name such as `base_dir` Nov 29 20:58:35.821 INFO [stderr] --> src/main.rs:51:16 Nov 29 20:58:35.821 INFO [stderr] | Nov 29 20:58:35.821 INFO [stderr] 51 | fn startServer(baseDir:&str) { Nov 29 20:58:35.821 INFO [stderr] | ^^^^^^^ Nov 29 20:58:35.821 INFO [stderr] Nov 29 20:58:35.849 INFO [stderr] Finished dev [unoptimized + debuginfo] target(s) in 21.84s Nov 29 20:58:35.858 INFO [stderr] su: No module specific data is present Nov 29 20:58:36.830 INFO running `"docker" "inspect" "b386227407ed9740ff04740b36aafcd791cac0eb8316d3d8eaabbca9ec2f5a9e"` Nov 29 20:58:37.116 INFO running `"docker" "rm" "-f" "b386227407ed9740ff04740b36aafcd791cac0eb8316d3d8eaabbca9ec2f5a9e"` Nov 29 20:58:37.469 INFO [stdout] b386227407ed9740ff04740b36aafcd791cac0eb8316d3d8eaabbca9ec2f5a9e