[INFO] fetching crate aligner 0.1.6...
[INFO] testing aligner-0.1.6 against beta-2021-08-01 for beta-1.55-1
[INFO] extracting crate aligner 0.1.6 into /workspace/builds/worker-3/source
[INFO] validating manifest of crates.io crate aligner 0.1.6 on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate aligner 0.1.6
[INFO] finished tweaking crates.io crate aligner 0.1.6
[INFO] tweaked toml for crates.io crate aligner 0.1.6 written to /workspace/builds/worker-3/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded subparse v0.3.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 749b5821e259ad76b59c684f7cf6e17a61aa8064865137bfaa77678530b2de4f
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "749b5821e259ad76b59c684f7cf6e17a61aa8064865137bfaa77678530b2de4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "749b5821e259ad76b59c684f7cf6e17a61aa8064865137bfaa77678530b2de4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "749b5821e259ad76b59c684f7cf6e17a61aa8064865137bfaa77678530b2de4f", kill_on_drop: false }`
[INFO] [stdout] 749b5821e259ad76b59c684f7cf6e17a61aa8064865137bfaa77678530b2de4f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 7c4c95b206592225f7114e10167c9dec0c9843ad0c0612d89fac55919395b0d3
[INFO] running `Command { std: "docker" "start" "-a" "7c4c95b206592225f7114e10167c9dec0c9843ad0c0612d89fac55919395b0d3", kill_on_drop: false }`
[INFO] [stderr]    Compiling encoding_index_tests v0.1.4
[INFO] [stderr]    Compiling crossbeam-utils v0.8.5
[INFO] [stderr]    Compiling ucd-util v0.1.8
[INFO] [stderr]    Compiling regex v0.2.11
[INFO] [stderr]    Compiling utf8-ranges v1.0.4
[INFO] [stderr]    Compiling nom v2.1.0
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling ascii v0.7.1
[INFO] [stderr]    Compiling safemem v0.2.0
[INFO] [stderr]    Compiling thread_local v0.3.6
[INFO] [stderr]    Compiling itertools v0.6.5
[INFO] [stderr]    Compiling object v0.26.0
[INFO] [stderr]    Compiling aho-corasick v0.6.10
[INFO] [stderr]    Compiling num-rational v0.1.42
[INFO] [stderr]    Compiling encoding-index-korean v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-simpchinese v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-singlebyte v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-tradchinese v1.20141219.5
[INFO] [stderr]    Compiling encoding-index-japanese v1.20141219.5
[INFO] [stderr]    Compiling regex-syntax v0.5.6
[INFO] [stderr]    Compiling combine v2.5.2
[INFO] [stderr]    Compiling image v0.13.0
[INFO] [stderr]    Compiling encoding v0.2.33
[INFO] [stderr]    Compiling crossbeam-channel v0.5.1
[INFO] [stderr]    Compiling pbr v1.0.4
[INFO] [stderr]    Compiling backtrace v0.3.61
[INFO] [stderr]    Compiling error-chain v0.10.0
[INFO] [stderr]    Compiling vobsub v0.2.3
[INFO] [stderr]    Compiling subparse v0.3.0
[INFO] [stderr]    Compiling aligner v0.1.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]   --> src/internal/utils.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |     #[allow(collapsible_if)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]   --> src/internal/utils.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |     #[allow(collapsible_if)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]    --> src/internal/utils.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 |         #[allow(collapsible_if)]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `if_same_then_else`
[INFO] [stdout]    --> src/internal/utils.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 | #[allow(if_same_then_else)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/internal/rating_type.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 | const RATING_PRECISION: RatingIntern = (1 << 32);
[INFO] [stdout]    |                                        ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/internal/aligner.rs:72:38
[INFO] [stdout]    |
[INFO] [stdout] 72 |     progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internal/aligner.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 |         mut progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:66:34
[INFO] [stdout]    |
[INFO] [stdout] 66 |     progress_handler: Option<Box<ProgressHandler>>,
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:398:30
[INFO] [stdout]     |
[INFO] [stdout] 398 | ...                   .into_iter()
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 398 |                             .iter()
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 397 |                         IntoIterator::into_iter([(reposition_rating_seg, Choice::Reposition)])
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:407:30
[INFO] [stdout]     |
[INFO] [stdout] 407 | ...                   .into_iter()
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 407 |                             .iter()
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 406 |                         IntoIterator::into_iter([(nosplit_rating_seg, Choice::NosplitReposition)])
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:414:84
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].into_iter().cloned());
[INFO] [stdout]     |                                                                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].iter().cloned());
[INFO] [stdout]     |                                                                                    ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter(IntoIterator::into_iter([(fixed_rating_seg, Choice::Fixed)]).cloned());
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^                                   ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:488:58
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.into_iter()
[INFO] [stdout]     |                                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.iter()
[INFO] [stdout]     |                                                          ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = IntoIterator::into_iter(timepoints)
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter([prev].into_iter().cloned()),
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter([prev].iter().cloned()),
[INFO] [stdout]    |                                         ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned()),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:73:41
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                         ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:76:44
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:78:44
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/binary/errors.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / error_chain! {
[INFO] [stdout] 23 | |     foreign_links {
[INFO] [stdout] 24 | |         Io(::std::io::Error);
[INFO] [stdout] 25 | |     }
[INFO] [stdout] ...  |
[INFO] [stdout] 57 | |     }
[INFO] [stdout] 58 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/binary/errors.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / error_chain! {
[INFO] [stdout] 23 | |     foreign_links {
[INFO] [stdout] 24 | |         Io(::std::io::Error);
[INFO] [stdout] 25 | |     }
[INFO] [stdout] ...  |
[INFO] [stdout] 57 | |     }
[INFO] [stdout] 58 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 46.35s
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7c4c95b206592225f7114e10167c9dec0c9843ad0c0612d89fac55919395b0d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7c4c95b206592225f7114e10167c9dec0c9843ad0c0612d89fac55919395b0d3", kill_on_drop: false }`
[INFO] [stdout] 7c4c95b206592225f7114e10167c9dec0c9843ad0c0612d89fac55919395b0d3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e4411ba21680ba3d8dbde605c43e4b293999c77391f7f1f095457ec3b5deb066
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "e4411ba21680ba3d8dbde605c43e4b293999c77391f7f1f095457ec3b5deb066", kill_on_drop: false }`
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]   --> src/internal/utils.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |     #[allow(collapsible_if)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]   --> src/internal/utils.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |     #[allow(collapsible_if)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]    --> src/internal/utils.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 |         #[allow(collapsible_if)]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `if_same_then_else`
[INFO] [stdout]    --> src/internal/utils.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 | #[allow(if_same_then_else)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/internal/rating_type.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 | const RATING_PRECISION: RatingIntern = (1 << 32);
[INFO] [stdout]    |                                        ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/internal/aligner.rs:72:38
[INFO] [stdout]    |
[INFO] [stdout] 72 |     progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internal/aligner.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 |         mut progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:66:34
[INFO] [stdout]    |
[INFO] [stdout] 66 |     progress_handler: Option<Box<ProgressHandler>>,
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:398:30
[INFO] [stdout]     |
[INFO] [stdout] 398 | ...                   .into_iter()
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 398 |                             .iter()
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 397 |                         IntoIterator::into_iter([(reposition_rating_seg, Choice::Reposition)])
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:407:30
[INFO] [stdout]     |
[INFO] [stdout] 407 | ...                   .into_iter()
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 407 |                             .iter()
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 406 |                         IntoIterator::into_iter([(nosplit_rating_seg, Choice::NosplitReposition)])
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:414:84
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].into_iter().cloned());
[INFO] [stdout]     |                                                                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].iter().cloned());
[INFO] [stdout]     |                                                                                    ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter(IntoIterator::into_iter([(fixed_rating_seg, Choice::Fixed)]).cloned());
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^                                   ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:488:58
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.into_iter()
[INFO] [stdout]     |                                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.iter()
[INFO] [stdout]     |                                                          ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = IntoIterator::into_iter(timepoints)
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter([prev].into_iter().cloned()),
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter([prev].iter().cloned()),
[INFO] [stdout]    |                                         ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned()),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:73:41
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                         ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:76:44
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:78:44
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 16 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rand v0.3.23
[INFO] [stderr]    Compiling aligner v0.1.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]   --> src/internal/utils.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |     #[allow(collapsible_if)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]   --> src/internal/utils.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 |     #[allow(collapsible_if)]
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `collapsible_if`
[INFO] [stdout]    --> src/internal/utils.rs:215:17
[INFO] [stdout]     |
[INFO] [stdout] 215 |         #[allow(collapsible_if)]
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unknown lint: `if_same_then_else`
[INFO] [stdout]    --> src/internal/utils.rs:251:9
[INFO] [stdout]     |
[INFO] [stdout] 251 | #[allow(if_same_then_else)]
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]   --> src/internal/rating_type.rs:27:40
[INFO] [stdout]    |
[INFO] [stdout] 27 | const RATING_PRECISION: RatingIntern = (1 << 32);
[INFO] [stdout]    |                                        ^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/internal/aligner.rs:72:38
[INFO] [stdout]    |
[INFO] [stdout] 72 |     progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/internal/aligner.rs:110:46
[INFO] [stdout]     |
[INFO] [stdout] 110 |         mut progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:66:34
[INFO] [stdout]    |
[INFO] [stdout] 66 |     progress_handler: Option<Box<ProgressHandler>>,
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]   --> src/binary/errors.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / error_chain! {
[INFO] [stdout] 23 | |     foreign_links {
[INFO] [stdout] 24 | |         Io(::std::io::Error);
[INFO] [stdout] 25 | |     }
[INFO] [stdout] ...  |
[INFO] [stdout] 57 | |     }
[INFO] [stdout] 58 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stdout]   --> src/binary/errors.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | / error_chain! {
[INFO] [stdout] 23 | |     foreign_links {
[INFO] [stdout] 24 | |         Io(::std::io::Error);
[INFO] [stdout] 25 | |     }
[INFO] [stdout] ...  |
[INFO] [stdout] 57 | |     }
[INFO] [stdout] 58 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `error_chain_processed` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:398:30
[INFO] [stdout]     |
[INFO] [stdout] 398 | ...                   .into_iter()
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 398 |                             .iter()
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 397 |                         IntoIterator::into_iter([(reposition_rating_seg, Choice::Reposition)])
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                             ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:407:30
[INFO] [stdout]     |
[INFO] [stdout] 407 | ...                   .into_iter()
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 407 |                             .iter()
[INFO] [stdout]     |                              ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 406 |                         IntoIterator::into_iter([(nosplit_rating_seg, Choice::NosplitReposition)])
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                                 ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:414:84
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].into_iter().cloned());
[INFO] [stdout]     |                                                                                    ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].iter().cloned());
[INFO] [stdout]     |                                                                                    ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 414 |                     return ArrayVec::from_iter(IntoIterator::into_iter([(fixed_rating_seg, Choice::Fixed)]).cloned());
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^                                   ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/aligner.rs:488:58
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.into_iter()
[INFO] [stdout]     |                                                          ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.iter()
[INFO] [stdout]     |                                                          ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 488 |         let mut iterators: ArrayVec<[_; 4]> = IntoIterator::into_iter(timepoints)
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^          ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:72:41
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter([prev].into_iter().cloned()),
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter([prev].iter().cloned()),
[INFO] [stdout]    |                                         ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 72 |         0 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned()),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:73:41
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                         ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 73 |         1 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter())),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:76:44
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 76 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter()))
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]   --> src/internal/utils.rs:78:44
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2021
[INFO] [stdout]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                            ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter().rev()))
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/utils.rs:317:27
[INFO] [stdout]     |
[INFO] [stdout] 317 |                 test_segs.into_iter()
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 317 |                 test_segs.iter()
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 317 |                 IntoIterator::into_iter(test_segs)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stdout]    --> src/internal/utils.rs:340:27
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 test_segs.into_iter()
[INFO] [stdout]     |                           ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 test_segs.iter()
[INFO] [stdout]     |                           ^^^^
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 340 |                 IntoIterator::into_iter(test_segs)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 18 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 4.57s
[INFO] running `Command { std: "docker" "inspect" "e4411ba21680ba3d8dbde605c43e4b293999c77391f7f1f095457ec3b5deb066", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4411ba21680ba3d8dbde605c43e4b293999c77391f7f1f095457ec3b5deb066", kill_on_drop: false }`
[INFO] [stdout] e4411ba21680ba3d8dbde605c43e4b293999c77391f7f1f095457ec3b5deb066
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 051d0a170db662d0586f7d8e95e6d55bfced6e727809f204eb6e84084c2bf7d2
[INFO] running `Command { std: "docker" "start" "-a" "051d0a170db662d0586f7d8e95e6d55bfced6e727809f204eb6e84084c2bf7d2", kill_on_drop: false }`
[INFO] [stderr] warning: unknown lint: `collapsible_if`
[INFO] [stderr]   --> src/internal/utils.rs:70:13
[INFO] [stderr]    |
[INFO] [stderr] 70 |     #[allow(collapsible_if)]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `collapsible_if`
[INFO] [stderr]   --> src/internal/utils.rs:70:13
[INFO] [stderr]    |
[INFO] [stderr] 70 |     #[allow(collapsible_if)]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `collapsible_if`
[INFO] [stderr]    --> src/internal/utils.rs:215:17
[INFO] [stderr]     |
[INFO] [stderr] 215 |         #[allow(collapsible_if)]
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `if_same_then_else`
[INFO] [stderr]    --> src/internal/utils.rs:251:9
[INFO] [stderr]     |
[INFO] [stderr] 251 | #[allow(if_same_then_else)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> src/internal/rating_type.rs:27:40
[INFO] [stderr]    |
[INFO] [stderr] 27 | const RATING_PRECISION: RatingIntern = (1 << 32);
[INFO] [stderr]    |                                        ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/internal/aligner.rs:72:38
[INFO] [stderr]    |
[INFO] [stderr] 72 |     progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/internal/aligner.rs:110:46
[INFO] [stderr]     |
[INFO] [stderr] 110 |         mut progress_handler_opt: Option<Box<ProgressHandler>>,
[INFO] [stderr]     |                                              ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/lib.rs:66:34
[INFO] [stderr]    |
[INFO] [stderr] 66 |     progress_handler: Option<Box<ProgressHandler>>,
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^ help: use `dyn`: `dyn ProgressHandler`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]    --> src/internal/aligner.rs:398:30
[INFO] [stderr]     |
[INFO] [stderr] 398 | ...                   .into_iter()
[INFO] [stderr]     |                        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 398 |                             .iter()
[INFO] [stderr]     |                              ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 397 |                         IntoIterator::into_iter([(reposition_rating_seg, Choice::Reposition)])
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                             ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]    --> src/internal/aligner.rs:407:30
[INFO] [stderr]     |
[INFO] [stderr] 407 | ...                   .into_iter()
[INFO] [stderr]     |                        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 407 |                             .iter()
[INFO] [stderr]     |                              ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 406 |                         IntoIterator::into_iter([(nosplit_rating_seg, Choice::NosplitReposition)])
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^                                                 ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]    --> src/internal/aligner.rs:414:84
[INFO] [stderr]     |
[INFO] [stderr] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].into_iter().cloned());
[INFO] [stderr]     |                                                                                    ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 414 |                     return ArrayVec::from_iter([(fixed_rating_seg, Choice::Fixed)].iter().cloned());
[INFO] [stderr]     |                                                                                    ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 414 |                     return ArrayVec::from_iter(IntoIterator::into_iter([(fixed_rating_seg, Choice::Fixed)]).cloned());
[INFO] [stderr]     |                                                ^^^^^^^^^^^^^^^^^^^^^^^^                                   ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]    --> src/internal/aligner.rs:488:58
[INFO] [stderr]     |
[INFO] [stderr] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.into_iter()
[INFO] [stderr]     |                                                          ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 488 |         let mut iterators: ArrayVec<[_; 4]> = timepoints.iter()
[INFO] [stderr]     |                                                          ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 488 |         let mut iterators: ArrayVec<[_; 4]> = IntoIterator::into_iter(timepoints)
[INFO] [stderr]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^          ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]   --> src/internal/utils.rs:72:41
[INFO] [stderr]    |
[INFO] [stderr] 72 |         0 => ArrayVec::from_iter([prev].into_iter().cloned()),
[INFO] [stderr]    |                                         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 72 |         0 => ArrayVec::from_iter([prev].iter().cloned()),
[INFO] [stderr]    |                                         ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 72 |         0 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned()),
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]   --> src/internal/utils.rs:73:41
[INFO] [stderr]    |
[INFO] [stderr] 73 |         1 => ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter())),
[INFO] [stderr]    |                                         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 73 |         1 => ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter())),
[INFO] [stderr]    |                                         ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 73 |         1 => ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter())),
[INFO] [stderr]    |                                  ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]   --> src/internal/utils.rs:76:44
[INFO] [stderr]    |
[INFO] [stderr] 76 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter()))
[INFO] [stderr]    |                                            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 76 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter()))
[INFO] [stderr]    |                                            ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 76 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter()))
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]   --> src/internal/utils.rs:78:44
[INFO] [stderr]    |
[INFO] [stderr] 78 |                 ArrayVec::from_iter([prev].into_iter().cloned().chain(a.into_iter().rev()))
[INFO] [stderr]    |                                            ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this changes meaning in Rust 2021
[INFO] [stderr]    = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]    |
[INFO] [stderr] 78 |                 ArrayVec::from_iter([prev].iter().cloned().chain(a.into_iter().rev()))
[INFO] [stderr]    |                                            ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]    |
[INFO] [stderr] 78 |                 ArrayVec::from_iter(IntoIterator::into_iter([prev]).cloned().chain(a.into_iter().rev()))
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^      ^
[INFO] [stderr] 
[INFO] [stderr] warning: `aligner` (lib) generated 16 warnings
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]    --> src/internal/utils.rs:317:27
[INFO] [stderr]     |
[INFO] [stderr] 317 |                 test_segs.into_iter()
[INFO] [stderr]     |                           ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 317 |                 test_segs.iter()
[INFO] [stderr]     |                           ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 317 |                 IntoIterator::into_iter(test_segs)
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^         ^
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021.
[INFO] [stderr]    --> src/internal/utils.rs:340:27
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 test_segs.into_iter()
[INFO] [stderr]     |                           ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see issue #66145 <https://github.com/rust-lang/rust/issues/66145>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 test_segs.iter()
[INFO] [stderr]     |                           ^^^^
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 340 |                 IntoIterator::into_iter(test_segs)
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^         ^
[INFO] [stderr] 
[INFO] [stderr] warning: `aligner` (lib test) generated 18 warnings (16 duplicates)
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]   --> src/binary/errors.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | / error_chain! {
[INFO] [stderr] 23 | |     foreign_links {
[INFO] [stderr] 24 | |         Io(::std::io::Error);
[INFO] [stderr] 25 | |     }
[INFO] [stderr] ...  |
[INFO] [stderr] 57 | |     }
[INFO] [stderr] 58 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `error_chain_processed` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting
[INFO] [stderr]   --> src/binary/errors.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | / error_chain! {
[INFO] [stderr] 23 | |     foreign_links {
[INFO] [stderr] 24 | |         Io(::std::io::Error);
[INFO] [stderr] 25 | |     }
[INFO] [stderr] ...  |
[INFO] [stderr] 57 | |     }
[INFO] [stderr] 58 | | }
[INFO] [stderr]    | |_^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this warning originates in the macro `error_chain_processed` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `aligner` (bin "aligner" test) generated 2 warnings
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/aligner-9fcfaa32dc7d032d)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test internal::delta_compression::tests::combine_add ... ok
[INFO] [stdout] test internal::delta_compression::tests::truncate ... ok
[INFO] [stdout] test internal::aligner::tests::run_aligner ... ok
[INFO] [stdout] test internal::timespan_ops::tests::test_prepare_time_spans ... ok
[INFO] [stdout] test internal::utils::tests::test_get_best_segments3 ... ok
[INFO] [stdout] test internal::utils::tests::test_get_best_segments2 ... ok
[INFO] [stdout] test internal::aligner::tests::get_compressed_overlapping_ratings ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.74s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/aligner-703067110477e1cc)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests aligner
[INFO] [stderr] warning: unknown lint: `collapsible_if`
[INFO] [stderr]   --> /opt/rustwide/workdir/src/internal/utils.rs:70:13
[INFO] [stderr]    |
[INFO] [stderr] 70 |     #[allow(collapsible_if)]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unknown_lints)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `collapsible_if`
[INFO] [stderr]   --> /opt/rustwide/workdir/src/internal/utils.rs:70:13
[INFO] [stderr]    |
[INFO] [stderr] 70 |     #[allow(collapsible_if)]
[INFO] [stderr]    |             ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `collapsible_if`
[INFO] [stderr]    --> /opt/rustwide/workdir/src/internal/utils.rs:215:17
[INFO] [stderr]     |
[INFO] [stderr] 215 |         #[allow(collapsible_if)]
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unknown lint: `if_same_then_else`
[INFO] [stderr]    --> /opt/rustwide/workdir/src/internal/utils.rs:251:9
[INFO] [stderr]     |
[INFO] [stderr] 251 | #[allow(if_same_then_else)]
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around assigned value
[INFO] [stderr]   --> /opt/rustwide/workdir/src/internal/rating_type.rs:27:40
[INFO] [stderr]    |
[INFO] [stderr] 27 | const RATING_PRECISION: RatingIntern = (1 << 32);
[INFO] [stderr]    |                                        ^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 5 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test src/internal/time_types.rs - internal::time_types::TimePoint (line 142) ... ok
[INFO] [stdout] test src/internal/time_types.rs - internal::time_types::TimeSpan::fast_distance_to (line 315) ... ok
[INFO] [stdout] test src/internal/time_types.rs - internal::time_types::TimeSpan::new (line 230) ... ok
[INFO] [stdout] test src/internal/time_types.rs - internal::time_types::TimeSpan::new (line 216) ... ok
[INFO] [stdout] test src/internal/time_types.rs - internal::time_types::TimeSpan::new_safe (line 253) ... ok
[INFO] [stdout] test src/internal/time_types.rs - internal::time_types::TimeSpan::contains (line 306) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.09s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "051d0a170db662d0586f7d8e95e6d55bfced6e727809f204eb6e84084c2bf7d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "051d0a170db662d0586f7d8e95e6d55bfced6e727809f204eb6e84084c2bf7d2", kill_on_drop: false }`
[INFO] [stdout] 051d0a170db662d0586f7d8e95e6d55bfced6e727809f204eb6e84084c2bf7d2
