[INFO] fetching crate encryptfile 0.1.3...
[INFO] testing encryptfile-0.1.3 against 1.75.0 for beta-1.76-1
[INFO] extracting crate encryptfile 0.1.3 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate encryptfile 0.1.3 on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate encryptfile 0.1.3
[INFO] finished tweaking crates.io crate encryptfile 0.1.3
[INFO] tweaked toml for crates.io crate encryptfile 0.1.3 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded byteorder v0.4.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 56afdd0ddbc38b2039d07dffc242f2478a750f8936e4ac462be69da2dda17fbf
[INFO] running `Command { std: "docker" "start" "-a" "56afdd0ddbc38b2039d07dffc242f2478a750f8936e4ac462be69da2dda17fbf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "56afdd0ddbc38b2039d07dffc242f2478a750f8936e4ac462be69da2dda17fbf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "56afdd0ddbc38b2039d07dffc242f2478a750f8936e4ac462be69da2dda17fbf", kill_on_drop: false }`
[INFO] [stdout] 56afdd0ddbc38b2039d07dffc242f2478a750f8936e4ac462be69da2dda17fbf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 1b6a21729ea8ac9b90b194efa18d29f7dc77c441cef321e2cb4afcb79c279b4f
[INFO] running `Command { std: "docker" "start" "-a" "1b6a21729ea8ac9b90b194efa18d29f7dc77c441cef321e2cb4afcb79c279b4f", kill_on_drop: false }`
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]    Compiling rustc-serialize v0.3.25
[INFO] [stderr]    Compiling byteorder v0.4.2
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling encryptfile v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypto_util.rs:75:30
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 let result = try!(encryptor.encrypt(&mut read_buffer,
[INFO] [stdout]    |                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypto_util.rs:118:30
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 let result = try!(decryptor.decrypt(&mut read_buffer,
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::process`
[INFO] [stdout]   --> src/crypt.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use super::process;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(s.write_u64::<LittleEndian>(self.magic));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         try!(s.write_u32::<LittleEndian>(self.fversion));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         try!(s.write_u32::<LittleEndian>(self.hmac_len));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |         try!(s.write_u32::<LittleEndian>(self.key_md_size));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(s.write_all(&self.iv));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         try!(header.verify());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |             magic: try!(s.read_u64::<LittleEndian>()),
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:86:23
[INFO] [stdout]    |
[INFO] [stdout] 86 |             fversion: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:87:23
[INFO] [stdout]    |
[INFO] [stdout] 87 |             hmac_len: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:88:26
[INFO] [stdout]    |
[INFO] [stdout] 88 |             key_md_size: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:93:21
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let nread = try!(s.read(&mut header.iv));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             try!(md.write_u32::<LittleEndian>(MD_TYPE_SCRYPT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             try!(md.write_u8(logn));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             try!(md.write_u32::<LittleEndian>(r));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             try!(md.write_u32::<LittleEndian>(p));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:138:17
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let nread = try!(s.read(&mut raw_bytes));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let ktype = try!(s.read_u32::<LittleEndian>());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 let logn = ScryptLogN(try!(s.read_u8()));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:149:33
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 let r = ScryptR(try!(s.read_u32::<LittleEndian>()));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:150:33
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 let p = ScryptP(try!(s.read_u32::<LittleEndian>()));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     try!(out_stream.write_all(&header));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     try!(out_stream.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     try!(header.write(&mut out_stream));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     try!(out_stream.write_all(&hmac));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     try!(out_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     try!(out_stream.write_all(&key_md));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:167:17
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let pwkey = try!(super::get_pw_key(state.config));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout] 177 |     let key_md = try!(get_key_metadata(state.config));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:186:24
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let num_read = try!(in_stream.read(buf));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:224:15
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let pos = try!(out_stream.seek(SeekFrom::Current(0)));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     try!(in_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |     try!(in_stream.seek(SeekFrom::Start(header_capacity as u64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:240:18
[INFO] [stdout]     |
[INFO] [stdout] 240 |     let header = try!(FileHeader::read(&mut in_stream));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |     let nread = try!(in_stream.read(&mut hmac_bytes));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:253:38
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let (method, raw_md_bytes) = try!(read_key_metadata(&mut in_stream,
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:255:19
[INFO] [stdout]     |
[INFO] [stdout] 255 |         let key = try!(match *state.config.get_password() {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:280:19
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let key = try!(super::get_pw_key(state.config));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:292:24
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let num_read = try!(in_stream.read(buf));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:298:22
[INFO] [stdout]     |
[INFO] [stdout] 298 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:288:49
[INFO] [stdout]     |
[INFO] [stdout] 288 |         InputStream::File(ref file) => Box::new(try!(File::open(file))),
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:303:22
[INFO] [stdout]     |
[INFO] [stdout] 303 |             Box::new(try!(OpenOptions::new().read(true).write(true).create(true).open(file)))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             try!(encrypt(state, in_stream, out_stream))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:324:22
[INFO] [stdout]     |
[INFO] [stdout] 324 |             let iv = try!(get_iv(c));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:339:17
[INFO] [stdout]     |
[INFO] [stdout] 339 |                 try!(decrypt(state, in_stream, Box::new(tstream)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:341:17
[INFO] [stdout]     |
[INFO] [stdout] 341 |                 try!(rename(tmp_outpath, fname));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:338:31
[INFO] [stdout]     |
[INFO] [stdout] 338 |                 let tstream = try!(File::create(&tmp_outpath));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:343:17
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 try!(decrypt(state, in_stream, out_stream))
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Func(Rc<Box<Fn() -> u8>>),
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Func(Rc<Box<dyn Fn() -> u8>>),
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/config.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 |     Func(Rc<Box<Fn() -> IvArray>>),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 |     Func(Rc<Box<dyn Fn() -> IvArray>>),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/config.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Func(Rc<Box<Fn() -> PwKeyArray>>),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Func(Rc<Box<dyn Fn() -> PwKeyArray>>),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypto_util.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Encrypting(Box<crypto::symmetriccipher::Encryptor>),
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Encrypting(Box<dyn crypto::symmetriccipher::Encryptor>),
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypto_util.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Decrypting(Box<crypto::symmetriccipher::Decryptor>),
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Decrypting(Box<dyn crypto::symmetriccipher::Decryptor>),
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn read_key_metadata(s: &mut Read,
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn read_key_metadata(s: &mut dyn Read,
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:163:35
[INFO] [stdout]     |
[INFO] [stdout] 163 |                mut in_stream: Box<SeekRead>,
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:164:36
[INFO] [stdout]     |
[INFO] [stdout] 164 |                mut out_stream: Box<SeekWrite>)
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 164 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:236:35
[INFO] [stdout]     |
[INFO] [stdout] 236 |                mut in_stream: Box<SeekRead>,
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 236 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:237:36
[INFO] [stdout]     |
[INFO] [stdout] 237 |                mut out_stream: Box<SeekWrite>)
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 237 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypt.rs:58:33
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn write(&self, s: &mut Write) -> Result<(), EncryptError> {
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn write(&self, s: &mut dyn Write) -> Result<(), EncryptError> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypt.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn read(s: &mut Read) -> Result<FileHeader, EncryptError> {
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn read(s: &mut dyn Read) -> Result<FileHeader, EncryptError> {
[INFO] [stdout]    |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:283:24
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let in_stream: Box<SeekRead> = match *c.get_input_stream() {
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let in_stream: Box<dyn SeekRead> = match *c.get_input_stream() {
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:291:25
[INFO] [stdout]     |
[INFO] [stdout] 291 |     let out_stream: Box<SeekWrite> = match *c.get_output_stream() {
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 291 |     let out_stream: Box<dyn SeekWrite> = match *c.get_output_stream() {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/lib.rs:77:15
[INFO] [stdout]    |
[INFO] [stdout] 77 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/lib.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/crypt.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |     let mut buf = state.read_buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/crypt.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |     let mut buf = state.read_buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:205:25
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let mut first = &mut iv[0..IV_SIZE / 2];
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:209:25
[INFO] [stdout]     |
[INFO] [stdout] 209 |                     let mut second = &mut iv[IV_SIZE / 2..IV_SIZE];
[INFO] [stdout]     |                         ----^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 71 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 2.77s
[INFO] running `Command { std: "docker" "inspect" "1b6a21729ea8ac9b90b194efa18d29f7dc77c441cef321e2cb4afcb79c279b4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1b6a21729ea8ac9b90b194efa18d29f7dc77c441cef321e2cb4afcb79c279b4f", kill_on_drop: false }`
[INFO] [stdout] 1b6a21729ea8ac9b90b194efa18d29f7dc77c441cef321e2cb4afcb79c279b4f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8daf17b8cbea74389ccf2fc607f28c9822268090719c996fb516f83a6ab0fc79
[INFO] running `Command { std: "docker" "start" "-a" "8daf17b8cbea74389ccf2fc607f28c9822268090719c996fb516f83a6ab0fc79", kill_on_drop: false }`
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypto_util.rs:75:30
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 let result = try!(encryptor.encrypt(&mut read_buffer,
[INFO] [stdout]    |                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypto_util.rs:118:30
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 let result = try!(decryptor.decrypt(&mut read_buffer,
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::process`
[INFO] [stdout]   --> src/crypt.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub use super::process;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(s.write_u64::<LittleEndian>(self.magic));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         try!(s.write_u32::<LittleEndian>(self.fversion));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         try!(s.write_u32::<LittleEndian>(self.hmac_len));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |         try!(s.write_u32::<LittleEndian>(self.key_md_size));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(s.write_all(&self.iv));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         try!(header.verify());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |             magic: try!(s.read_u64::<LittleEndian>()),
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:86:23
[INFO] [stdout]    |
[INFO] [stdout] 86 |             fversion: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:87:23
[INFO] [stdout]    |
[INFO] [stdout] 87 |             hmac_len: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:88:26
[INFO] [stdout]    |
[INFO] [stdout] 88 |             key_md_size: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:93:21
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let nread = try!(s.read(&mut header.iv));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             try!(md.write_u32::<LittleEndian>(MD_TYPE_SCRYPT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             try!(md.write_u8(logn));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             try!(md.write_u32::<LittleEndian>(r));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             try!(md.write_u32::<LittleEndian>(p));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:138:17
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let nread = try!(s.read(&mut raw_bytes));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let ktype = try!(s.read_u32::<LittleEndian>());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 let logn = ScryptLogN(try!(s.read_u8()));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:149:33
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 let r = ScryptR(try!(s.read_u32::<LittleEndian>()));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:150:33
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 let p = ScryptP(try!(s.read_u32::<LittleEndian>()));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     try!(out_stream.write_all(&header));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     try!(out_stream.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     try!(header.write(&mut out_stream));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     try!(out_stream.write_all(&hmac));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     try!(out_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     try!(out_stream.write_all(&key_md));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:167:17
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let pwkey = try!(super::get_pw_key(state.config));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout] 177 |     let key_md = try!(get_key_metadata(state.config));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:186:24
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let num_read = try!(in_stream.read(buf));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:224:15
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let pos = try!(out_stream.seek(SeekFrom::Current(0)));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     try!(in_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |     try!(in_stream.seek(SeekFrom::Start(header_capacity as u64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:240:18
[INFO] [stdout]     |
[INFO] [stdout] 240 |     let header = try!(FileHeader::read(&mut in_stream));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |     let nread = try!(in_stream.read(&mut hmac_bytes));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:253:38
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let (method, raw_md_bytes) = try!(read_key_metadata(&mut in_stream,
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:255:19
[INFO] [stdout]     |
[INFO] [stdout] 255 |         let key = try!(match *state.config.get_password() {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:280:19
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let key = try!(super::get_pw_key(state.config));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:292:24
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let num_read = try!(in_stream.read(buf));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:298:22
[INFO] [stdout]     |
[INFO] [stdout] 298 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:288:49
[INFO] [stdout]     |
[INFO] [stdout] 288 |         InputStream::File(ref file) => Box::new(try!(File::open(file))),
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:303:22
[INFO] [stdout]     |
[INFO] [stdout] 303 |             Box::new(try!(OpenOptions::new().read(true).write(true).create(true).open(file)))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             try!(encrypt(state, in_stream, out_stream))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:324:22
[INFO] [stdout]     |
[INFO] [stdout] 324 |             let iv = try!(get_iv(c));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:339:17
[INFO] [stdout]     |
[INFO] [stdout] 339 |                 try!(decrypt(state, in_stream, Box::new(tstream)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:341:17
[INFO] [stdout]     |
[INFO] [stdout] 341 |                 try!(rename(tmp_outpath, fname));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:338:31
[INFO] [stdout]     |
[INFO] [stdout] 338 |                 let tstream = try!(File::create(&tmp_outpath));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:343:17
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 try!(decrypt(state, in_stream, out_stream))
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Func(Rc<Box<Fn() -> u8>>),
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Func(Rc<Box<dyn Fn() -> u8>>),
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/config.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 |     Func(Rc<Box<Fn() -> IvArray>>),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 |     Func(Rc<Box<dyn Fn() -> IvArray>>),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/config.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Func(Rc<Box<Fn() -> PwKeyArray>>),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Func(Rc<Box<dyn Fn() -> PwKeyArray>>),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypto_util.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Encrypting(Box<crypto::symmetriccipher::Encryptor>),
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Encrypting(Box<dyn crypto::symmetriccipher::Encryptor>),
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypto_util.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Decrypting(Box<crypto::symmetriccipher::Decryptor>),
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Decrypting(Box<dyn crypto::symmetriccipher::Decryptor>),
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn read_key_metadata(s: &mut Read,
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn read_key_metadata(s: &mut dyn Read,
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:163:35
[INFO] [stdout]     |
[INFO] [stdout] 163 |                mut in_stream: Box<SeekRead>,
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:164:36
[INFO] [stdout]     |
[INFO] [stdout] 164 |                mut out_stream: Box<SeekWrite>)
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 164 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:236:35
[INFO] [stdout]     |
[INFO] [stdout] 236 |                mut in_stream: Box<SeekRead>,
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 236 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:237:36
[INFO] [stdout]     |
[INFO] [stdout] 237 |                mut out_stream: Box<SeekWrite>)
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 237 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypt.rs:58:33
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn write(&self, s: &mut Write) -> Result<(), EncryptError> {
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn write(&self, s: &mut dyn Write) -> Result<(), EncryptError> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypt.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn read(s: &mut Read) -> Result<FileHeader, EncryptError> {
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn read(s: &mut dyn Read) -> Result<FileHeader, EncryptError> {
[INFO] [stdout]    |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:283:24
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let in_stream: Box<SeekRead> = match *c.get_input_stream() {
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let in_stream: Box<dyn SeekRead> = match *c.get_input_stream() {
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:291:25
[INFO] [stdout]     |
[INFO] [stdout] 291 |     let out_stream: Box<SeekWrite> = match *c.get_output_stream() {
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 291 |     let out_stream: Box<dyn SeekWrite> = match *c.get_output_stream() {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/lib.rs:77:15
[INFO] [stdout]    |
[INFO] [stdout] 77 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/lib.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/crypt.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |     let mut buf = state.read_buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/crypt.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |     let mut buf = state.read_buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:205:25
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let mut first = &mut iv[0..IV_SIZE / 2];
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:209:25
[INFO] [stdout]     |
[INFO] [stdout] 209 |                     let mut second = &mut iv[IV_SIZE / 2..IV_SIZE];
[INFO] [stdout]     |                         ----^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 71 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling encryptfile v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypto_util.rs:75:30
[INFO] [stdout]    |
[INFO] [stdout] 75 |                 let result = try!(encryptor.encrypt(&mut read_buffer,
[INFO] [stdout]    |                              ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypto_util.rs:118:30
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 let result = try!(decryptor.decrypt(&mut read_buffer,
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         try!(s.write_u64::<LittleEndian>(self.magic));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |         try!(s.write_u32::<LittleEndian>(self.fversion));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         try!(s.write_u32::<LittleEndian>(self.hmac_len));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |         try!(s.write_u32::<LittleEndian>(self.key_md_size));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:63:9
[INFO] [stdout]    |
[INFO] [stdout] 63 |         try!(s.write_all(&self.iv));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |         try!(header.verify());
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:85:20
[INFO] [stdout]    |
[INFO] [stdout] 85 |             magic: try!(s.read_u64::<LittleEndian>()),
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:86:23
[INFO] [stdout]    |
[INFO] [stdout] 86 |             fversion: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:87:23
[INFO] [stdout]    |
[INFO] [stdout] 87 |             hmac_len: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:88:26
[INFO] [stdout]    |
[INFO] [stdout] 88 |             key_md_size: try!(s.read_u32::<LittleEndian>()),
[INFO] [stdout]    |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/crypt.rs:93:21
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let nread = try!(s.read(&mut header.iv));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |             try!(md.write_u32::<LittleEndian>(MD_TYPE_SCRYPT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 |             try!(md.write_u8(logn));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             try!(md.write_u32::<LittleEndian>(r));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             try!(md.write_u32::<LittleEndian>(p));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:138:17
[INFO] [stdout]     |
[INFO] [stdout] 138 |     let nread = try!(s.read(&mut raw_bytes));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:145:21
[INFO] [stdout]     |
[INFO] [stdout] 145 |         let ktype = try!(s.read_u32::<LittleEndian>());
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 |                 let logn = ScryptLogN(try!(s.read_u8()));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:149:33
[INFO] [stdout]     |
[INFO] [stdout] 149 |                 let r = ScryptR(try!(s.read_u32::<LittleEndian>()));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:150:33
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 let p = ScryptP(try!(s.read_u32::<LittleEndian>()));
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     try!(out_stream.write_all(&header));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:216:5
[INFO] [stdout]     |
[INFO] [stdout] 216 |     try!(out_stream.seek(SeekFrom::Start(0)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     try!(header.write(&mut out_stream));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     try!(out_stream.write_all(&hmac));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     try!(out_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     try!(out_stream.write_all(&key_md));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:167:17
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let pwkey = try!(super::get_pw_key(state.config));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:177:18
[INFO] [stdout]     |
[INFO] [stdout] 177 |     let key_md = try!(get_key_metadata(state.config));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:186:24
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let num_read = try!(in_stream.read(buf));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:224:15
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let pos = try!(out_stream.seek(SeekFrom::Current(0)));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:250:5
[INFO] [stdout]     |
[INFO] [stdout] 250 |     try!(in_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:289:5
[INFO] [stdout]     |
[INFO] [stdout] 289 |     try!(in_stream.seek(SeekFrom::Start(header_capacity as u64)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:240:18
[INFO] [stdout]     |
[INFO] [stdout] 240 |     let header = try!(FileHeader::read(&mut in_stream));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:245:17
[INFO] [stdout]     |
[INFO] [stdout] 245 |     let nread = try!(in_stream.read(&mut hmac_bytes));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:253:38
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let (method, raw_md_bytes) = try!(read_key_metadata(&mut in_stream,
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:255:19
[INFO] [stdout]     |
[INFO] [stdout] 255 |         let key = try!(match *state.config.get_password() {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:280:19
[INFO] [stdout]     |
[INFO] [stdout] 280 |         let key = try!(super::get_pw_key(state.config));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:292:24
[INFO] [stdout]     |
[INFO] [stdout] 292 |         let num_read = try!(in_stream.read(buf));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/crypt.rs:298:22
[INFO] [stdout]     |
[INFO] [stdout] 298 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:288:49
[INFO] [stdout]     |
[INFO] [stdout] 288 |         InputStream::File(ref file) => Box::new(try!(File::open(file))),
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:303:22
[INFO] [stdout]     |
[INFO] [stdout] 303 |             Box::new(try!(OpenOptions::new().read(true).write(true).create(true).open(file)))
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:326:13
[INFO] [stdout]     |
[INFO] [stdout] 326 |             try!(encrypt(state, in_stream, out_stream))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:324:22
[INFO] [stdout]     |
[INFO] [stdout] 324 |             let iv = try!(get_iv(c));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:339:17
[INFO] [stdout]     |
[INFO] [stdout] 339 |                 try!(decrypt(state, in_stream, Box::new(tstream)));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:341:17
[INFO] [stdout]     |
[INFO] [stdout] 341 |                 try!(rename(tmp_outpath, fname));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:338:31
[INFO] [stdout]     |
[INFO] [stdout] 338 |                 let tstream = try!(File::create(&tmp_outpath));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:343:17
[INFO] [stdout]     |
[INFO] [stdout] 343 |                 try!(decrypt(state, in_stream, out_stream))
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/config.rs:99:17
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Func(Rc<Box<Fn() -> u8>>),
[INFO] [stdout]    |                 ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |     Func(Rc<Box<dyn Fn() -> u8>>),
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/config.rs:112:17
[INFO] [stdout]     |
[INFO] [stdout] 112 |     Func(Rc<Box<Fn() -> IvArray>>),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 112 |     Func(Rc<Box<dyn Fn() -> IvArray>>),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/config.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Func(Rc<Box<Fn() -> PwKeyArray>>),
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 150 |     Func(Rc<Box<dyn Fn() -> PwKeyArray>>),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypto_util.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Encrypting(Box<crypto::symmetriccipher::Encryptor>),
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     Encrypting(Box<dyn crypto::symmetriccipher::Encryptor>),
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypto_util.rs:12:20
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Decrypting(Box<crypto::symmetriccipher::Decryptor>),
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 |     Decrypting(Box<dyn crypto::symmetriccipher::Decryptor>),
[INFO] [stdout]    |                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:128:30
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn read_key_metadata(s: &mut Read,
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 128 | fn read_key_metadata(s: &mut dyn Read,
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:163:35
[INFO] [stdout]     |
[INFO] [stdout] 163 |                mut in_stream: Box<SeekRead>,
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:164:36
[INFO] [stdout]     |
[INFO] [stdout] 164 |                mut out_stream: Box<SeekWrite>)
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 164 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:236:35
[INFO] [stdout]     |
[INFO] [stdout] 236 |                mut in_stream: Box<SeekRead>,
[INFO] [stdout]     |                                   ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 236 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/crypt.rs:237:36
[INFO] [stdout]     |
[INFO] [stdout] 237 |                mut out_stream: Box<SeekWrite>)
[INFO] [stdout]     |                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 237 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypt.rs:58:33
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn write(&self, s: &mut Write) -> Result<(), EncryptError> {
[INFO] [stdout]    |                                 ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 58 |     pub fn write(&self, s: &mut dyn Write) -> Result<(), EncryptError> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/crypt.rs:83:25
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn read(s: &mut Read) -> Result<FileHeader, EncryptError> {
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     pub fn read(s: &mut dyn Read) -> Result<FileHeader, EncryptError> {
[INFO] [stdout]    |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:283:24
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let in_stream: Box<SeekRead> = match *c.get_input_stream() {
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 283 |     let in_stream: Box<dyn SeekRead> = match *c.get_input_stream() {
[INFO] [stdout]     |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:291:25
[INFO] [stdout]     |
[INFO] [stdout] 291 |     let out_stream: Box<SeekWrite> = match *c.get_output_stream() {
[INFO] [stdout]     |                         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 291 |     let out_stream: Box<dyn SeekWrite> = match *c.get_output_stream() {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Read`
[INFO] [stdout]   --> src/lib.rs:77:15
[INFO] [stdout]    |
[INFO] [stdout] 77 | use std::io::{Read, Write};
[INFO] [stdout]    |               ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]   --> src/lib.rs:77:21
[INFO] [stdout]    |
[INFO] [stdout] 77 | use std::io::{Read, Write};
[INFO] [stdout]    |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/crypt.rs:174:9
[INFO] [stdout]     |
[INFO] [stdout] 174 |     let mut buf = state.read_buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/crypt.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |     let mut buf = state.read_buf;
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:205:25
[INFO] [stdout]     |
[INFO] [stdout] 205 |                     let mut first = &mut iv[0..IV_SIZE / 2];
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:209:25
[INFO] [stdout]     |
[INFO] [stdout] 209 |                     let mut second = &mut iv[IV_SIZE / 2..IV_SIZE];
[INFO] [stdout]     |                         ----^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/crypt.rs:390:17
[INFO] [stdout]     |
[INFO] [stdout] 390 |                 format!("Expected '{}', got '{}'", expected, s));
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 390 -                 format!("Expected '{}', got '{}'", expected, s));
[INFO] [stdout] 390 +                 "Expected '{}', got '{}'", expected, s);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/lib.rs:359:27
[INFO] [stdout]     |
[INFO] [stdout] 359 |         assert!(xs == ys, failmsg);
[INFO] [stdout]     |                           ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to `Display` the message
[INFO] [stdout]     |
[INFO] [stdout] 359 |         assert!(xs == ys, "{}", failmsg);
[INFO] [stdout]     |                           +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 72 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.71s
[INFO] running `Command { std: "docker" "inspect" "8daf17b8cbea74389ccf2fc607f28c9822268090719c996fb516f83a6ab0fc79", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8daf17b8cbea74389ccf2fc607f28c9822268090719c996fb516f83a6ab0fc79", kill_on_drop: false }`
[INFO] [stdout] 8daf17b8cbea74389ccf2fc607f28c9822268090719c996fb516f83a6ab0fc79
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f7f7f7011e75c1e82684ca9ab2cac3839657c1095dfce4dfd78af9d2aca05b7d
[INFO] running `Command { std: "docker" "start" "-a" "f7f7f7011e75c1e82684ca9ab2cac3839657c1095dfce4dfd78af9d2aca05b7d", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypto_util.rs:75:30
[INFO] [stderr]    |
[INFO] [stderr] 75 |                 let result = try!(encryptor.encrypt(&mut read_buffer,
[INFO] [stderr]    |                              ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypto_util.rs:118:30
[INFO] [stderr]     |
[INFO] [stderr] 118 |                 let result = try!(decryptor.decrypt(&mut read_buffer,
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::process`
[INFO] [stderr]   --> src/crypt.rs:13:9
[INFO] [stderr]    |
[INFO] [stderr] 13 | pub use super::process;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:59:9
[INFO] [stderr]    |
[INFO] [stderr] 59 |         try!(s.write_u64::<LittleEndian>(self.magic));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:60:9
[INFO] [stderr]    |
[INFO] [stderr] 60 |         try!(s.write_u32::<LittleEndian>(self.fversion));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:61:9
[INFO] [stderr]    |
[INFO] [stderr] 61 |         try!(s.write_u32::<LittleEndian>(self.hmac_len));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 62 |         try!(s.write_u32::<LittleEndian>(self.key_md_size));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:63:9
[INFO] [stderr]    |
[INFO] [stderr] 63 |         try!(s.write_all(&self.iv));
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:98:9
[INFO] [stderr]    |
[INFO] [stderr] 98 |         try!(header.verify());
[INFO] [stderr]    |         ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:85:20
[INFO] [stderr]    |
[INFO] [stderr] 85 |             magic: try!(s.read_u64::<LittleEndian>()),
[INFO] [stderr]    |                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:86:23
[INFO] [stderr]    |
[INFO] [stderr] 86 |             fversion: try!(s.read_u32::<LittleEndian>()),
[INFO] [stderr]    |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:87:23
[INFO] [stderr]    |
[INFO] [stderr] 87 |             hmac_len: try!(s.read_u32::<LittleEndian>()),
[INFO] [stderr]    |                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:88:26
[INFO] [stderr]    |
[INFO] [stderr] 88 |             key_md_size: try!(s.read_u32::<LittleEndian>()),
[INFO] [stderr]    |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]   --> src/crypt.rs:93:21
[INFO] [stderr]    |
[INFO] [stderr] 93 |         let nread = try!(s.read(&mut header.iv));
[INFO] [stderr]    |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:118:13
[INFO] [stderr]     |
[INFO] [stderr] 118 |             try!(md.write_u32::<LittleEndian>(MD_TYPE_SCRYPT));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:119:13
[INFO] [stderr]     |
[INFO] [stderr] 119 |             try!(md.write_u8(logn));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:120:13
[INFO] [stderr]     |
[INFO] [stderr] 120 |             try!(md.write_u32::<LittleEndian>(r));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:121:13
[INFO] [stderr]     |
[INFO] [stderr] 121 |             try!(md.write_u32::<LittleEndian>(p));
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:138:17
[INFO] [stderr]     |
[INFO] [stderr] 138 |     let nread = try!(s.read(&mut raw_bytes));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:145:21
[INFO] [stderr]     |
[INFO] [stderr] 145 |         let ktype = try!(s.read_u32::<LittleEndian>());
[INFO] [stderr]     |                     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:148:39
[INFO] [stderr]     |
[INFO] [stderr] 148 |                 let logn = ScryptLogN(try!(s.read_u8()));
[INFO] [stderr]     |                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:149:33
[INFO] [stderr]     |
[INFO] [stderr] 149 |                 let r = ScryptR(try!(s.read_u32::<LittleEndian>()));
[INFO] [stderr]     |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:150:33
[INFO] [stderr]     |
[INFO] [stderr] 150 |                 let p = ScryptP(try!(s.read_u32::<LittleEndian>()));
[INFO] [stderr]     |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:183:5
[INFO] [stderr]     |
[INFO] [stderr] 183 |     try!(out_stream.write_all(&header));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:216:5
[INFO] [stderr]     |
[INFO] [stderr] 216 |     try!(out_stream.seek(SeekFrom::Start(0)));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:217:5
[INFO] [stderr]     |
[INFO] [stderr] 217 |     try!(header.write(&mut out_stream));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:219:5
[INFO] [stderr]     |
[INFO] [stderr] 219 |     try!(out_stream.write_all(&hmac));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:221:5
[INFO] [stderr]     |
[INFO] [stderr] 221 |     try!(out_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:222:5
[INFO] [stderr]     |
[INFO] [stderr] 222 |     try!(out_stream.write_all(&key_md));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:167:17
[INFO] [stderr]     |
[INFO] [stderr] 167 |     let pwkey = try!(super::get_pw_key(state.config));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:177:18
[INFO] [stderr]     |
[INFO] [stderr] 177 |     let key_md = try!(get_key_metadata(state.config));
[INFO] [stderr]     |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:186:24
[INFO] [stderr]     |
[INFO] [stderr] 186 |         let num_read = try!(in_stream.read(buf));
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:192:22
[INFO] [stderr]     |
[INFO] [stderr] 192 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:224:15
[INFO] [stderr]     |
[INFO] [stderr] 224 |     let pos = try!(out_stream.seek(SeekFrom::Current(0)));
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:250:5
[INFO] [stderr]     |
[INFO] [stderr] 250 |     try!(in_stream.seek(SeekFrom::Current(hmac_unused as i64)));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:289:5
[INFO] [stderr]     |
[INFO] [stderr] 289 |     try!(in_stream.seek(SeekFrom::Start(header_capacity as u64)));
[INFO] [stderr]     |     ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:240:18
[INFO] [stderr]     |
[INFO] [stderr] 240 |     let header = try!(FileHeader::read(&mut in_stream));
[INFO] [stderr]     |                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:245:17
[INFO] [stderr]     |
[INFO] [stderr] 245 |     let nread = try!(in_stream.read(&mut hmac_bytes));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:253:38
[INFO] [stderr]     |
[INFO] [stderr] 253 |         let (method, raw_md_bytes) = try!(read_key_metadata(&mut in_stream,
[INFO] [stderr]     |                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:255:19
[INFO] [stderr]     |
[INFO] [stderr] 255 |         let key = try!(match *state.config.get_password() {
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:280:19
[INFO] [stderr]     |
[INFO] [stderr] 280 |         let key = try!(super::get_pw_key(state.config));
[INFO] [stderr]     |                   ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:292:24
[INFO] [stderr]     |
[INFO] [stderr] 292 |         let num_read = try!(in_stream.read(buf));
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/crypt.rs:298:22
[INFO] [stderr]     |
[INFO] [stderr] 298 |             Ok(d) => try!(out_stream.write_all(&d)),
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:288:49
[INFO] [stderr]     |
[INFO] [stderr] 288 |         InputStream::File(ref file) => Box::new(try!(File::open(file))),
[INFO] [stderr]     |                                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:303:22
[INFO] [stderr]     |
[INFO] [stderr] 303 |             Box::new(try!(OpenOptions::new().read(true).write(true).create(true).open(file)))
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:326:13
[INFO] [stderr]     |
[INFO] [stderr] 326 |             try!(encrypt(state, in_stream, out_stream))
[INFO] [stderr]     |             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:324:22
[INFO] [stderr]     |
[INFO] [stderr] 324 |             let iv = try!(get_iv(c));
[INFO] [stderr]     |                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:339:17
[INFO] [stderr]     |
[INFO] [stderr] 339 |                 try!(decrypt(state, in_stream, Box::new(tstream)));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:341:17
[INFO] [stderr]     |
[INFO] [stderr] 341 |                 try!(rename(tmp_outpath, fname));
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:338:31
[INFO] [stderr]     |
[INFO] [stderr] 338 |                 let tstream = try!(File::create(&tmp_outpath));
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stderr]    --> src/lib.rs:343:17
[INFO] [stderr]     |
[INFO] [stderr] 343 |                 try!(decrypt(state, in_stream, out_stream))
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/config.rs:99:17
[INFO] [stderr]    |
[INFO] [stderr] 99 |     Func(Rc<Box<Fn() -> u8>>),
[INFO] [stderr]    |                 ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 99 |     Func(Rc<Box<dyn Fn() -> u8>>),
[INFO] [stderr]    |                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/config.rs:112:17
[INFO] [stderr]     |
[INFO] [stderr] 112 |     Func(Rc<Box<Fn() -> IvArray>>),
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 112 |     Func(Rc<Box<dyn Fn() -> IvArray>>),
[INFO] [stderr]     |                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/config.rs:150:17
[INFO] [stderr]     |
[INFO] [stderr] 150 |     Func(Rc<Box<Fn() -> PwKeyArray>>),
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 150 |     Func(Rc<Box<dyn Fn() -> PwKeyArray>>),
[INFO] [stderr]     |                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/crypto_util.rs:11:20
[INFO] [stderr]    |
[INFO] [stderr] 11 |     Encrypting(Box<crypto::symmetriccipher::Encryptor>),
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 11 |     Encrypting(Box<dyn crypto::symmetriccipher::Encryptor>),
[INFO] [stderr]    |                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/crypto_util.rs:12:20
[INFO] [stderr]    |
[INFO] [stderr] 12 |     Decrypting(Box<crypto::symmetriccipher::Decryptor>),
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 12 |     Decrypting(Box<dyn crypto::symmetriccipher::Decryptor>),
[INFO] [stderr]    |                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/crypt.rs:128:30
[INFO] [stderr]     |
[INFO] [stderr] 128 | fn read_key_metadata(s: &mut Read,
[INFO] [stderr]     |                              ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 128 | fn read_key_metadata(s: &mut dyn Read,
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/crypt.rs:163:35
[INFO] [stderr]     |
[INFO] [stderr] 163 |                mut in_stream: Box<SeekRead>,
[INFO] [stderr]     |                                   ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 163 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stderr]     |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/crypt.rs:164:36
[INFO] [stderr]     |
[INFO] [stderr] 164 |                mut out_stream: Box<SeekWrite>)
[INFO] [stderr]     |                                    ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 164 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/crypt.rs:236:35
[INFO] [stderr]     |
[INFO] [stderr] 236 |                mut in_stream: Box<SeekRead>,
[INFO] [stderr]     |                                   ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 236 |                mut in_stream: Box<dyn SeekRead>,
[INFO] [stderr]     |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/crypt.rs:237:36
[INFO] [stderr]     |
[INFO] [stderr] 237 |                mut out_stream: Box<SeekWrite>)
[INFO] [stderr]     |                                    ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 237 |                mut out_stream: Box<dyn SeekWrite>)
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/crypt.rs:58:33
[INFO] [stderr]    |
[INFO] [stderr] 58 |     pub fn write(&self, s: &mut Write) -> Result<(), EncryptError> {
[INFO] [stderr]    |                                 ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 58 |     pub fn write(&self, s: &mut dyn Write) -> Result<(), EncryptError> {
[INFO] [stderr]    |                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/crypt.rs:83:25
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn read(s: &mut Read) -> Result<FileHeader, EncryptError> {
[INFO] [stderr]    |                         ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 83 |     pub fn read(s: &mut dyn Read) -> Result<FileHeader, EncryptError> {
[INFO] [stderr]    |                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:283:24
[INFO] [stderr]     |
[INFO] [stderr] 283 |     let in_stream: Box<SeekRead> = match *c.get_input_stream() {
[INFO] [stderr]     |                        ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 283 |     let in_stream: Box<dyn SeekRead> = match *c.get_input_stream() {
[INFO] [stderr]     |                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/lib.rs:291:25
[INFO] [stderr]     |
[INFO] [stderr] 291 |     let out_stream: Box<SeekWrite> = match *c.get_output_stream() {
[INFO] [stderr]     |                         ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 291 |     let out_stream: Box<dyn SeekWrite> = match *c.get_output_stream() {
[INFO] [stderr]     |                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Read`
[INFO] [stderr]   --> src/lib.rs:77:15
[INFO] [stderr]    |
[INFO] [stderr] 77 | use std::io::{Read, Write};
[INFO] [stderr]    |               ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Write`
[INFO] [stderr]   --> src/lib.rs:77:21
[INFO] [stderr]    |
[INFO] [stderr] 77 | use std::io::{Read, Write};
[INFO] [stderr]    |                     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/crypt.rs:174:9
[INFO] [stderr]     |
[INFO] [stderr] 174 |     let mut buf = state.read_buf;
[INFO] [stderr]     |         ----^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/crypt.rs:239:9
[INFO] [stderr]     |
[INFO] [stderr] 239 |     let mut buf = state.read_buf;
[INFO] [stderr]     |         ----^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:205:25
[INFO] [stderr]     |
[INFO] [stderr] 205 |                     let mut first = &mut iv[0..IV_SIZE / 2];
[INFO] [stderr]     |                         ----^^^^^
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/lib.rs:209:25
[INFO] [stderr]     |
[INFO] [stderr] 209 |                     let mut second = &mut iv[IV_SIZE / 2..IV_SIZE];
[INFO] [stderr]     |                         ----^^^^^^
[INFO] [stderr]     |                         |
[INFO] [stderr]     |                         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Read`
[INFO] [stderr]   --> src/lib.rs:77:15
[INFO] [stderr]    |
[INFO] [stderr] 77 | use std::io::{Read, Write};
[INFO] [stderr]    |               ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/crypt.rs:390:17
[INFO] [stderr]     |
[INFO] [stderr] 390 |                 format!("Expected '{}', got '{}'", expected, s));
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stderr]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr] help: remove the `format!(..)` macro call
[INFO] [stderr]     |
[INFO] [stderr] 390 -                 format!("Expected '{}', got '{}'", expected, s));
[INFO] [stderr] 390 +                 "Expected '{}', got '{}'", expected, s);
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> src/lib.rs:359:27
[INFO] [stderr]     |
[INFO] [stderr] 359 |         assert!(xs == ys, failmsg);
[INFO] [stderr]     |                           ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to `Display` the message
[INFO] [stderr]     |
[INFO] [stderr] 359 |         assert!(xs == ys, "{}", failmsg);
[INFO] [stderr]     |                           +++++
[INFO] [stderr] 
[INFO] [stderr] warning: `encryptfile` (lib) generated 71 warnings (run `cargo fix --lib -p encryptfile` to apply 19 suggestions)
[INFO] [stderr] warning: `encryptfile` (lib test) generated 72 warnings (69 duplicates) (run `cargo fix --lib -p encryptfile --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/encryptfile-8c4b74c87b56b191)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test config::validate ... ok
[INFO] [stdout] test config::derived_key ... ok
[INFO] [stdout] test crypto_util::tests::crypto_util_state ... ok
[INFO] [stdout] test tests::get_iv_variants ... ok
[INFO] [stdout] test tests::get_pwkey_variants ... ok
[INFO] [stdout] test tests::get_iv_generate ... ok
[INFO] [stdout] test crypt::tests::crypt_change_data ... ok
[INFO] [stdout] test crypt::tests::crypt_no_key_metadata ... ok
[INFO] [stdout] test crypt::tests::crypt_change_hmac ... ok
[INFO] [stdout] test crypt::tests::crypt_overwrite ... ok
[INFO] [stdout] test crypt::tests::crypt_change_iv ... ok
[INFO] [stdout] test crypt::tests::crypt_basic ... ok
[INFO] [stdout] test crypt::tests::crypt_wrong_pw ... FAILED
[INFO] [stdout] test tests::get_pwkey_scrypt ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- crypt::tests::crypt_wrong_pw stdout ----
[INFO] [stdout] thread 'crypt::tests::crypt_wrong_pw' panicked at src/crypt.rs:410:18:
[INFO] [stdout] Unexpected result: Err(HmacMismatch)
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55a2f58195dc - std::backtrace_rs::backtrace::libunwind::trace::ha637c64ce894333a
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/../../backtrace/src/backtrace/libunwind.rs:104:5
[INFO] [stdout]    1:     0x55a2f58195dc - std::backtrace_rs::backtrace::trace_unsynchronized::h47f62dea28e0c88d
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55a2f58195dc - std::sys_common::backtrace::_print_fmt::h9eef0abe20ede486
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:67:5
[INFO] [stdout]    3:     0x55a2f58195dc - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hed7f999df88cc644
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:44:22
[INFO] [stdout]    4:     0x55a2f5844080 - core::fmt::rt::Argument::fmt::h1539a9308b8d058d
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/fmt/rt.rs:142:9
[INFO] [stdout]    5:     0x55a2f5844080 - core::fmt::write::h3a39390d8560d9c9
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/fmt/mod.rs:1120:17
[INFO] [stdout]    6:     0x55a2f5816d3f - std::io::Write::write_fmt::h040b369f3a0f9cbc
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/io/mod.rs:1762:15
[INFO] [stdout]    7:     0x55a2f58193c4 - std::sys_common::backtrace::_print::h894006fb5c6f3d45
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:47:5
[INFO] [stdout]    8:     0x55a2f58193c4 - std::sys_common::backtrace::print::h23a2d212c6fff936
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:34:9
[INFO] [stdout]    9:     0x55a2f581b087 - std::panicking::default_hook::{{closure}}::h8a1d2ee00185001a
[INFO] [stdout]   10:     0x55a2f581ad73 - std::panicking::default_hook::h6038f2eba384e475
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:289:9
[INFO] [stdout]   11:     0x55a2f57bd437 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h0ad024c9bdc6d768
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/alloc/src/boxed.rs:2021:9
[INFO] [stdout]   12:     0x55a2f57bd437 - test::test_main::{{closure}}::h7500b54257359db6
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/test/src/lib.rs:138:21
[INFO] [stdout]   13:     0x55a2f581b698 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h1f8f335eaa9cfaee
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/alloc/src/boxed.rs:2021:9
[INFO] [stdout]   14:     0x55a2f581b698 - std::panicking::rust_panic_with_hook::h2b5517d590cab22e
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:783:13
[INFO] [stdout]   15:     0x55a2f581b3ee - std::panicking::begin_panic_handler::{{closure}}::h233112c06e0ef43e
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:657:13
[INFO] [stdout]   16:     0x55a2f5819aa6 - std::sys_common::backtrace::__rust_end_short_backtrace::h6e893f24d7ebbff8
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:170:18
[INFO] [stdout]   17:     0x55a2f581b152 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:645:5
[INFO] [stdout]   18:     0x55a2f5755245 - core::panicking::panic_fmt::hbf0e066aabfa482c
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panicking.rs:72:14
[INFO] [stdout]   19:     0x55a2f576d29d - encryptfile::crypt::tests::crypt_wrong_pw::hbc9fcedb5754abfe
[INFO] [stdout]                                at /opt/rustwide/workdir/src/crypt.rs:410:18
[INFO] [stdout]   20:     0x55a2f576cc37 - encryptfile::crypt::tests::crypt_wrong_pw::{{closure}}::h8e5a489af95161fa
[INFO] [stdout]                                at /opt/rustwide/workdir/src/crypt.rs:394:24
[INFO] [stdout]   21:     0x55a2f5786b46 - core::ops::function::FnOnce::call_once::hdc11c8ae2d8366f7
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x55a2f57c2a8f - core::ops::function::FnOnce::call_once::h2b5d431d5046312d
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x55a2f57c2a8f - test::__rust_begin_short_backtrace::h7714669af176e207
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/test/src/lib.rs:628:18
[INFO] [stdout]   24:     0x55a2f57c1aa5 - test::run_test_in_process::{{closure}}::h85218797dcbcec12
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/test/src/lib.rs:651:60
[INFO] [stdout]   25:     0x55a2f57c1aa5 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h76c106ea31c14d7b
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   26:     0x55a2f57c1aa5 - std::panicking::try::do_call::h3bd5d0f6620ee946
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:552:40
[INFO] [stdout]   27:     0x55a2f57c1aa5 - std::panicking::try::h232e535e4744fe31
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:516:19
[INFO] [stdout]   28:     0x55a2f57c1aa5 - std::panic::catch_unwind::h3ce3bd6ca8dbac68
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panic.rs:142:14
[INFO] [stdout]   29:     0x55a2f57c1aa5 - test::run_test_in_process::hc97b257c9621286a
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/test/src/lib.rs:651:27
[INFO] [stdout]   30:     0x55a2f57c1aa5 - test::run_test::{{closure}}::h2aa798823a438d38
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/test/src/lib.rs:574:43
[INFO] [stdout]   31:     0x55a2f5789d66 - test::run_test::{{closure}}::h87d231c78fb59832
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/test/src/lib.rs:602:41
[INFO] [stdout]   32:     0x55a2f5789d66 - std::sys_common::backtrace::__rust_begin_short_backtrace::he6df152596625789
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys_common/backtrace.rs:154:18
[INFO] [stdout]   33:     0x55a2f578ee17 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::ha94be15d1e0acf36
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/thread/mod.rs:529:17
[INFO] [stdout]   34:     0x55a2f578ee17 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h9dc6bd6372f16606
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   35:     0x55a2f578ee17 - std::panicking::try::do_call::h9057517f80303cd4
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:552:40
[INFO] [stdout]   36:     0x55a2f578ee17 - std::panicking::try::he3a30b11ee45340c
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panicking.rs:516:19
[INFO] [stdout]   37:     0x55a2f578ee17 - std::panic::catch_unwind::h410458cfd3528b8b
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/panic.rs:142:14
[INFO] [stdout]   38:     0x55a2f578ee17 - std::thread::Builder::spawn_unchecked_::{{closure}}::h72ac3bdb567b737b
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/thread/mod.rs:528:30
[INFO] [stdout]   39:     0x55a2f578ee17 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h38f34da3654a8344
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   40:     0x55a2f5820c95 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hc7eafaff61e32df9
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/alloc/src/boxed.rs:2007:9
[INFO] [stdout]   41:     0x55a2f5820c95 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6ba4a5de48dd2304
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/alloc/src/boxed.rs:2007:9
[INFO] [stdout]   42:     0x55a2f5820c95 - std::sys::unix::thread::Thread::new::thread_start::he469335aef763e45
[INFO] [stdout]                                at /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/std/src/sys/unix/thread.rs:108:17
[INFO] [stdout]   43:     0x7ffbe4fe9ac3 - <unknown>
[INFO] [stdout]   44:     0x7ffbe507abf4 - __clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     crypt::tests::crypt_wrong_pw
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 13 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.40s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "f7f7f7011e75c1e82684ca9ab2cac3839657c1095dfce4dfd78af9d2aca05b7d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f7f7f7011e75c1e82684ca9ab2cac3839657c1095dfce4dfd78af9d2aca05b7d", kill_on_drop: false }`
[INFO] [stdout] f7f7f7011e75c1e82684ca9ab2cac3839657c1095dfce4dfd78af9d2aca05b7d
