[INFO] fetching crate pippin 0.1.0...
[INFO] checking pippin-0.1.0 against master#39cb3386ddc6c71657418be28dbb3987eea4aa4b for pr-133536
[INFO] extracting crate pippin 0.1.0 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate pippin 0.1.0 on toolchain 39cb3386ddc6c71657418be28dbb3987eea4aa4b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate pippin 0.1.0
[INFO] finished tweaking crates.io crate pippin 0.1.0
[INFO] tweaked toml for crates.io crate pippin 0.1.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 41 packages to latest compatible versions
[INFO] [stderr]       Adding byteorder v0.5.3 (available: v1.5.0)
[INFO] [stderr]       Adding chrono v0.2.25 (available: v0.4.38)
[INFO] [stderr]       Adding docopt v0.6.86 (available: v1.1.1)
[INFO] [stderr]       Adding env_logger v0.3.5 (available: v0.11.5)
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.22)
[INFO] [stderr]       Adding rand v0.3.23 (available: v0.8.5)
[INFO] [stderr]       Adding regex v0.1.80 (available: v1.11.1)
[INFO] [stderr]       Adding vec_map v0.6.0 (available: v0.8.2)
[INFO] [stderr]       Adding walkdir v0.1.8 (available: v2.5.0)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded vec_map v0.6.0
[INFO] [stderr]   Downloaded hashindexed v0.1.1
[INFO] [stderr]   Downloaded walkdir v0.1.8
[INFO] [stderr]   Downloaded docopt v0.6.86
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 32f38dc10de5e5b5d5be90e738662bcf2d9047907f72d91b302650294de1e231
[INFO] running `Command { std: "docker" "start" "-a" "32f38dc10de5e5b5d5be90e738662bcf2d9047907f72d91b302650294de1e231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "32f38dc10de5e5b5d5be90e738662bcf2d9047907f72d91b302650294de1e231", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "32f38dc10de5e5b5d5be90e738662bcf2d9047907f72d91b302650294de1e231", kill_on_drop: false }`
[INFO] [stdout] 32f38dc10de5e5b5d5be90e738662bcf2d9047907f72d91b302650294de1e231
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+39cb3386ddc6c71657418be28dbb3987eea4aa4b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ac956205c9ad1126a4b5c923afe455c2dc3ad945f1a7f97070339b38e521b62f
[INFO] running `Command { std: "docker" "start" "-a" "ac956205c9ad1126a4b5c923afe455c2dc3ad945f1a7f97070339b38e521b62f", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]     Checking winapi v0.2.8
[INFO] [stderr]     Checking regex-syntax v0.3.9
[INFO] [stderr]    Compiling gcc v0.3.55
[INFO] [stderr]     Checking utf8-ranges v0.1.3
[INFO] [stderr]     Checking log v0.4.22
[INFO] [stderr]     Checking memchr v0.1.11
[INFO] [stderr]     Checking time v0.1.45
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking aho-corasick v0.5.3
[INFO] [stderr]     Checking rustc-serialize v0.3.25
[INFO] [stderr]     Checking thread-id v2.0.0
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking walkdir v0.1.8
[INFO] [stderr]     Checking thread_local v0.2.7
[INFO] [stderr]     Checking hashindexed v0.1.1
[INFO] [stderr]     Checking vec_map v0.6.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking lazy_static v0.2.11
[INFO] [stderr]     Checking strsim v0.5.2
[INFO] [stderr]     Checking byteorder v0.5.3
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking regex v0.1.80
[INFO] [stderr]    Compiling rust-crypto v0.2.36
[INFO] [stderr]     Checking env_logger v0.3.5
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking docopt v0.6.86
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking num v0.1.42
[INFO] [stderr]     Checking chrono v0.2.25
[INFO] [stderr]     Checking pippin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> src/lib.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | #![feature(box_syntax)]
[INFO] [stdout]    |            ^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: replaced with `#[rustc_box]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0557]: feature has been removed
[INFO] [stdout]   --> src/lib.rs:73:12
[INFO] [stdout]    |
[INFO] [stdout] 73 | #![feature(box_syntax)]
[INFO] [stdout]    |            ^^^^^^^^^^ feature has been removed
[INFO] [stdout]    |
[INFO] [stdout]    = note: replaced with `#[rustc_box]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:134:52
[INFO] [stdout]     |
[INFO] [stdout] 134 |         if ident.part_id() != part_id { return Err(box ElementOp::WrongPartition); }
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 134 |         if ident.part_id() != part_id { return Err(Box::new(ElementOp::WrongPartition)); }
[INFO] [stdout]     |                                                    ~~~~~~~~~                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:136:48
[INFO] [stdout]     |
[INFO] [stdout] 136 |             Entry::Occupied(_) => { return Err(box ElementOp::IdClash); },
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 136 |             Entry::Occupied(_) => { return Err(Box::new(ElementOp::IdClash)); },
[INFO] [stdout]     |                                                ~~~~~~~~~                  +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:134:52
[INFO] [stdout]     |
[INFO] [stdout] 134 |         if ident.part_id() != part_id { return Err(box ElementOp::WrongPartition); }
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 134 |         if ident.part_id() != part_id { return Err(Box::new(ElementOp::WrongPartition)); }
[INFO] [stdout]     |                                                    ~~~~~~~~~                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:136:48
[INFO] [stdout]     |
[INFO] [stdout] 136 |             Entry::Occupied(_) => { return Err(box ElementOp::IdClash); },
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 136 |             Entry::Occupied(_) => { return Err(Box::new(ElementOp::IdClash)); },
[INFO] [stdout]     |                                                ~~~~~~~~~                  +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:666:28
[INFO] [stdout]     |
[INFO] [stdout] 666 |                 return Err(box MergeError::NotSolved);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 666 |                 return Err(Box::new(MergeError::NotSolved));
[INFO] [stdout]     |                            ~~~~~~~~~                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:706:32
[INFO] [stdout]     |
[INFO] [stdout] 706 |                     return Err(box e);
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 706 |                     return Err(Box::new(e));
[INFO] [stdout]     |                                ~~~~~~~~~ +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:830:36
[INFO] [stdout]     |
[INFO] [stdout] 830 |                         return Err(box OtherError::new("Commit log number too high"));
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 830 |                         return Err(Box::new(OtherError::new("Commit log number too high")));
[INFO] [stdout]     |                                    ~~~~~~~~~                                             +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:880:32
[INFO] [stdout]     |
[INFO] [stdout] 880 |                     return Err(box OtherError::new("Snapshot number too high"));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 880 |                     return Err(Box::new(OtherError::new("Snapshot number too high")));
[INFO] [stdout]     |                                ~~~~~~~~~                                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]     --> src/detail/part.rs:1110:18
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         let io = box DummyPartIO::new(PartId::from_num(1));
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         let io = Box::new(DummyPartIO::new(PartId::from_num(1)));
[INFO] [stdout]      |                  ~~~~~~~~~                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]     --> src/detail/part.rs:1124:18
[INFO] [stdout]      |
[INFO] [stdout] 1124 |         let io = box DummyPartIO::new(PartId::from_num(7));
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]      |
[INFO] [stdout] 1124 |         let io = Box::new(DummyPartIO::new(PartId::from_num(7)));
[INFO] [stdout]      |                  ~~~~~~~~~                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:666:28
[INFO] [stdout]     |
[INFO] [stdout] 666 |                 return Err(box MergeError::NotSolved);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 666 |                 return Err(Box::new(MergeError::NotSolved));
[INFO] [stdout]     |                            ~~~~~~~~~                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:706:32
[INFO] [stdout]     |
[INFO] [stdout] 706 |                     return Err(box e);
[INFO] [stdout]     |                                ^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 706 |                     return Err(Box::new(e));
[INFO] [stdout]     |                                ~~~~~~~~~ +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:830:36
[INFO] [stdout]     |
[INFO] [stdout] 830 |                         return Err(box OtherError::new("Commit log number too high"));
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 830 |                         return Err(Box::new(OtherError::new("Commit log number too high")));
[INFO] [stdout]     |                                    ~~~~~~~~~                                             +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/part.rs:880:32
[INFO] [stdout]     |
[INFO] [stdout] 880 |                     return Err(box OtherError::new("Snapshot number too high"));
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 880 |                     return Err(Box::new(OtherError::new("Snapshot number too high")));
[INFO] [stdout]     |                                ~~~~~~~~~                                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]     --> src/detail/part.rs:1110:18
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         let io = box DummyPartIO::new(PartId::from_num(1));
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]      |
[INFO] [stdout] 1110 |         let io = Box::new(DummyPartIO::new(PartId::from_num(1)));
[INFO] [stdout]      |                  ~~~~~~~~~                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/repo_traits.rs:190:32
[INFO] [stdout]     |
[INFO] [stdout] 190 |         RepoDivideError::Other(box OtherError::new(msg))
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 190 |         RepoDivideError::Other(Box::new(OtherError::new(msg)))
[INFO] [stdout]     |                                ~~~~~~~~~                    +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:167:26
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     Some(box try!(File::open(path)))
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     Some(Box::new(try!(File::open(path))))
[INFO] [stdout]     |                          ~~~~~~~~~                      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 Some(box try!(File::open(p)))
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 Some(Box::new(try!(File::open(p))))
[INFO] [stdout]     |                      ~~~~~~~~~                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |         Ok(Some(box stream))
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 200 |         Ok(Some(Box::new(stream)))
[INFO] [stdout]     |                 ~~~~~~~~~      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 Some(box try!(OpenOptions::new().write(true).append(true).open(p)))
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 Some(Box::new(try!(OpenOptions::new().write(true).append(true).open(p))))
[INFO] [stdout]     |                      ~~~~~~~~~                                                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:224:17
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Ok(Some(box stream))
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Ok(Some(Box::new(stream)))
[INFO] [stdout]     |                 ~~~~~~~~~      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:290:16
[INFO] [stdout]     |
[INFO] [stdout] 290 |             Ok(box (**io).clone())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 290 |             Ok(Box::new((**io).clone()))
[INFO] [stdout]     |                ~~~~~~~~~              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]     --> src/detail/part.rs:1124:18
[INFO] [stdout]      |
[INFO] [stdout] 1124 |         let io = box DummyPartIO::new(PartId::from_num(7));
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]      |
[INFO] [stdout] 1124 |         let io = Box::new(DummyPartIO::new(PartId::from_num(7)));
[INFO] [stdout]      |                  ~~~~~~~~~                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/discover.rs:276:24
[INFO] [stdout]     |
[INFO] [stdout] 276 |     head.part_id.ok_or(box OtherError::new("file contains no part id"))
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 276 |     head.part_id.ok_or(Box::new(OtherError::new("file contains no part id")))
[INFO] [stdout]     |                        ~~~~~~~~~                                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/error.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |         Err(box ReadError::new(msg, pos, offset))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 37 |         Err(Box::new(ReadError::new(msg, pos, offset)))
[INFO] [stdout]    |             ~~~~~~~~~                                +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Err(box ArgError::new(msg))
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Err(Box::new(ArgError::new(msg)))
[INFO] [stdout]     |             ~~~~~~~~~                  +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Err(box PathError::new(msg, path))
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Err(Box::new(PathError::new(msg, path)))
[INFO] [stdout]     |             ~~~~~~~~~                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:336:13
[INFO] [stdout]     |
[INFO] [stdout] 336 |         Err(box OtherError::new(msg))
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 336 |         Err(Box::new(OtherError::new(msg)))
[INFO] [stdout]     |             ~~~~~~~~~                    +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:351:9
[INFO] [stdout]     |
[INFO] [stdout] 351 |     Err(box io::Error::new(kind, msg))
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 351 |     Err(Box::new(io::Error::new(kind, msg)))
[INFO] [stdout]     |         ~~~~~~~~~                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/detail/repo_traits.rs:190:32
[INFO] [stdout]     |
[INFO] [stdout] 190 |         RepoDivideError::Other(box OtherError::new(msg))
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 190 |         RepoDivideError::Other(Box::new(OtherError::new(msg)))
[INFO] [stdout]     |                                ~~~~~~~~~                    +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:167:26
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     Some(box try!(File::open(path)))
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 167 |                     Some(Box::new(try!(File::open(path))))
[INFO] [stdout]     |                          ~~~~~~~~~                      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:180:22
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 Some(box try!(File::open(p)))
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 180 |                 Some(Box::new(try!(File::open(p))))
[INFO] [stdout]     |                      ~~~~~~~~~                   +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:200:17
[INFO] [stdout]     |
[INFO] [stdout] 200 |         Ok(Some(box stream))
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 200 |         Ok(Some(Box::new(stream)))
[INFO] [stdout]     |                 ~~~~~~~~~      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:207:22
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 Some(box try!(OpenOptions::new().write(true).append(true).open(p)))
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 207 |                 Some(Box::new(try!(OpenOptions::new().write(true).append(true).open(p))))
[INFO] [stdout]     |                      ~~~~~~~~~                                                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:224:17
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Ok(Some(box stream))
[INFO] [stdout]     |                 ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 224 |         Ok(Some(Box::new(stream)))
[INFO] [stdout]     |                 ~~~~~~~~~      +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/fileio.rs:290:16
[INFO] [stdout]     |
[INFO] [stdout] 290 |             Ok(box (**io).clone())
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 290 |             Ok(Box::new((**io).clone()))
[INFO] [stdout]     |                ~~~~~~~~~              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/discover.rs:276:24
[INFO] [stdout]     |
[INFO] [stdout] 276 |     head.part_id.ok_or(box OtherError::new("file contains no part id"))
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 276 |     head.part_id.ok_or(Box::new(OtherError::new("file contains no part id")))
[INFO] [stdout]     |                        ~~~~~~~~~                                           +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]   --> src/error.rs:37:13
[INFO] [stdout]    |
[INFO] [stdout] 37 |         Err(box ReadError::new(msg, pos, offset))
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]    |
[INFO] [stdout] 37 |         Err(Box::new(ReadError::new(msg, pos, offset)))
[INFO] [stdout]    |             ~~~~~~~~~                                +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:118:13
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Err(box ArgError::new(msg))
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 118 |         Err(Box::new(ArgError::new(msg)))
[INFO] [stdout]     |             ~~~~~~~~~                  +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:222:13
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Err(box PathError::new(msg, path))
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 222 |         Err(Box::new(PathError::new(msg, path)))
[INFO] [stdout]     |             ~~~~~~~~~                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:336:13
[INFO] [stdout]     |
[INFO] [stdout] 336 |         Err(box OtherError::new(msg))
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 336 |         Err(Box::new(OtherError::new(msg)))
[INFO] [stdout]     |             ~~~~~~~~~                    +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `box_syntax` has been removed
[INFO] [stdout]    --> src/error.rs:351:9
[INFO] [stdout]     |
[INFO] [stdout] 351 |     Err(box io::Error::new(kind, msg))
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `Box::new()` instead
[INFO] [stdout]     |
[INFO] [stdout] 351 |     Err(Box::new(io::Error::new(kind, msg)))
[INFO] [stdout]     |         ~~~~~~~~~                         +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RepoState` and `Repository`
[INFO] [stdout]   --> src/detail/mod.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use self::repo::{Repository, RepoState};
[INFO] [stdout]    |                      ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:54:26
[INFO] [stdout]    |
[INFO] [stdout] 54 |             parent.write((&mut &mut buf[..])).expect("writing to buf");
[INFO] [stdout]    |                          ^                 ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 54 -             parent.write((&mut &mut buf[..])).expect("writing to buf");
[INFO] [stdout] 54 +             parent.write(&mut &mut buf[..]).expect("writing to buf");
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/sum.rs:112:19
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let len = try!(self.inner.read(buf));
[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/detail/readwrite/sum.rs:151:19
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let len = try!(self.inner.write(buf));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     try!(sum_reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     try!(sum_reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         try!(sum_reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:161:13
[INFO] [stdout]     |
[INFO] [stdout] 161 |             try!(sum_reader.read_exact(&mut buf[16..len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:155:22
[INFO] [stdout]     |
[INFO] [stdout] 155 |                 b'1' ... b'9' => buf[1] - b'0',
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[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(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |                 b'A' ... b'Z' => buf[1] + 10 - b'A',
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 |             try!(sum_reader.read_exact(&mut buf[16..padded]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |             let id = try!((&block[7..15]).read_u64::<BigEndian>());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:199:45
[INFO] [stdout]     |
[INFO] [stdout] 199 |             user_fields.push(UserData::Text(try!(String::from_utf8(rtrim(&block[1..], 0).to_vec()))));
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:246:5
[INFO] [stdout]     |
[INFO] [stdout] 246 |     try!(validate_repo_name(&header.name));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout] 248 |     try!(pad(&mut w, 16 - len));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 |     try!(w.write(&SUM_BLAKE2_16));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:291:5
[INFO] [stdout]     |
[INFO] [stdout] 291 |     try!(sum.write(&mut w.into_inner()));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             try!(w.write(&HEAD_SNAPSHOT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |             try!(w.write(&HEAD_COMMITLOG));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:247:15
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let len = try!(w.write(header.name.as_bytes()));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         try!(w.write(&PARTID));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         try!(w.write_u64::<BigEndian>(part_id.into()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:263:13
[INFO] [stdout]     |
[INFO] [stdout] 263 |             try!(w.write(&l[3..5]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(w.write(&uf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             try!(pad(&mut w, 14 - uf.len()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |             try!(w.write(&l[2..5]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |             try!(w.write(&uf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             try!(pad(&mut w, n * 16 - uf.len() - 3));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |             try!(w.write(&l[0..5]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |             try!(w.write(&uf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:281:13
[INFO] [stdout]     |
[INFO] [stdout] 281 |             try!(pad(&mut w, ((len + 15) / 16) * 16 - len));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:297:24
[INFO] [stdout]     |
[INFO] [stdout] 297 |             n -= match try!(w.write(&zeros[0..min(n, zeros.len())])) {
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElementOp`
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 | use error::{Result, ReadError, ElementOp};
[INFO] [stdout]    |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     try!(r.read_exact(&mut xm_data));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:45:16
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let secs = try!((&buf[8..16]).read_i64::<BigEndian>());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let cnum = try!((&buf[4..8]).read_u32::<BigEndian>());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let xm_len = try!((&buf[12..16]).read_u32::<BigEndian>()) as usize;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:64:14
[INFO] [stdout]    |
[INFO] [stdout] 64 |         Some(try!(String::from_utf8(xm_data)
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:94:20
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let num_elts = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;    // #0015
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(r.read_exact(&mut buf[0..32]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         try!(r.read_exact(&mut data));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:105:21
[INFO] [stdout]     |
[INFO] [stdout] 105 |         let ident = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:111:24
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let data_len = try!((&buf[24..32]).read_u64::<BigEndian>()) as usize;   // #0015
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:133:19
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let elt = try!(T::from_vec_sum(data, elt_sum));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |         try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let n_moves = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;    // #0015
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |             try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:147:23
[INFO] [stdout]     |
[INFO] [stdout] 147 |             let id0 = try!((&buf[0..8]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:148:23
[INFO] [stdout]     |
[INFO] [stdout] 148 |             let id1 = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 |     if (try!((&buf[8..16]).read_u64::<BigEndian>()) as usize) != num_elts {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 202 |     try!(w.write(&snapsh_u));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 203 |     try!(w.write_i64::<BigEndian>(state.meta().timestamp));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:205:5
[INFO] [stdout]     |
[INFO] [stdout] 205 |     try!(w.write(b"CNUM"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:206:5
[INFO] [stdout]     |
[INFO] [stdout] 206 |     try!(w.write_u32::<BigEndian>(state.meta().number));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 227 |     try!(w.write(b"ELEMENTS"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:229:5
[INFO] [stdout]     |
[INFO] [stdout] 229 |     try!(w.write_u64::<BigEndian>(num_elts));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     try!(w.write(b"STATESUM"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:265:5
[INFO] [stdout]     |
[INFO] [stdout] 265 |     try!(w.write_u64::<BigEndian>(num_elts));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 |     try!(state.statesum().write(&mut w));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:270:5
[INFO] [stdout]     |
[INFO] [stdout] 270 |     try!(sum.write(&mut w.into_inner()));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         try!(w.write(b"XMTT"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         try!(w.write_u32::<BigEndian>(txt.len() as u32));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |         try!(w.write(txt.as_bytes()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:216:13
[INFO] [stdout]     |
[INFO] [stdout] 216 |             try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         try!(w.write(b"XM\x00\x00\x00\x00\x00\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |         try!(parent.write(&mut w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         try!(w.write(b"ELEMENT\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |         try!(w.write_u64::<BigEndian>((*ident).into()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         try!(w.write(b"BYTES\x00\x00\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |         try!(elt.write_buf(&mut &mut elt_buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         try!(w.write_u64::<BigEndian>(elt_buf.len() as u64 /* #0015 */));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         try!(w.write(&elt_buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         try!(elt.sum(*ident).write(&mut w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:246:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |             try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 254 |         try!(w.write(b"ELTMOVES"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:255:9
[INFO] [stdout]     |
[INFO] [stdout] 255 |         try!(w.write_u64::<BigEndian>(moved.len() as u64 /* #0015 */));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |             try!(w.write_u64::<BigEndian>((*ident).into()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |             try!(w.write_u64::<BigEndian>((*new_ident).into()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     try!(reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(r.read_exact(&mut xm_data));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |         try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         try!(reader.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let l = try!(r.read(&mut buf[0..16]));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |         if l < 16 { try!(r.read_exact(&mut buf[l..16])); /*not EOF, buf haven't filled buffer*/ }
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:65:20
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let secs = try!((&buf[8..16]).read_i64::<BigEndian>());
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let cnum = try!((&buf[4..8]).read_u32::<BigEndian>());
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let xm_len = try!((&buf[12..16]).read_u32::<BigEndian>()) as usize;
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:84:18
[INFO] [stdout]    |
[INFO] [stdout] 84 |             Some(try!(String::from_utf8(xm_data)
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:115:24
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let num_elts = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;   // #0015
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:125:26
[INFO] [stdout]     |
[INFO] [stdout] 125 |             let elt_id = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:142:21
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:150:21
[INFO] [stdout]     |
[INFO] [stdout] 150 |                     try!(r.read_exact(&mut data));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:160:21
[INFO] [stdout]     |
[INFO] [stdout] 160 |                     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:146:36
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let data_len = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;   // #0015
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |                         try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:166:39
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     let elt = Rc::new(try!(E::from_vec_sum(data, elt_sum)));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |                     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:178:34
[INFO] [stdout]     |
[INFO] [stdout] 178 |                     let new_id = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 212 |     try!(writer.write(b"COMMIT LOG\x00\x00\x00\x00\x00\x00"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:234:5
[INFO] [stdout]     |
[INFO] [stdout] 234 |     try!(w.write_i64::<BigEndian>(commit.meta().timestamp));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 |     try!(w.write(b"CNUM"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     try!(w.write_u32::<BigEndian>(commit.meta().number));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     try!(w.write(b"ELEMENTS"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 |     try!(w.write_u64::<BigEndian>(commit.num_changes() as u64));       // #0015
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 295 |     try!(commit.statesum().write(&mut w));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     try!(sum.write(&mut w.into_inner()));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |         try!(w.write(b"COMMIT\x00U"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         try!(w.write(b"MERGE"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         try!(w.write(&n));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |         try!(w.write(b"\x00U"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         try!(w.write(b"XMTT"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         try!(w.write_u32::<BigEndian>(txt.len() as u32));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         try!(w.write(txt.as_bytes()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |             try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         try!(w.write(b"XM\x00\x00\x00\x00\x00\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:256:9
[INFO] [stdout]     |
[INFO] [stdout] 256 |         try!(parent.write(&mut w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         try!(w.write(marker));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:273:9
[INFO] [stdout]     |
[INFO] [stdout] 273 |         try!(w.write_u64::<BigEndian>((*elt_id).into()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:275:13
[INFO] [stdout]     |
[INFO] [stdout] 275 |             try!(w.write(b"ELT DATA"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:277:13
[INFO] [stdout]     |
[INFO] [stdout] 277 |             try!(elt.write_buf(&mut &mut elt_buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:278:13
[INFO] [stdout]     |
[INFO] [stdout] 278 |             try!(w.write_u64::<BigEndian>(elt_buf.len() as u64));      // #0015
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |             try!(w.write(&elt_buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             try!(elt.sum(*elt_id).write(&mut w));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:284:17
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             try!(w.write(b"NEW ELT\x00"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             try!(w.write_u64::<BigEndian>(new_id.into()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |         try!(validate_repo_name(name));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:263:13
[INFO] [stdout]     |
[INFO] [stdout] 263 |             try!(write_head(&header, &mut writer));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(write_snapshot(&state, &mut writer));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:262:35
[INFO] [stdout]     |
[INFO] [stdout] 262 |         if let Some(mut writer) = try!(io.new_ss(ss)) {
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:354:17
[INFO] [stdout]     |
[INFO] [stdout] 354 |                 try!(Self::verify_head(&header, &mut self.repo_name, self.part_id));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:352:36
[INFO] [stdout]     |
[INFO] [stdout] 352 |             if let Some(mut ssf) = try!(self.io.read_ss(ss)) {
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:353:30
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 let header = try!(read_head(&mut *ssf));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:441:17
[INFO] [stdout]     |
[INFO] [stdout] 441 |                 try!(Self::verify_head(&head, &mut self.repo_name, self.part_id));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:439:34
[INFO] [stdout]     |
[INFO] [stdout] 439 |             if let Some(mut r) = try!(self.io.read_ss(ss)) {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:440:28
[INFO] [stdout]     |
[INFO] [stdout] 440 |                 let head = try!(read_head(&mut r));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:444:29
[INFO] [stdout]     |
[INFO] [stdout] 444 |                 let state = try!(read_snapshot(&mut r, self.part_id, file_ver));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:466:21
[INFO] [stdout]     |
[INFO] [stdout] 466 |                     try!(Self::verify_head(&head, &mut self.repo_name, self.part_id));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:467:21
[INFO] [stdout]     |
[INFO] [stdout] 467 |                     try!(read_log(&mut r, &mut queue));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:464:38
[INFO] [stdout]     |
[INFO] [stdout] 464 |                 if let Some(mut r) = try!(self.io.read_ss_cl(ss, cl)) {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:465:32
[INFO] [stdout]     |
[INFO] [stdout] 465 |                     let head = try!(read_head(&mut r));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:471:17
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 try!(self.add_commit(commit));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:595:29
[INFO] [stdout]     |
[INFO] [stdout] 595 |         Ok(&self.states.get(try!(self.tip_key())).unwrap())
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:659:21
[INFO] [stdout]     |
[INFO] [stdout] 659 |             let c = try!(self.merge_two(&tip1, &tip2, auto_load))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:664:17
[INFO] [stdout]     |
[INFO] [stdout] 664 |                 try!(self.push_commit(commit));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:702:21
[INFO] [stdout]     |
[INFO] [stdout] 702 |                     try!(self.load_range(ss0 - 1, ss0));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:710:18
[INFO] [stdout]     |
[INFO] [stdout] 710 |         let s1 = try!(self.states.get(tip1).ok_or(MergeError::NoState));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:711:18
[INFO] [stdout]     |
[INFO] [stdout] 711 |         let s2 = try!(self.states.get(tip2).ok_or(MergeError::NoState));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:712:18
[INFO] [stdout]     |
[INFO] [stdout] 712 |         let s3 = try!(self.states.get(&common).ok_or(MergeError::NoState));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:736:13
[INFO] [stdout]     |
[INFO] [stdout] 736 |             try!(commit.apply(parent))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:734:26
[INFO] [stdout]     |
[INFO] [stdout] 734 |             let parent = try!(self.states.get(commit.first_parent())
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:760:26
[INFO] [stdout]     |
[INFO] [stdout] 760 |             let parent = try!(self.states.get(&state.parent()).ok_or(PatchOp::NoParent));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:815:21
[INFO] [stdout]     |
[INFO] [stdout] 815 |                     try!(write_head(&header, &mut writer));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:816:21
[INFO] [stdout]     |
[INFO] [stdout] 816 |                     try!(start_log(&mut writer));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:807:43
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 if let Some(mut writer) = try!(self.io.new_ss_cl(self.ss1 - 1, cl_num)) {
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:822:25
[INFO] [stdout]     |
[INFO] [stdout] 822 |                         try!(write_commit(&self.unsaved.front().unwrap(), &mut writer));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:840:17
[INFO] [stdout]     |
[INFO] [stdout] 840 |                 try!(self.write_snapshot(user_fields));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:855:23
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let tip_key = try!(self.tip_key()).clone();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:871:17
[INFO] [stdout]     |
[INFO] [stdout] 871 |                 try!(write_head(&header, &mut writer));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:872:17
[INFO] [stdout]     |
[INFO] [stdout] 872 |                 try!(write_snapshot(self.states.get(&tip_key).unwrap(), &mut writer));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:860:39
[INFO] [stdout]     |
[INFO] [stdout] 860 |             if let Some(mut writer) = try!(self.io.new_ss(ss_num)) {
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |             try!(commit.apply(parent))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:980:26
[INFO] [stdout]     |
[INFO] [stdout] 980 |             let parent = try!(self.states.get(commit.first_parent())
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/repo.rs:73:23
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let part_io = try!(classifier.init_first());
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/repo.rs:76:20
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let part = try!(Partition::create(part_io, &name, user_fields));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:100:27
[INFO] [stdout]     |
[INFO] [stdout] 100 |             let part_io = try!(io.make_part_io(num0));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let mut part0 = try!(Partition::open(part_io));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:102:24
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let name = try!(part0.get_repo_name()).to_string();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |                 try!(part.set_repo_name(&name));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:107:31
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 let part_io = try!(io.make_part_io(n));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:108:32
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 let mut part = try!(Partition::open(part_io));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             try!(part.load(all_history));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             try!(part.write(fast, user_fields.clone()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:154:13
[INFO] [stdout]     |
[INFO] [stdout] 154 |             try!(part.write_snapshot(user_fields.clone()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |             try!(part.merge(solver, auto_load));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:220:35
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 rs.add_part(*num, try!(part.tip()).clone_mut());
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:245:16
[INFO] [stdout]     |
[INFO] [stdout] 245 |             if try!(part.push_state(pstate, extra)) {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:285:16
[INFO] [stdout]     |
[INFO] [stdout] 285 |             if try!(part.push_state(pstate, extra)) {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:289:41
[INFO] [stdout]     |
[INFO] [stdout] 289 |                     state.add_part(num, try!(part.tip()).clone_mut());
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:296:38
[INFO] [stdout]     |
[INFO] [stdout] 296 |                 state.add_part(*num, try!(part.tip()).clone_mut());
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:449:13
[INFO] [stdout]     |
[INFO] [stdout] 449 |             try!(if let Some(mut _source_state) = self.states.get_mut(&source_id) {
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:456:26
[INFO] [stdout]     |
[INFO] [stdout] 456 |             let new_id = try!(if let Some(mut target_state) = self.states.get_mut(&class_id) {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:470:31
[INFO] [stdout]     |
[INFO] [stdout] 470 |                 let removed = try!(source_state.remove(id));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/sum.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         try!(w.write(&self.s));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/states.rs:419:9
[INFO] [stdout]     |
[INFO] [stdout] 419 |         try!(self.insert_with_id(id, elt));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/states.rs:418:18
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let id = try!(self.gen_id());
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |         try!(self.apply_mut(&mut mut_state));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     try!(mut_state.remove(*id));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:291:21
[INFO] [stdout]     |
[INFO] [stdout] 291 |                     try!(mut_state.insert_with_id(*id, elt.clone()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:294:21
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     try!(mut_state.replace_rc(*id, elt.clone()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |                     try!(mut_state.remove(*id));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/elt.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |         try!(writer.write(self.as_bytes()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/elt.rs:243:17
[INFO] [stdout]     |
[INFO] [stdout] 243 |         let s = try!(from_utf8(buf));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/elt.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 247 |         Ok(try!(String::from_utf8(vec)))
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OtherError`
[INFO] [stdout]   --> src/detail/repo_traits.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | use error::{Error, Result, OtherError};
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fileio.rs:195:22
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let stream = try!(File::create(&p));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fileio.rs:222:22
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let stream = try!(OpenOptions::new().create(true).write(true).append(true).open(&p));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OtherError`
[INFO] [stdout]   --> src/discover.rs:17:32
[INFO] [stdout]    |
[INFO] [stdout] 17 | use error::{Result, PathError, OtherError};
[INFO] [stdout]    |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let fname = try!(fname.to_str().ok_or(PathError::new("not valid UTF-8", path)));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:53:23
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let dir = try!(path.parent().ok_or(PathError::new("path has no parent", path)));
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:55:28
[INFO] [stdout]    |
[INFO] [stdout] 55 |             part_id = Some(try!(find_part_num(&bname, path)));
[INFO] [stdout]    |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 if try!(find_part_num(bname, path)) == req_pnum {
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:88:16
[INFO] [stdout]    |
[INFO] [stdout] 88 |             if try!(find_part_num(bname, path)) != req_pnum {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:97:32
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 part_id = Some(try!(find_part_num(bname, path)));
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:104:18
[INFO] [stdout]     |
[INFO] [stdout] 104 |     for entry in try!(read_dir(dir)) {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let entry = try!(entry);
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 |             if try!(filter_skip(bname, fpath)) { continue; }
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:119:29
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let ss: usize = try!(caps.at(2).expect("cap").parse());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:126:16
[INFO] [stdout]     |
[INFO] [stdout] 126 |             if try!(filter_skip(bname, fpath)) { continue; }
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:128:29
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let ss: usize = try!(caps.at(2).expect("cap").parse());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:129:29
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let cl: usize = try!(caps.at(3).expect("cap").parse());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/discover.rs:170:53
[INFO] [stdout]     |
[INFO] [stdout] 170 |     enum Type { Snapshot(usize), Log(usize, usize) };
[INFO] [stdout]     |                                                     ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |         try!(path.parent().ok_or(PathError::new("unable to get parent dir", path)))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let entry = try!(entry);
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:195:28
[INFO] [stdout]     |
[INFO] [stdout] 195 |             let rel_path = try!(path.strip_prefix(dir)).to_str().expect("path to str");
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:198:21
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     try!(caps.at(2).expect("cap").parse())))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:201:21
[INFO] [stdout]     |
[INFO] [stdout] 201 |                     try!(caps.at(2).expect("cap").parse()),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:202:21
[INFO] [stdout]     |
[INFO] [stdout] 202 |                     try!(caps.at(3).expect("cap").parse())))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:215:29
[INFO] [stdout]     |
[INFO] [stdout] 215 |                 let fname = try!(entry.file_name().to_str().ok_or(
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:217:26
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 let pn = try!(find_part_num(fname, &path));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:275:16
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let head = try!(read_head(&mut try!(File::open(path))));
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:275:36
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let head = try!(read_head(&mut try!(File::open(path))));
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         try!(writeln!(f, "read error (pos {}, offset ({}, {})): {}", self.err.pos,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             try!(write_hex_line(&self.data[line_start..line_start+8], f));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |             try!(write!(f, "{}{}{}", &SPACE[0..(3*p0)], &MARK[(3*p0)..(3*p1-1)], &SPACE[(3*p1-1)..24]));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             try!(writeln!(f, "{}{}", &SPACE[0..p0], &MARK[p0..p1]));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 try!(writeln!(f, "insufficient data to display!"));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/error.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     try!(writeln!(f, "{}", String::from_utf8_lossy(&v)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         try!(write!(f, "{}{} ", &HEX[high..(high+1)], &HEX[low..(low+1)]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 |                 try!(write!(f, "\\\\"));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 try!(write!(f, "\\\""));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:48:17
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 try!(write!(f, "\\\'"));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 try!(f.write_char(*b as char));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 try!(write!(f, "\\x{:02x}", b));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `step_by`
[INFO] [stdout]   --> src/lib.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | #![feature(step_by)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |     io: Box<PartIO>,
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 210 |     io: Box<dyn PartIO>,
[INFO] [stdout]     |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub type Error = Box<ErrorTrait>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub type Error = Box<dyn ErrorTrait>;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:30:48
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_snapshot<T: ElementT>(reader: &mut Read, part_id: PartId,
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_snapshot<T: ElementT>(reader: &mut dyn Read, part_id: PartId,
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:191:18
[INFO] [stdout]     |
[INFO] [stdout] 191 |     writer: &mut Write) -> Result<()>
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 191 |     writer: &mut dyn Write) -> Result<()>
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:30:44
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut Read, receiver: &mut CommitReceiver<E>) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut dyn Read, receiver: &mut CommitReceiver<E>) -> Result<()> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:30:65
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut Read, receiver: &mut CommitReceiver<E>) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut Read, receiver: &mut dyn CommitReceiver<E>) -> Result<()> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:217:67
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn write_commit<E: ElementT>(commit: &Commit<E>, writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn write_commit<E: ElementT>(commit: &Commit<E>, writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:35:26
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn as_any(&self) -> &Any;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:72:66
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_ss<'a>(&'a self, ss_num: usize) -> Result<Option<Box<Read+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_ss<'a>(&'a self, ss_num: usize) -> Result<Option<Box<dyn Read+'a>>>;
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:81:84
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_ss_cl<'a>(&'a self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_ss_cl<'a>(&'a self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Read+'a>>>;
[INFO] [stdout]    |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:92:69
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn new_ss<'a>(&'a mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn new_ss<'a>(&'a mut self, ss_num: usize) -> Result<Option<Box<dyn Write+'a>>>;
[INFO] [stdout]    |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:104:90
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn append_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn append_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>>;
[INFO] [stdout]     |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:119:87
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>>;
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/elt.rs:196:38
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn write_buf(&self, writer: &mut Write) -> Result<()>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn write_buf(&self, writer: &mut dyn Write) -> Result<()>;
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/repo_traits.rs:19:26
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn as_any(&self) -> &Any;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/repo_traits.rs:46:55
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn make_part_io(&self, num: PartId) -> Result<Box<PartIO>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn make_part_io(&self, num: PartId) -> Result<Box<dyn PartIO>>;
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/repo_traits.rs:110:45
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn repo_io<'a>(&'a mut self) -> &'a mut RepoIO;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn repo_io<'a>(&'a mut self) -> &'a mut dyn RepoIO;
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/repo_traits.rs:135:44
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn init_first(&mut self) -> Result<Box<PartIO>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn init_first(&mut self) -> Result<Box<dyn PartIO>>;
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/repo_traits.rs:163:51
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn write_buf(&self, num: PartId, writer: &mut Write) -> Result<()>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn write_buf(&self, num: PartId, writer: &mut dyn Write) -> Result<()>;
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:95:38
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub fn digest(&mut self) -> &mut Digest { &mut self.hasher }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub fn digest(&mut self) -> &mut dyn Digest { &mut self.hasher }
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/sum.rs:134:38
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn digest(&mut self) -> &mut Digest { &mut self.hasher }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn digest(&mut self) -> &mut dyn Digest { &mut self.hasher }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:247:35
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn create<'a>(mut io: Box<PartIO>, name: &str,
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn create<'a>(mut io: Box<dyn PartIO>, name: &str,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:308:25
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn open(io: Box<PartIO>) -> Result<Partition<E>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn open(io: Box<dyn PartIO>) -> Result<Partition<E>> {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:556:35
[INFO] [stdout]     |
[INFO] [stdout] 556 |     pub fn unwrap_io(self) -> Box<PartIO> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 556 |     pub fn unwrap_io(self) -> Box<dyn PartIO> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:161:63
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn read_ss<'a>(&self, ss_num: usize) -> Result<Option<Box<Read+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn read_ss<'a>(&self, ss_num: usize) -> Result<Option<Box<dyn Read+'a>>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:176:81
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn read_ss_cl<'a>(&self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn read_ss_cl<'a>(&self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Read+'a>>> {
[INFO] [stdout]     |                                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:186:66
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn new_ss<'a>(&mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn new_ss<'a>(&mut self, ss_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:203:87
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn append_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn append_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:212:84
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn new_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn new_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn read_head(r: &mut Read) -> Result<FileHeader> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn read_head(r: &mut dyn Read) -> Result<FileHeader> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn write_head(header: &FileHeader, writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn write_head(header: &FileHeader, writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:211:31
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn start_log(writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn start_log(writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:140:26
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn as_any(&self) -> &Any { self }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn as_any(&self) -> &dyn Any { self }
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:145:60
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn read_ss(&self, _ss_num: usize) -> Result<Option<Box<Read+'static>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn read_ss(&self, _ss_num: usize) -> Result<Option<Box<dyn Read+'static>>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:148:79
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn read_ss_cl(&self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<Read+'static>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn read_ss_cl(&self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<dyn Read+'static>>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:151:70
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn new_ss<'a>(&'a mut self, _ss_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn new_ss<'a>(&'a mut self, _ss_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:155:92
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn append_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn append_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:159:89
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn new_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn new_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RepoState` and `Repository`
[INFO] [stdout]   --> src/detail/mod.rs:12:22
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub use self::repo::{Repository, RepoState};
[INFO] [stdout]    |                      ^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:54:26
[INFO] [stdout]    |
[INFO] [stdout] 54 |             parent.write((&mut &mut buf[..])).expect("writing to buf");
[INFO] [stdout]    |                          ^                 ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 54 -             parent.write((&mut &mut buf[..])).expect("writing to buf");
[INFO] [stdout] 54 +             parent.write(&mut &mut buf[..]).expect("writing to buf");
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/sum.rs:112:19
[INFO] [stdout]     |
[INFO] [stdout] 112 |         let len = try!(self.inner.read(buf));
[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/detail/readwrite/sum.rs:151:19
[INFO] [stdout]     |
[INFO] [stdout] 151 |         let len = try!(self.inner.write(buf));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:125:5
[INFO] [stdout]     |
[INFO] [stdout] 125 |     try!(sum_reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:139:5
[INFO] [stdout]     |
[INFO] [stdout] 139 |     try!(sum_reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:219:5
[INFO] [stdout]     |
[INFO] [stdout] 219 |     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:149:9
[INFO] [stdout]     |
[INFO] [stdout] 149 |         try!(sum_reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:161:13
[INFO] [stdout]     |
[INFO] [stdout] 161 |             try!(sum_reader.read_exact(&mut buf[16..len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:155:22
[INFO] [stdout]     |
[INFO] [stdout] 155 |                 b'1' ... b'9' => buf[1] - b'0',
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[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(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:156:22
[INFO] [stdout]     |
[INFO] [stdout] 156 |                 b'A' ... b'Z' => buf[1] + 10 - b'A',
[INFO] [stdout]     |                      ^^^ help: use `..=` for an inclusive range
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:170:13
[INFO] [stdout]     |
[INFO] [stdout] 170 |             try!(sum_reader.read_exact(&mut buf[16..padded]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:192:22
[INFO] [stdout]     |
[INFO] [stdout] 192 |             let id = try!((&block[7..15]).read_u64::<BigEndian>());
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:199:45
[INFO] [stdout]     |
[INFO] [stdout] 199 |             user_fields.push(UserData::Text(try!(String::from_utf8(rtrim(&block[1..], 0).to_vec()))));
[INFO] [stdout]     |                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:246:5
[INFO] [stdout]     |
[INFO] [stdout] 246 |     try!(validate_repo_name(&header.name));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:248:5
[INFO] [stdout]     |
[INFO] [stdout] 248 |     try!(pad(&mut w, 16 - len));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:287:5
[INFO] [stdout]     |
[INFO] [stdout] 287 |     try!(w.write(&SUM_BLAKE2_16));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:291:5
[INFO] [stdout]     |
[INFO] [stdout] 291 |     try!(sum.write(&mut w.into_inner()));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:240:13
[INFO] [stdout]     |
[INFO] [stdout] 240 |             try!(w.write(&HEAD_SNAPSHOT));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:243:13
[INFO] [stdout]     |
[INFO] [stdout] 243 |             try!(w.write(&HEAD_COMMITLOG));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:247:15
[INFO] [stdout]     |
[INFO] [stdout] 247 |     let len = try!(w.write(header.name.as_bytes()));
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         try!(w.write(&PARTID));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:252:9
[INFO] [stdout]     |
[INFO] [stdout] 252 |         try!(w.write_u64::<BigEndian>(part_id.into()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:263:13
[INFO] [stdout]     |
[INFO] [stdout] 263 |             try!(w.write(&l[3..5]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(w.write(&uf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:265:13
[INFO] [stdout]     |
[INFO] [stdout] 265 |             try!(pad(&mut w, 14 - uf.len()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:271:13
[INFO] [stdout]     |
[INFO] [stdout] 271 |             try!(w.write(&l[2..5]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:272:13
[INFO] [stdout]     |
[INFO] [stdout] 272 |             try!(w.write(&uf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:273:13
[INFO] [stdout]     |
[INFO] [stdout] 273 |             try!(pad(&mut w, n * 16 - uf.len() - 3));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:279:13
[INFO] [stdout]     |
[INFO] [stdout] 279 |             try!(w.write(&l[0..5]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |             try!(w.write(&uf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:281:13
[INFO] [stdout]     |
[INFO] [stdout] 281 |             try!(pad(&mut w, ((len + 15) / 16) * 16 - len));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/header.rs:297:24
[INFO] [stdout]     |
[INFO] [stdout] 297 |             n -= match try!(w.write(&zeros[0..min(n, zeros.len())])) {
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ElementOp`
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:18:32
[INFO] [stdout]    |
[INFO] [stdout] 18 | use error::{Result, ReadError, ElementOp};
[INFO] [stdout]    |                                ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:40:5
[INFO] [stdout]    |
[INFO] [stdout] 40 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:48:5
[INFO] [stdout]    |
[INFO] [stdout] 48 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:62:5
[INFO] [stdout]    |
[INFO] [stdout] 62 |     try!(r.read_exact(&mut xm_data));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:90:5
[INFO] [stdout]    |
[INFO] [stdout] 90 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:142:5
[INFO] [stdout]     |
[INFO] [stdout] 142 |     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 168 |     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:176:5
[INFO] [stdout]     |
[INFO] [stdout] 176 |     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:45:16
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let secs = try!((&buf[8..16]).read_i64::<BigEndian>());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:52:16
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let cnum = try!((&buf[4..8]).read_u32::<BigEndian>());
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:58:18
[INFO] [stdout]    |
[INFO] [stdout] 58 |     let xm_len = try!((&buf[12..16]).read_u32::<BigEndian>()) as usize;
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:64:14
[INFO] [stdout]    |
[INFO] [stdout] 64 |         Some(try!(String::from_utf8(xm_data)
[INFO] [stdout]    |              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |         try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:94:20
[INFO] [stdout]    |
[INFO] [stdout] 94 |     let num_elts = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;    // #0015
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:100:9
[INFO] [stdout]     |
[INFO] [stdout] 100 |         try!(r.read_exact(&mut buf[0..32]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |         try!(r.read_exact(&mut data));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:125:9
[INFO] [stdout]     |
[INFO] [stdout] 125 |         try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:105:21
[INFO] [stdout]     |
[INFO] [stdout] 105 |         let ident = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:111:24
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let data_len = try!((&buf[24..32]).read_u64::<BigEndian>()) as usize;   // #0015
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |             try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:133:19
[INFO] [stdout]     |
[INFO] [stdout] 133 |         let elt = try!(T::from_vec_sum(data, elt_sum));
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 |         try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:144:23
[INFO] [stdout]     |
[INFO] [stdout] 144 |         let n_moves = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;    // #0015
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:146:13
[INFO] [stdout]     |
[INFO] [stdout] 146 |             try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:147:23
[INFO] [stdout]     |
[INFO] [stdout] 147 |             let id0 = try!((&buf[0..8]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:148:23
[INFO] [stdout]     |
[INFO] [stdout] 148 |             let id1 = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:162:9
[INFO] [stdout]     |
[INFO] [stdout] 162 |     if (try!((&buf[8..16]).read_u64::<BigEndian>()) as usize) != num_elts {
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:202:5
[INFO] [stdout]     |
[INFO] [stdout] 202 |     try!(w.write(&snapsh_u));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:203:5
[INFO] [stdout]     |
[INFO] [stdout] 203 |     try!(w.write_i64::<BigEndian>(state.meta().timestamp));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:205:5
[INFO] [stdout]     |
[INFO] [stdout] 205 |     try!(w.write(b"CNUM"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:206:5
[INFO] [stdout]     |
[INFO] [stdout] 206 |     try!(w.write_u32::<BigEndian>(state.meta().number));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 227 |     try!(w.write(b"ELEMENTS"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:229:5
[INFO] [stdout]     |
[INFO] [stdout] 229 |     try!(w.write_u64::<BigEndian>(num_elts));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     try!(w.write(b"STATESUM"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:265:5
[INFO] [stdout]     |
[INFO] [stdout] 265 |     try!(w.write_u64::<BigEndian>(num_elts));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:266:5
[INFO] [stdout]     |
[INFO] [stdout] 266 |     try!(state.statesum().write(&mut w));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:270:5
[INFO] [stdout]     |
[INFO] [stdout] 270 |     try!(sum.write(&mut w.into_inner()));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         try!(w.write(b"XMTT"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:211:9
[INFO] [stdout]     |
[INFO] [stdout] 211 |         try!(w.write_u32::<BigEndian>(txt.len() as u32));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:212:9
[INFO] [stdout]     |
[INFO] [stdout] 212 |         try!(w.write(txt.as_bytes()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:216:13
[INFO] [stdout]     |
[INFO] [stdout] 216 |             try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |         try!(w.write(b"XM\x00\x00\x00\x00\x00\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |         try!(parent.write(&mut w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:234:9
[INFO] [stdout]     |
[INFO] [stdout] 234 |         try!(w.write(b"ELEMENT\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 |         try!(w.write_u64::<BigEndian>((*ident).into()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:237:9
[INFO] [stdout]     |
[INFO] [stdout] 237 |         try!(w.write(b"BYTES\x00\x00\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |         try!(elt.write_buf(&mut &mut elt_buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         try!(w.write_u64::<BigEndian>(elt_buf.len() as u64 /* #0015 */));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         try!(w.write(&elt_buf));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:249:9
[INFO] [stdout]     |
[INFO] [stdout] 249 |         try!(elt.sum(*ident).write(&mut w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:246:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |             try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:254:9
[INFO] [stdout]     |
[INFO] [stdout] 254 |         try!(w.write(b"ELTMOVES"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:255:9
[INFO] [stdout]     |
[INFO] [stdout] 255 |         try!(w.write_u64::<BigEndian>(moved.len() as u64 /* #0015 */));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:257:13
[INFO] [stdout]     |
[INFO] [stdout] 257 |             try!(w.write_u64::<BigEndian>((*ident).into()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |             try!(w.write_u64::<BigEndian>((*new_ident).into()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 35 |     try!(reader.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 |         try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:82:9
[INFO] [stdout]    |
[INFO] [stdout] 82 |         try!(r.read_exact(&mut xm_data));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 |         try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:185:9
[INFO] [stdout]     |
[INFO] [stdout] 185 |         try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:191:9
[INFO] [stdout]     |
[INFO] [stdout] 191 |         try!(reader.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:49:17
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let l = try!(r.read(&mut buf[0..16]));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |         if l < 16 { try!(r.read_exact(&mut buf[l..16])); /*not EOF, buf haven't filled buffer*/ }
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:65:20
[INFO] [stdout]    |
[INFO] [stdout] 65 |         let secs = try!((&buf[8..16]).read_i64::<BigEndian>());
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:72:20
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let cnum = try!((&buf[4..8]).read_u32::<BigEndian>());
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:78:22
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let xm_len = try!((&buf[12..16]).read_u32::<BigEndian>()) as usize;
[INFO] [stdout]    |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:84:18
[INFO] [stdout]    |
[INFO] [stdout] 84 |             Some(try!(String::from_utf8(xm_data)
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:94:13
[INFO] [stdout]    |
[INFO] [stdout] 94 |             try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 |             try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:115:24
[INFO] [stdout]     |
[INFO] [stdout] 115 |         let num_elts = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;   // #0015
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:121:13
[INFO] [stdout]     |
[INFO] [stdout] 121 |             try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:125:26
[INFO] [stdout]     |
[INFO] [stdout] 125 |             let elt_id = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:142:21
[INFO] [stdout]     |
[INFO] [stdout] 142 |                     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:150:21
[INFO] [stdout]     |
[INFO] [stdout] 150 |                     try!(r.read_exact(&mut data));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:160:21
[INFO] [stdout]     |
[INFO] [stdout] 160 |                     try!(r.read_exact(&mut buf[0..SUM_BYTES]));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:146:36
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let data_len = try!((&buf[8..16]).read_u64::<BigEndian>()) as usize;   // #0015
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:155:25
[INFO] [stdout]     |
[INFO] [stdout] 155 |                         try!(r.read_exact(&mut buf[0..pad_len]));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:166:39
[INFO] [stdout]     |
[INFO] [stdout] 166 |                     let elt = Rc::new(try!(E::from_vec_sum(data, elt_sum)));
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:174:21
[INFO] [stdout]     |
[INFO] [stdout] 174 |                     try!(r.read_exact(&mut buf[0..16]));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:178:34
[INFO] [stdout]     |
[INFO] [stdout] 178 |                     let new_id = try!((&buf[8..16]).read_u64::<BigEndian>()).into();
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:212:5
[INFO] [stdout]     |
[INFO] [stdout] 212 |     try!(writer.write(b"COMMIT LOG\x00\x00\x00\x00\x00\x00"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:234:5
[INFO] [stdout]     |
[INFO] [stdout] 234 |     try!(w.write_i64::<BigEndian>(commit.meta().timestamp));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:236:5
[INFO] [stdout]     |
[INFO] [stdout] 236 |     try!(w.write(b"CNUM"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:237:5
[INFO] [stdout]     |
[INFO] [stdout] 237 |     try!(w.write_u32::<BigEndian>(commit.meta().number));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     try!(w.write(b"ELEMENTS"));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:260:5
[INFO] [stdout]     |
[INFO] [stdout] 260 |     try!(w.write_u64::<BigEndian>(commit.num_changes() as u64));       // #0015
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:295:5
[INFO] [stdout]     |
[INFO] [stdout] 295 |     try!(commit.statesum().write(&mut w));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:298:5
[INFO] [stdout]     |
[INFO] [stdout] 298 |     try!(sum.write(&mut w.into_inner()));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |         try!(w.write(b"COMMIT\x00U"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 |         try!(w.write(b"MERGE"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 |         try!(w.write(&n));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 |         try!(w.write(b"\x00U"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:240:9
[INFO] [stdout]     |
[INFO] [stdout] 240 |         try!(w.write(b"XMTT"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         try!(w.write_u32::<BigEndian>(txt.len() as u32));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:243:9
[INFO] [stdout]     |
[INFO] [stdout] 243 |         try!(w.write(txt.as_bytes()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:247:13
[INFO] [stdout]     |
[INFO] [stdout] 247 |             try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 |         try!(w.write(b"XM\x00\x00\x00\x00\x00\x00"));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:256:9
[INFO] [stdout]     |
[INFO] [stdout] 256 |         try!(parent.write(&mut w));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:272:9
[INFO] [stdout]     |
[INFO] [stdout] 272 |         try!(w.write(marker));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:273:9
[INFO] [stdout]     |
[INFO] [stdout] 273 |         try!(w.write_u64::<BigEndian>((*elt_id).into()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:275:13
[INFO] [stdout]     |
[INFO] [stdout] 275 |             try!(w.write(b"ELT DATA"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:277:13
[INFO] [stdout]     |
[INFO] [stdout] 277 |             try!(elt.write_buf(&mut &mut elt_buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:278:13
[INFO] [stdout]     |
[INFO] [stdout] 278 |             try!(w.write_u64::<BigEndian>(elt_buf.len() as u64));      // #0015
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:280:13
[INFO] [stdout]     |
[INFO] [stdout] 280 |             try!(w.write(&elt_buf));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             try!(elt.sum(*elt_id).write(&mut w));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:284:17
[INFO] [stdout]     |
[INFO] [stdout] 284 |                 try!(w.write(&padding[0..pad_len]));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             try!(w.write(b"NEW ELT\x00"));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             try!(w.write_u64::<BigEndian>(new_id.into()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:250:9
[INFO] [stdout]     |
[INFO] [stdout] 250 |         try!(validate_repo_name(name));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:263:13
[INFO] [stdout]     |
[INFO] [stdout] 263 |             try!(write_head(&header, &mut writer));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:264:13
[INFO] [stdout]     |
[INFO] [stdout] 264 |             try!(write_snapshot(&state, &mut writer));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:262:35
[INFO] [stdout]     |
[INFO] [stdout] 262 |         if let Some(mut writer) = try!(io.new_ss(ss)) {
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:354:17
[INFO] [stdout]     |
[INFO] [stdout] 354 |                 try!(Self::verify_head(&header, &mut self.repo_name, self.part_id));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:352:36
[INFO] [stdout]     |
[INFO] [stdout] 352 |             if let Some(mut ssf) = try!(self.io.read_ss(ss)) {
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:353:30
[INFO] [stdout]     |
[INFO] [stdout] 353 |                 let header = try!(read_head(&mut *ssf));
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:441:17
[INFO] [stdout]     |
[INFO] [stdout] 441 |                 try!(Self::verify_head(&head, &mut self.repo_name, self.part_id));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:439:34
[INFO] [stdout]     |
[INFO] [stdout] 439 |             if let Some(mut r) = try!(self.io.read_ss(ss)) {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:440:28
[INFO] [stdout]     |
[INFO] [stdout] 440 |                 let head = try!(read_head(&mut r));
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:444:29
[INFO] [stdout]     |
[INFO] [stdout] 444 |                 let state = try!(read_snapshot(&mut r, self.part_id, file_ver));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:466:21
[INFO] [stdout]     |
[INFO] [stdout] 466 |                     try!(Self::verify_head(&head, &mut self.repo_name, self.part_id));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:467:21
[INFO] [stdout]     |
[INFO] [stdout] 467 |                     try!(read_log(&mut r, &mut queue));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:464:38
[INFO] [stdout]     |
[INFO] [stdout] 464 |                 if let Some(mut r) = try!(self.io.read_ss_cl(ss, cl)) {
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:465:32
[INFO] [stdout]     |
[INFO] [stdout] 465 |                     let head = try!(read_head(&mut r));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:471:17
[INFO] [stdout]     |
[INFO] [stdout] 471 |                 try!(self.add_commit(commit));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:595:29
[INFO] [stdout]     |
[INFO] [stdout] 595 |         Ok(&self.states.get(try!(self.tip_key())).unwrap())
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:659:21
[INFO] [stdout]     |
[INFO] [stdout] 659 |             let c = try!(self.merge_two(&tip1, &tip2, auto_load))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:664:17
[INFO] [stdout]     |
[INFO] [stdout] 664 |                 try!(self.push_commit(commit));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:702:21
[INFO] [stdout]     |
[INFO] [stdout] 702 |                     try!(self.load_range(ss0 - 1, ss0));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:710:18
[INFO] [stdout]     |
[INFO] [stdout] 710 |         let s1 = try!(self.states.get(tip1).ok_or(MergeError::NoState));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:711:18
[INFO] [stdout]     |
[INFO] [stdout] 711 |         let s2 = try!(self.states.get(tip2).ok_or(MergeError::NoState));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:712:18
[INFO] [stdout]     |
[INFO] [stdout] 712 |         let s3 = try!(self.states.get(&common).ok_or(MergeError::NoState));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:736:13
[INFO] [stdout]     |
[INFO] [stdout] 736 |             try!(commit.apply(parent))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:734:26
[INFO] [stdout]     |
[INFO] [stdout] 734 |             let parent = try!(self.states.get(commit.first_parent())
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:760:26
[INFO] [stdout]     |
[INFO] [stdout] 760 |             let parent = try!(self.states.get(&state.parent()).ok_or(PatchOp::NoParent));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:815:21
[INFO] [stdout]     |
[INFO] [stdout] 815 |                     try!(write_head(&header, &mut writer));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:816:21
[INFO] [stdout]     |
[INFO] [stdout] 816 |                     try!(start_log(&mut writer));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:807:43
[INFO] [stdout]     |
[INFO] [stdout] 807 |                 if let Some(mut writer) = try!(self.io.new_ss_cl(self.ss1 - 1, cl_num)) {
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:822:25
[INFO] [stdout]     |
[INFO] [stdout] 822 |                         try!(write_commit(&self.unsaved.front().unwrap(), &mut writer));
[INFO] [stdout]     |                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/sum.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn write(&self, w: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn write(&self, w: &mut dyn Write) -> Result<()> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:840:17
[INFO] [stdout]     |
[INFO] [stdout] 840 |                 try!(self.write_snapshot(user_fields));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:855:23
[INFO] [stdout]     |
[INFO] [stdout] 855 |         let tip_key = try!(self.tip_key()).clone();
[INFO] [stdout]     |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:871:17
[INFO] [stdout]     |
[INFO] [stdout] 871 |                 try!(write_head(&header, &mut writer));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:872:17
[INFO] [stdout]     |
[INFO] [stdout] 872 |                 try!(write_snapshot(self.states.get(&tip_key).unwrap(), &mut writer));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:860:39
[INFO] [stdout]     |
[INFO] [stdout] 860 |             if let Some(mut writer) = try!(self.io.new_ss(ss_num)) {
[INFO] [stdout]     |                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:982:13
[INFO] [stdout]     |
[INFO] [stdout] 982 |             try!(commit.apply(parent))
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/part.rs:980:26
[INFO] [stdout]     |
[INFO] [stdout] 980 |             let parent = try!(self.states.get(commit.first_parent())
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PartId`
[INFO] [stdout]     --> src/detail/part.rs:1064:18
[INFO] [stdout]      |
[INFO] [stdout] 1064 |     use detail::{PartId};
[INFO] [stdout]      |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/repo.rs:73:23
[INFO] [stdout]    |
[INFO] [stdout] 73 |         let part_io = try!(classifier.init_first());
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/repo.rs:76:20
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let part = try!(Partition::create(part_io, &name, user_fields));
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:100:27
[INFO] [stdout]     |
[INFO] [stdout] 100 |             let part_io = try!(io.make_part_io(num0));
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |             let mut part0 = try!(Partition::open(part_io));
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:102:24
[INFO] [stdout]     |
[INFO] [stdout] 102 |             let name = try!(part0.get_repo_name()).to_string();
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:109:17
[INFO] [stdout]     |
[INFO] [stdout] 109 |                 try!(part.set_repo_name(&name));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:107:31
[INFO] [stdout]     |
[INFO] [stdout] 107 |                 let part_io = try!(io.make_part_io(n));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:108:32
[INFO] [stdout]     |
[INFO] [stdout] 108 |                 let mut part = try!(Partition::open(part_io));
[INFO] [stdout]     |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:134:13
[INFO] [stdout]     |
[INFO] [stdout] 134 |             try!(part.load(all_history));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:144:13
[INFO] [stdout]     |
[INFO] [stdout] 144 |             try!(part.write(fast, user_fields.clone()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:154:13
[INFO] [stdout]     |
[INFO] [stdout] 154 |             try!(part.write_snapshot(user_fields.clone()));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:198:13
[INFO] [stdout]     |
[INFO] [stdout] 198 |             try!(part.merge(solver, auto_load));
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:220:35
[INFO] [stdout]     |
[INFO] [stdout] 220 |                 rs.add_part(*num, try!(part.tip()).clone_mut());
[INFO] [stdout]     |                                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:245:16
[INFO] [stdout]     |
[INFO] [stdout] 245 |             if try!(part.push_state(pstate, extra)) {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:285:16
[INFO] [stdout]     |
[INFO] [stdout] 285 |             if try!(part.push_state(pstate, extra)) {
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:289:41
[INFO] [stdout]     |
[INFO] [stdout] 289 |                     state.add_part(num, try!(part.tip()).clone_mut());
[INFO] [stdout]     |                                         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:296:38
[INFO] [stdout]     |
[INFO] [stdout] 296 |                 state.add_part(*num, try!(part.tip()).clone_mut());
[INFO] [stdout]     |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:449:13
[INFO] [stdout]     |
[INFO] [stdout] 449 |             try!(if let Some(mut _source_state) = self.states.get_mut(&source_id) {
[INFO] [stdout]     |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:456:26
[INFO] [stdout]     |
[INFO] [stdout] 456 |             let new_id = try!(if let Some(mut target_state) = self.states.get_mut(&class_id) {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/repo.rs:470:31
[INFO] [stdout]     |
[INFO] [stdout] 470 |                 let removed = try!(source_state.remove(id));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/detail/sum.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |         try!(w.write(&self.s));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/states.rs:419:9
[INFO] [stdout]     |
[INFO] [stdout] 419 |         try!(self.insert_with_id(id, elt));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/states.rs:418:18
[INFO] [stdout]     |
[INFO] [stdout] 418 |         let id = try!(self.gen_id());
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:274:9
[INFO] [stdout]     |
[INFO] [stdout] 274 |         try!(self.apply_mut(&mut mut_state));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:288:21
[INFO] [stdout]     |
[INFO] [stdout] 288 |                     try!(mut_state.remove(*id));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:291:21
[INFO] [stdout]     |
[INFO] [stdout] 291 |                     try!(mut_state.insert_with_id(*id, elt.clone()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:294:21
[INFO] [stdout]     |
[INFO] [stdout] 294 |                     try!(mut_state.replace_rc(*id, elt.clone()));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/commits.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |                     try!(mut_state.remove(*id));
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/elt.rs:239:9
[INFO] [stdout]     |
[INFO] [stdout] 239 |         try!(writer.write(self.as_bytes()));
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/elt.rs:243:17
[INFO] [stdout]     |
[INFO] [stdout] 243 |         let s = try!(from_utf8(buf));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/detail/elt.rs:247:12
[INFO] [stdout]     |
[INFO] [stdout] 247 |         Ok(try!(String::from_utf8(vec)))
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OtherError`
[INFO] [stdout]   --> src/detail/repo_traits.rs:13:28
[INFO] [stdout]    |
[INFO] [stdout] 13 | use error::{Error, Result, OtherError};
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fileio.rs:195:22
[INFO] [stdout]     |
[INFO] [stdout] 195 |         let stream = try!(File::create(&p));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/fileio.rs:222:22
[INFO] [stdout]     |
[INFO] [stdout] 222 |         let stream = try!(OpenOptions::new().create(true).write(true).append(true).open(&p));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OtherError`
[INFO] [stdout]   --> src/discover.rs:17:32
[INFO] [stdout]    |
[INFO] [stdout] 17 | use error::{Result, PathError, OtherError};
[INFO] [stdout]    |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:51:21
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let fname = try!(fname.to_str().ok_or(PathError::new("not valid UTF-8", path)));
[INFO] [stdout]    |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:53:23
[INFO] [stdout]    |
[INFO] [stdout] 53 |             let dir = try!(path.parent().ok_or(PathError::new("path has no parent", path)));
[INFO] [stdout]    |                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:55:28
[INFO] [stdout]    |
[INFO] [stdout] 55 |             part_id = Some(try!(find_part_num(&bname, path)));
[INFO] [stdout]    |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:74:20
[INFO] [stdout]    |
[INFO] [stdout] 74 |                 if try!(find_part_num(bname, path)) == req_pnum {
[INFO] [stdout]    |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:88:16
[INFO] [stdout]    |
[INFO] [stdout] 88 |             if try!(find_part_num(bname, path)) != req_pnum {
[INFO] [stdout]    |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/discover.rs:97:32
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 part_id = Some(try!(find_part_num(bname, path)));
[INFO] [stdout]    |                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:104:18
[INFO] [stdout]     |
[INFO] [stdout] 104 |     for entry in try!(read_dir(dir)) {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:106:21
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let entry = try!(entry);
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:117:16
[INFO] [stdout]     |
[INFO] [stdout] 117 |             if try!(filter_skip(bname, fpath)) { continue; }
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:119:29
[INFO] [stdout]     |
[INFO] [stdout] 119 |             let ss: usize = try!(caps.at(2).expect("cap").parse());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/elt.rs:238:38
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn write_buf(&self, writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn write_buf(&self, writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:126:16
[INFO] [stdout]     |
[INFO] [stdout] 126 |             if try!(filter_skip(bname, fpath)) { continue; }
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:128:29
[INFO] [stdout]     |
[INFO] [stdout] 128 |             let ss: usize = try!(caps.at(2).expect("cap").parse());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:129:29
[INFO] [stdout]     |
[INFO] [stdout] 129 |             let cl: usize = try!(caps.at(3).expect("cap").parse());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/discover.rs:170:53
[INFO] [stdout]     |
[INFO] [stdout] 170 |     enum Type { Snapshot(usize), Log(usize, usize) };
[INFO] [stdout]     |                                                     ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:175:9
[INFO] [stdout]     |
[INFO] [stdout] 175 |         try!(path.parent().ok_or(PathError::new("unable to get parent dir", path)))
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:186:21
[INFO] [stdout]     |
[INFO] [stdout] 186 |         let entry = try!(entry);
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:195:28
[INFO] [stdout]     |
[INFO] [stdout] 195 |             let rel_path = try!(path.strip_prefix(dir)).to_str().expect("path to str");
[INFO] [stdout]     |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:198:21
[INFO] [stdout]     |
[INFO] [stdout] 198 |                     try!(caps.at(2).expect("cap").parse())))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:201:21
[INFO] [stdout]     |
[INFO] [stdout] 201 |                     try!(caps.at(2).expect("cap").parse()),
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:202:21
[INFO] [stdout]     |
[INFO] [stdout] 202 |                     try!(caps.at(3).expect("cap").parse())))
[INFO] [stdout]     |                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:215:29
[INFO] [stdout]     |
[INFO] [stdout] 215 |                 let fname = try!(entry.file_name().to_str().ok_or(
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:217:26
[INFO] [stdout]     |
[INFO] [stdout] 217 |                 let pn = try!(find_part_num(fname, &path));
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:275:16
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let head = try!(read_head(&mut try!(File::open(path))));
[INFO] [stdout]     |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/discover.rs:275:36
[INFO] [stdout]     |
[INFO] [stdout] 275 |     let head = try!(read_head(&mut try!(File::open(path))));
[INFO] [stdout]     |                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:65:9
[INFO] [stdout]    |
[INFO] [stdout] 65 |         try!(writeln!(f, "read error (pos {}, offset ({}, {})): {}", self.err.pos,
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:74:13
[INFO] [stdout]    |
[INFO] [stdout] 74 |             try!(write_hex_line(&self.data[line_start..line_start+8], f));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:78:13
[INFO] [stdout]    |
[INFO] [stdout] 78 |             try!(write!(f, "{}{}{}", &SPACE[0..(3*p0)], &MARK[(3*p0)..(3*p1-1)], &SPACE[(3*p1-1)..24]));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:79:13
[INFO] [stdout]    |
[INFO] [stdout] 79 |             try!(writeln!(f, "{}{}", &SPACE[0..p0], &MARK[p0..p1]));
[INFO] [stdout]    |             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:71:17
[INFO] [stdout]    |
[INFO] [stdout] 71 |                 try!(writeln!(f, "insufficient data to display!"));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/error.rs:100:5
[INFO] [stdout]     |
[INFO] [stdout] 100 |     try!(writeln!(f, "{}", String::from_utf8_lossy(&v)));
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/error.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 92 |         try!(write!(f, "{}{} ", &HEX[high..(high+1)], &HEX[low..(low+1)]));
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:44:17
[INFO] [stdout]    |
[INFO] [stdout] 44 |                 try!(write!(f, "\\\\"));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |                 try!(write!(f, "\\\""));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:48:17
[INFO] [stdout]    |
[INFO] [stdout] 48 |                 try!(write!(f, "\\\'"));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:50:17
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 try!(f.write_char(*b as char));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/util.rs:52:17
[INFO] [stdout]    |
[INFO] [stdout] 52 |                 try!(write!(f, "\\x{:02x}", b));
[INFO] [stdout]    |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:146:26
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn as_any(&self) -> &Any { self }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn as_any(&self) -> &dyn Any { self }
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `read_ss` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:161:15
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn read_ss<'a>(&self, ss_num: usize) -> Result<Option<Box<Read+'a>>> {
[INFO] [stdout]     |               ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:72:15
[INFO] [stdout]     |
[INFO] [stdout] 72  |     fn read_ss<'a>(&'a self, ss_num: usize) -> Result<Option<Box<Read+'a>>>;
[INFO] [stdout]     |               ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `read_ss_cl` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:176:18
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn read_ss_cl<'a>(&self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>> {
[INFO] [stdout]     |                  ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:81:18
[INFO] [stdout]     |
[INFO] [stdout] 81  |     fn read_ss_cl<'a>(&'a self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>>;
[INFO] [stdout]     |                  ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `new_ss` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:186:14
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn new_ss<'a>(&mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>> {
[INFO] [stdout]     |              ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:92:14
[INFO] [stdout]     |
[INFO] [stdout] 92  |     fn new_ss<'a>(&'a mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>>;
[INFO] [stdout]     |              ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `append_ss_cl` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:203:20
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn append_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[INFO] [stdout]     |                    ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:104:20
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn append_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[INFO] [stdout]     |                    ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `new_ss_cl` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:212:17
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn new_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[INFO] [stdout]     |                 ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[INFO] [stdout]     |                 ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:272:26
[INFO] [stdout]     |
[INFO] [stdout] 272 |     fn as_any(&self) -> &Any { self }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 272 |     fn as_any(&self) -> &dyn Any { self }
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:288:55
[INFO] [stdout]     |
[INFO] [stdout] 288 |     fn make_part_io(&self, num: PartId) -> Result<Box<PartIO>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 288 |     fn make_part_io(&self, num: PartId) -> Result<Box<dyn PartIO>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:32:38
[INFO] [stdout]    |
[INFO] [stdout] 32 |         ((&mut &mut buf[..]) as &mut Write)
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 32 |         ((&mut &mut buf[..]) as &mut dyn Write)
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:46:53
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut w = (&mut &mut buf[..]) as &mut Write;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut w = (&mut &mut buf[..]) as &mut dyn Write;
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `step_by`
[INFO] [stdout]   --> src/lib.rs:68:12
[INFO] [stdout]    |
[INFO] [stdout] 68 | #![feature(step_by)]
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:210:13
[INFO] [stdout]     |
[INFO] [stdout] 210 |     io: Box<PartIO>,
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 210 |     io: Box<dyn PartIO>,
[INFO] [stdout]     |             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/error.rs:15:22
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub type Error = Box<ErrorTrait>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub type Error = Box<dyn ErrorTrait>;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/snapshot.rs:30:48
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_snapshot<T: ElementT>(reader: &mut Read, part_id: PartId,
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_snapshot<T: ElementT>(reader: &mut dyn Read, part_id: PartId,
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/snapshot.rs:191:18
[INFO] [stdout]     |
[INFO] [stdout] 191 |     writer: &mut Write) -> Result<()>
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 191 |     writer: &mut dyn Write) -> Result<()>
[INFO] [stdout]     |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:30:44
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut Read, receiver: &mut CommitReceiver<E>) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut dyn Read, receiver: &mut CommitReceiver<E>) -> Result<()> {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/commitlog.rs:30:65
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut Read, receiver: &mut CommitReceiver<E>) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn read_log<E: ElementT>(reader_: &mut Read, receiver: &mut dyn CommitReceiver<E>) -> Result<()> {
[INFO] [stdout]    |                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:217:67
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn write_commit<E: ElementT>(commit: &Commit<E>, writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 | pub fn write_commit<E: ElementT>(commit: &Commit<E>, writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:35:26
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn as_any(&self) -> &Any;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 35 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:72:66
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_ss<'a>(&'a self, ss_num: usize) -> Result<Option<Box<Read+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 72 |     fn read_ss<'a>(&'a self, ss_num: usize) -> Result<Option<Box<dyn Read+'a>>>;
[INFO] [stdout]    |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:81:84
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_ss_cl<'a>(&'a self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 81 |     fn read_ss_cl<'a>(&'a self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Read+'a>>>;
[INFO] [stdout]    |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/part.rs:92:69
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn new_ss<'a>(&'a mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn new_ss<'a>(&'a mut self, ss_num: usize) -> Result<Option<Box<dyn Write+'a>>>;
[INFO] [stdout]    |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:104:90
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn append_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn append_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>>;
[INFO] [stdout]     |                                                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:119:87
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>>;
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/elt.rs:196:38
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn write_buf(&self, writer: &mut Write) -> Result<()>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 196 |     fn write_buf(&self, writer: &mut dyn Write) -> Result<()>;
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/repo_traits.rs:19:26
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn as_any(&self) -> &Any;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn as_any(&self) -> &dyn Any;
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/repo_traits.rs:46:55
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn make_part_io(&self, num: PartId) -> Result<Box<PartIO>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn make_part_io(&self, num: PartId) -> Result<Box<dyn PartIO>>;
[INFO] [stdout]    |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/repo_traits.rs:110:45
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn repo_io<'a>(&'a mut self) -> &'a mut RepoIO;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 |     fn repo_io<'a>(&'a mut self) -> &'a mut dyn RepoIO;
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/repo_traits.rs:135:44
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn init_first(&mut self) -> Result<Box<PartIO>>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 135 |     fn init_first(&mut self) -> Result<Box<dyn PartIO>>;
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/repo_traits.rs:163:51
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn write_buf(&self, num: PartId, writer: &mut Write) -> Result<()>;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn write_buf(&self, num: PartId, writer: &mut dyn Write) -> Result<()>;
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:95:38
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub fn digest(&mut self) -> &mut Digest { &mut self.hasher }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 95 |     pub fn digest(&mut self) -> &mut dyn Digest { &mut self.hasher }
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/sum.rs:134:38
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn digest(&mut self) -> &mut Digest { &mut self.hasher }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub fn digest(&mut self) -> &mut dyn Digest { &mut self.hasher }
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:247:35
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn create<'a>(mut io: Box<PartIO>, name: &str,
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 247 |     pub fn create<'a>(mut io: Box<dyn PartIO>, name: &str,
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:308:25
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn open(io: Box<PartIO>) -> Result<Partition<E>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 308 |     pub fn open(io: Box<dyn PartIO>) -> Result<Partition<E>> {
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:556:35
[INFO] [stdout]     |
[INFO] [stdout] 556 |     pub fn unwrap_io(self) -> Box<PartIO> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 556 |     pub fn unwrap_io(self) -> Box<dyn PartIO> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:161:63
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn read_ss<'a>(&self, ss_num: usize) -> Result<Option<Box<Read+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn read_ss<'a>(&self, ss_num: usize) -> Result<Option<Box<dyn Read+'a>>> {
[INFO] [stdout]     |                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:176:81
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn read_ss_cl<'a>(&self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn read_ss_cl<'a>(&self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Read+'a>>> {
[INFO] [stdout]     |                                                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:186:66
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn new_ss<'a>(&mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn new_ss<'a>(&mut self, ss_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:203:87
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn append_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn append_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:212:84
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn new_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn new_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:118:26
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn read_head(r: &mut Read) -> Result<FileHeader> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub fn read_head(r: &mut dyn Read) -> Result<FileHeader> {
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/header.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn write_head(header: &FileHeader, writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 233 | pub fn write_head(header: &FileHeader, writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/readwrite/commitlog.rs:211:31
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn start_log(writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 211 | pub fn start_log(writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:140:26
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn as_any(&self) -> &Any { self }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 140 |     fn as_any(&self) -> &dyn Any { self }
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:145:60
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn read_ss(&self, _ss_num: usize) -> Result<Option<Box<Read+'static>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn read_ss(&self, _ss_num: usize) -> Result<Option<Box<dyn Read+'static>>> {
[INFO] [stdout]     |                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:148:79
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn read_ss_cl(&self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<Read+'static>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 148 |     fn read_ss_cl(&self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<dyn Read+'static>>> {
[INFO] [stdout]     |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:151:70
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn new_ss<'a>(&'a mut self, _ss_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 151 |     fn new_ss<'a>(&'a mut self, _ss_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:155:92
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn append_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn append_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/part.rs:159:89
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn new_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 159 |     fn new_ss_cl<'a>(&'a mut self, _ss_num: usize, _cl_num: usize) -> Result<Option<Box<dyn Write+'a>>> {
[INFO] [stdout]     |                                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/sum.rs:57:33
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn write(&self, w: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub fn write(&self, w: &mut dyn Write) -> Result<()> {
[INFO] [stdout]    |                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/detail/elt.rs:238:38
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn write_buf(&self, writer: &mut Write) -> Result<()> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn write_buf(&self, writer: &mut dyn Write) -> Result<()> {
[INFO] [stdout]     |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:146:26
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn as_any(&self) -> &Any { self }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 146 |     fn as_any(&self) -> &dyn Any { self }
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `read_ss` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:161:15
[INFO] [stdout]     |
[INFO] [stdout] 161 |     fn read_ss<'a>(&self, ss_num: usize) -> Result<Option<Box<Read+'a>>> {
[INFO] [stdout]     |               ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:72:15
[INFO] [stdout]     |
[INFO] [stdout] 72  |     fn read_ss<'a>(&'a self, ss_num: usize) -> Result<Option<Box<Read+'a>>>;
[INFO] [stdout]     |               ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `read_ss_cl` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:176:18
[INFO] [stdout]     |
[INFO] [stdout] 176 |     fn read_ss_cl<'a>(&self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>> {
[INFO] [stdout]     |                  ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:81:18
[INFO] [stdout]     |
[INFO] [stdout] 81  |     fn read_ss_cl<'a>(&'a self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Read+'a>>>;
[INFO] [stdout]     |                  ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `new_ss` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:186:14
[INFO] [stdout]     |
[INFO] [stdout] 186 |     fn new_ss<'a>(&mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>> {
[INFO] [stdout]     |              ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:92:14
[INFO] [stdout]     |
[INFO] [stdout] 92  |     fn new_ss<'a>(&'a mut self, ss_num: usize) -> Result<Option<Box<Write+'a>>>;
[INFO] [stdout]     |              ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `append_ss_cl` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:203:20
[INFO] [stdout]     |
[INFO] [stdout] 203 |     fn append_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[INFO] [stdout]     |                    ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:104:20
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn append_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[INFO] [stdout]     |                    ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0195]: lifetime parameters or bounds on method `new_ss_cl` do not match the trait declaration
[INFO] [stdout]    --> src/fileio.rs:212:17
[INFO] [stdout]     |
[INFO] [stdout] 212 |     fn new_ss_cl<'a>(&mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>> {
[INFO] [stdout]     |                 ^^^^ lifetimes do not match method in trait
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/detail/part.rs:119:17
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn new_ss_cl<'a>(&'a mut self, ss_num: usize, cl_num: usize) -> Result<Option<Box<Write+'a>>>;
[INFO] [stdout]     |                 ---- lifetimes in impl do not match this method in trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:272:26
[INFO] [stdout]     |
[INFO] [stdout] 272 |     fn as_any(&self) -> &Any { self }
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 272 |     fn as_any(&self) -> &dyn Any { self }
[INFO] [stdout]     |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/fileio.rs:288:55
[INFO] [stdout]     |
[INFO] [stdout] 288 |     fn make_part_io(&self, num: PartId) -> Result<Box<PartIO>> {
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 288 |     fn make_part_io(&self, num: PartId) -> Result<Box<dyn PartIO>> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:32:38
[INFO] [stdout]    |
[INFO] [stdout] 32 |         ((&mut &mut buf[..]) as &mut Write)
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 32 |         ((&mut &mut buf[..]) as &mut dyn Write)
[INFO] [stdout]    |                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:46:53
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut w = (&mut &mut buf[..]) as &mut Write;
[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: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut w = (&mut &mut buf[..]) as &mut dyn Write;
[INFO] [stdout]    |                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:165:30
[INFO] [stdout]     |
[INFO] [stdout] 165 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:194:30
[INFO] [stdout]     |
[INFO] [stdout] 194 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:201:67
[INFO] [stdout]     |
[INFO] [stdout] 201 |         trace!("casting ElementOp '{}' to PatchOp::PatchApply", e.description());
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:283:30
[INFO] [stdout]     |
[INFO] [stdout] 283 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:307:46
[INFO] [stdout]     |
[INFO] [stdout] 307 |             &MergeError::PatchOp(ref p) => p.description(),
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:313:30
[INFO] [stdout]     |
[INFO] [stdout] 313 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut w = (&mut &mut buf[..]) as &mut Write;
[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/detail/readwrite/header.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let mut r = sum_reader.into_inner();
[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/detail/repo.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |             let mut part = if let Some(p) = self.partitions.get_mut(&num) {
[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/detail/repo.rs:267:17
[INFO] [stdout]     |
[INFO] [stdout] 267 |             let mut part = match self.partitions.get_mut(&num) {
[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/detail/repo.rs:426:21
[INFO] [stdout]     |
[INFO] [stdout] 426 |         if let Some(mut state) = self.states.get_mut(&part_id) {
[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/detail/repo.rs:456:43
[INFO] [stdout]     |
[INFO] [stdout] 456 |             let new_id = try!(if let Some(mut target_state) = self.states.get_mut(&class_id) {
[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/detail/repo.rs:469:25
[INFO] [stdout]     |
[INFO] [stdout] 469 |             if let Some(mut source_state) = self.states.get_mut(&source_id) {
[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/detail/repo.rs:478:25
[INFO] [stdout]     |
[INFO] [stdout] 478 |             if let Some(mut state) = self.states.get_mut(&class_id) {
[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/detail/repo.rs:487:21
[INFO] [stdout]     |
[INFO] [stdout] 487 |         if let Some(mut state) = self.states.get_mut(&part_id) {
[INFO] [stdout]     |                     ----^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:165:30
[INFO] [stdout]     |
[INFO] [stdout] 165 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:194:30
[INFO] [stdout]     |
[INFO] [stdout] 194 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:201:67
[INFO] [stdout]     |
[INFO] [stdout] 201 |         trace!("casting ElementOp '{}' to PatchOp::PatchApply", e.description());
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:283:30
[INFO] [stdout]     |
[INFO] [stdout] 283 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:307:46
[INFO] [stdout]     |
[INFO] [stdout] 307 |             &MergeError::PatchOp(ref p) => p.description(),
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> src/error.rs:313:30
[INFO] [stdout]     |
[INFO] [stdout] 313 |         write!(f, "{}", self.description())
[INFO] [stdout]     |                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/detail/readwrite/sum.rs:46:17
[INFO] [stdout]    |
[INFO] [stdout] 46 |             let mut w = (&mut &mut buf[..]) as &mut Write;
[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/detail/readwrite/header.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let mut r = sum_reader.into_inner();
[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/discover.rs:209:18
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (pn, mut part_paths) = match prefixes.entry(prefix) {
[INFO] [stdout]     |                  ----^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0195, E0557, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0195`.
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/detail/repo.rs:237:17
[INFO] [stdout]     |
[INFO] [stdout] 237 |             let mut part = if let Some(p) = self.partitions.get_mut(&num) {
[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/detail/repo.rs:267:17
[INFO] [stdout]     |
[INFO] [stdout] 267 |             let mut part = match self.partitions.get_mut(&num) {
[INFO] [stdout]     |                 ----^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pippin` (lib) due to 28 previous errors; 311 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/detail/repo.rs:426:21
[INFO] [stdout]     |
[INFO] [stdout] 426 |         if let Some(mut state) = self.states.get_mut(&part_id) {
[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/detail/repo.rs:456:43
[INFO] [stdout]     |
[INFO] [stdout] 456 |             let new_id = try!(if let Some(mut target_state) = self.states.get_mut(&class_id) {
[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/detail/repo.rs:469:25
[INFO] [stdout]     |
[INFO] [stdout] 469 |             if let Some(mut source_state) = self.states.get_mut(&source_id) {
[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/detail/repo.rs:478:25
[INFO] [stdout]     |
[INFO] [stdout] 478 |             if let Some(mut state) = self.states.get_mut(&class_id) {
[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/detail/repo.rs:487:21
[INFO] [stdout]     |
[INFO] [stdout] 487 |         if let Some(mut state) = self.states.get_mut(&part_id) {
[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/discover.rs:209:18
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (pn, mut part_paths) = match prefixes.entry(prefix) {
[INFO] [stdout]     |                  ----^^^^^^^^^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0195, E0557, E0635.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0195`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pippin` (lib test) due to 28 previous errors; 312 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "ac956205c9ad1126a4b5c923afe455c2dc3ad945f1a7f97070339b38e521b62f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac956205c9ad1126a4b5c923afe455c2dc3ad945f1a7f97070339b38e521b62f", kill_on_drop: false }`
[INFO] [stdout] ac956205c9ad1126a4b5c923afe455c2dc3ad945f1a7f97070339b38e521b62f
