[INFO] fetching crate framed 0.4.3...
[INFO] testing framed-0.4.3 against 1.90.0 for beta-1.91-3
[INFO] extracting crate framed 0.4.3 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate framed 0.4.3
[INFO] finished tweaking crates.io crate framed 0.4.3
[INFO] tweaked toml for crates.io crate framed 0.4.3 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate framed 0.4.3 on toolchain 1.90.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]      Locking 13 packages to latest compatible versions
[INFO] [stderr]       Adding cobs v0.1.4 (available: v0.4.0)
[INFO] [stderr]       Adding crc16 v0.3.4 (available: v0.4.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "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]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded cobs v0.1.4
[INFO] [stderr]   Downloaded crc16 v0.3.4
[INFO] [stderr]   Downloaded ref_slice v1.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8357786718f4a93830e4f8c37742320ca959e614e4275fb13d0c4daeff2795f1
[INFO] running `Command { std: "docker" "start" "-a" "8357786718f4a93830e4f8c37742320ca959e614e4275fb13d0c4daeff2795f1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8357786718f4a93830e4f8c37742320ca959e614e4275fb13d0c4daeff2795f1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8357786718f4a93830e4f8c37742320ca959e614e4275fb13d0c4daeff2795f1", kill_on_drop: false }`
[INFO] [stdout] 8357786718f4a93830e4f8c37742320ca959e614e4275fb13d0c4daeff2795f1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 19a03bcb0c0da88fdf501bed03d083e0be93a00ea9fc37796d5ecc817b31c2a7
[INFO] running `Command { std: "docker" "start" "-a" "19a03bcb0c0da88fdf501bed03d083e0be93a00ea9fc37796d5ecc817b31c2a7", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crc16 v0.3.4
[INFO] [stderr]    Compiling encode_unicode v0.3.6
[INFO] [stderr]    Compiling ref_slice v1.2.1
[INFO] [stderr]    Compiling cobs v0.1.4
[INFO] [stderr]    Compiling ssmarshal v1.0.0
[INFO] [stderr]    Compiling framed v0.4.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stdout]   --> src/bytes.rs:90:16
[INFO] [stdout]    |
[INFO] [stdout] 90 | use ref_slice::ref_slice_mut;
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stdout]    --> src/bytes.rs:345:30
[INFO] [stdout]     |
[INFO] [stdout] 345 |             let res = r.read(ref_slice_mut(&mut b));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:339:59
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut Read)
[INFO] [stdout]     |                                                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut dyn Read)
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.54s
[INFO] running `Command { std: "docker" "inspect" "19a03bcb0c0da88fdf501bed03d083e0be93a00ea9fc37796d5ecc817b31c2a7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "19a03bcb0c0da88fdf501bed03d083e0be93a00ea9fc37796d5ecc817b31c2a7", kill_on_drop: false }`
[INFO] [stdout] 19a03bcb0c0da88fdf501bed03d083e0be93a00ea9fc37796d5ecc817b31c2a7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 25c1ba70afc591cda8df4b22bd9d78bf8962cd6cd64900c9a7084c21c37686ba
[INFO] running `Command { std: "docker" "start" "-a" "25c1ba70afc591cda8df4b22bd9d78bf8962cd6cd64900c9a7084c21c37686ba", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stdout] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stdout]   --> src/bytes.rs:90:16
[INFO] [stdout]    |
[INFO] [stdout] 90 | use ref_slice::ref_slice_mut;
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/lib.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 | #![deny(warnings)]
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stdout]    --> src/bytes.rs:345:30
[INFO] [stdout]     |
[INFO] [stdout] 345 |             let res = r.read(ref_slice_mut(&mut b));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:339:59
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut Read)
[INFO] [stdout]     |                                                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut dyn Read)
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling framed v0.4.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/bytes.rs:547:50
[INFO] [stdout]     |
[INFO] [stdout] 547 |         let mut encoded_buf = [0u8; PAYLOAD_LEN];;
[INFO] [stdout]     |                                                  ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:85:9
[INFO] [stdout]     |
[INFO] [stdout]  85 | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stdout]   --> src/bytes.rs:90:16
[INFO] [stdout]    |
[INFO] [stdout] 90 | use ref_slice::ref_slice_mut;
[INFO] [stdout]    |                ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stdout]    --> src/bytes.rs:345:30
[INFO] [stdout]     |
[INFO] [stdout] 345 |             let res = r.read(ref_slice_mut(&mut b));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:339:59
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut Read)
[INFO] [stdout]     |                                                           ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut dyn Read)
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:813:30
[INFO] [stdout]     |
[INFO] [stdout] 813 |     fn pair() -> (Sender<Box<Write>>, Receiver<Box<Read>>) {
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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] 813 |     fn pair() -> (Sender<Box<dyn Write>>, Receiver<Box<Read>>) {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:813:52
[INFO] [stdout]     |
[INFO] [stdout] 813 |     fn pair() -> (Sender<Box<Write>>, Receiver<Box<Read>>) {
[INFO] [stdout]     |                                                    ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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] 813 |     fn pair() -> (Sender<Box<Write>>, Receiver<Box<dyn Read>>) {
[INFO] [stdout]     |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/typed.rs:491:34
[INFO] [stdout]     |
[INFO] [stdout] 491 |         fn pair() -> (Sender<Box<Write>, Test>, Receiver<Box<Read>, Test>) {
[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/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] 491 |         fn pair() -> (Sender<Box<dyn Write>, Test>, Receiver<Box<Read>, Test>) {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/typed.rs:491:62
[INFO] [stdout]     |
[INFO] [stdout] 491 |         fn pair() -> (Sender<Box<Write>, Test>, Receiver<Box<Read>, Test>) {
[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/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] 491 |         fn pair() -> (Sender<Box<Write>, Test>, Receiver<Box<dyn Read>, Test>) {
[INFO] [stdout]     |                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:816:69
[INFO] [stdout]     |
[INFO] [stdout] 816 |         let tx = c.clone().to_sender(Box::new(chan.writer()) as Box<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/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] 816 |         let tx = c.clone().to_sender(Box::new(chan.writer()) as Box<dyn Write>);
[INFO] [stdout]     |                                                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/bytes.rs:817:71
[INFO] [stdout]     |
[INFO] [stdout] 817 |         let rx = c.clone().to_receiver(Box::new(chan.reader()) as Box<Read>);
[INFO] [stdout]     |                                                                       ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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] 817 |         let rx = c.clone().to_receiver(Box::new(chan.reader()) as Box<dyn Read>);
[INFO] [stdout]     |                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/typed.rs:495:68
[INFO] [stdout]     |
[INFO] [stdout] 495 |                          .to_sender(Box::new(chan.writer()) as Box<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/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] 495 |                          .to_sender(Box::new(chan.writer()) as Box<dyn Write>);
[INFO] [stdout]     |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/typed.rs:497:70
[INFO] [stdout]     |
[INFO] [stdout] 497 |                          .to_receiver(Box::new(chan.reader()) as Box<Read>);
[INFO] [stdout]     |                                                                      ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/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] 497 |                          .to_receiver(Box::new(chan.reader()) as Box<dyn Read>);
[INFO] [stdout]     |                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 7.58s
[INFO] running `Command { std: "docker" "inspect" "25c1ba70afc591cda8df4b22bd9d78bf8962cd6cd64900c9a7084c21c37686ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25c1ba70afc591cda8df4b22bd9d78bf8962cd6cd64900c9a7084c21c37686ba", kill_on_drop: false }`
[INFO] [stdout] 25c1ba70afc591cda8df4b22bd9d78bf8962cd6cd64900c9a7084c21c37686ba
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] cc5c569e9771580e2d8dc695dc782bf05fe51c7a4bcd06f641ee2c78e7d4fb89
[INFO] running `Command { std: "docker" "start" "-a" "cc5c569e9771580e2d8dc695dc782bf05fe51c7a4bcd06f641ee2c78e7d4fb89", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stderr]   --> src/bytes.rs:90:16
[INFO] [stderr]    |
[INFO] [stderr] 90 | use ref_slice::ref_slice_mut;
[INFO] [stderr]    |                ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/lib.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 | #![deny(warnings)]
[INFO] [stderr]    |         ^^^^^^^^
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stderr]    --> src/bytes.rs:345:30
[INFO] [stderr]     |
[INFO] [stderr] 345 |             let res = r.read(ref_slice_mut(&mut b));
[INFO] [stderr]     |                              ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/bytes.rs:339:59
[INFO] [stderr]     |
[INFO] [stderr] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut Read)
[INFO] [stderr]     |                                                           ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 339 |     pub fn decode_from_reader<R: Read>(&mut self, r: &mut dyn Read)
[INFO] [stderr]     |                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: `framed` (lib) generated 3 warnings (run `cargo fix --lib -p framed` to apply 1 suggestion)
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/bytes.rs:547:50
[INFO] [stderr]     |
[INFO] [stderr] 547 |         let mut encoded_buf = [0u8; PAYLOAD_LEN];;
[INFO] [stderr]     |                                                  ^ help: remove this semicolon
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:85:9
[INFO] [stderr]     |
[INFO] [stderr]  85 | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `ref_slice::ref_slice_mut`: Similar method was added to std and stabilized in rust 1.28.0. Use `core::slice::from_mut` instead.
[INFO] [stderr]   --> src/bytes.rs:90:16
[INFO] [stderr]    |
[INFO] [stderr] 90 | use ref_slice::ref_slice_mut;
[INFO] [stderr]    |                ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/bytes.rs:813:30
[INFO] [stderr]     |
[INFO] [stderr] 813 |     fn pair() -> (Sender<Box<Write>>, Receiver<Box<Read>>) {
[INFO] [stderr]     |                              ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 813 |     fn pair() -> (Sender<Box<dyn Write>>, Receiver<Box<Read>>) {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/bytes.rs:813:52
[INFO] [stderr]     |
[INFO] [stderr] 813 |     fn pair() -> (Sender<Box<Write>>, Receiver<Box<Read>>) {
[INFO] [stderr]     |                                                    ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 813 |     fn pair() -> (Sender<Box<Write>>, Receiver<Box<dyn Read>>) {
[INFO] [stderr]     |                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/typed.rs:491:34
[INFO] [stderr]     |
[INFO] [stderr] 491 |         fn pair() -> (Sender<Box<Write>, Test>, Receiver<Box<Read>, Test>) {
[INFO] [stderr]     |                                  ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 491 |         fn pair() -> (Sender<Box<dyn Write>, Test>, Receiver<Box<Read>, Test>) {
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/typed.rs:491:62
[INFO] [stderr]     |
[INFO] [stderr] 491 |         fn pair() -> (Sender<Box<Write>, Test>, Receiver<Box<Read>, Test>) {
[INFO] [stderr]     |                                                              ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 491 |         fn pair() -> (Sender<Box<Write>, Test>, Receiver<Box<dyn Read>, Test>) {
[INFO] [stderr]     |                                                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/bytes.rs:816:69
[INFO] [stderr]     |
[INFO] [stderr] 816 |         let tx = c.clone().to_sender(Box::new(chan.writer()) as Box<Write>);
[INFO] [stderr]     |                                                                     ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 816 |         let tx = c.clone().to_sender(Box::new(chan.writer()) as Box<dyn Write>);
[INFO] [stderr]     |                                                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/bytes.rs:817:71
[INFO] [stderr]     |
[INFO] [stderr] 817 |         let rx = c.clone().to_receiver(Box::new(chan.reader()) as Box<Read>);
[INFO] [stderr]     |                                                                       ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 817 |         let rx = c.clone().to_receiver(Box::new(chan.reader()) as Box<dyn Read>);
[INFO] [stderr]     |                                                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/typed.rs:495:68
[INFO] [stderr]     |
[INFO] [stderr] 495 |                          .to_sender(Box::new(chan.writer()) as Box<Write>);
[INFO] [stderr]     |                                                                    ^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 495 |                          .to_sender(Box::new(chan.writer()) as Box<dyn Write>);
[INFO] [stderr]     |                                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/typed.rs:497:70
[INFO] [stderr]     |
[INFO] [stderr] 497 |                          .to_receiver(Box::new(chan.reader()) as Box<Read>);
[INFO] [stderr]     |                                                                      ^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 497 |                          .to_receiver(Box::new(chan.reader()) as Box<dyn Read>);
[INFO] [stderr]     |                                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: `framed` (lib test) generated 12 warnings (2 duplicates) (run `cargo fix --lib -p framed --tests` to apply 8 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/framed-ef1f9f97ccc7a1b3)
[INFO] [stdout] 
[INFO] [stdout] running 29 tests
[INFO] [stdout] test bytes::rw_tests::empty_input ... ok
[INFO] [stdout] test bytes::rw_tests::two_frames_sequentially ... ok
[INFO] [stdout] test bytes::rw_tests::two_frames_at_once ... ok
[INFO] [stdout] test bytes::rw_tests::one_frame ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_bad_checksum ... ok
[INFO] [stdout] test bytes::rw_tests::partial_input ... ok
[INFO] [stdout] test bytes::tests::decode_to_box_ok ... ok
[INFO] [stdout] test bytes::tests::decode_from_reader_ok ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_encoded_empty ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_no_end_symbol ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_missing_bytes ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_ok_dynamic_dest ... ok
[INFO] [stdout] test bytes::tests::encode_to_slice_ok_dynamic_dest ... ok
[INFO] [stdout] test bytes::tests::encode_to_writer_ok ... ok
[INFO] [stdout] test bytes::tests::max_decoded_len_ok ... ok
[INFO] [stdout] test bytes::tests::max_encoded_len_ok ... ok
[INFO] [stdout] test bytes::tests::roundtrip_empty_payload ... ok
[INFO] [stdout] test bytes::tests::roundtrip_default_config ... ok
[INFO] [stdout] test bytes::tests::roundtrip_no_checksum ... ok
[INFO] [stdout] test typed::tests::rw_tests::empty_input ... ok
[INFO] [stdout] test channel::tests::ok ... ok
[INFO] [stdout] test typed::tests::len_tests::encoded_len ... ok
[INFO] [stdout] test typed::tests::len_tests::serialize_buf_len ... ok
[INFO] [stdout] test typed::tests::rw_tests::one ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_encoded_too_short ... ok
[INFO] [stdout] test bytes::tests::decode_to_slice_dest_too_small - should panic ... ok
[INFO] [stdout] test bytes::tests::encode_to_slice_dest_too_small - should panic ... ok
[INFO] [stdout] test typed::tests::slice_tests::bad_ser_buf_len - should panic ... ok
[INFO] [stdout] test typed::tests::slice_tests::bad_dest_len - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests framed
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test src/lib.rs - (line 57) ... ignored
[INFO] [stdout] test src/bytes.rs - bytes (line 41) ... FAILED
[INFO] [stdout] test src/typed.rs - typed (line 60) ... FAILED
[INFO] [stdout] test src/bytes.rs - bytes (line 12) ... ok
[INFO] [stdout] test src/typed.rs - typed (line 20) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/bytes.rs - bytes (line 41) stdout ----
[INFO] [stdout] error[E0015]: cannot call non-const function `framed::bytes::max_encoded_len` in constants
[INFO] [stdout]   --> src/bytes.rs:58:30
[INFO] [stdout]    |
[INFO] [stdout] 20 | const MAX_FRAME_LEN: usize = max_encoded_len(MAX_PAYLOAD_LEN);
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0015`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] ---- src/typed.rs - typed (line 60) stdout ----
[INFO] [stdout] error[E0015]: cannot call non-const function `framed::typed::max_serialize_buf_len::<Test>` in constants
[INFO] [stdout]   --> src/typed.rs:79:29
[INFO] [stdout]    |
[INFO] [stdout] 20 |     let mut ser_buf = [0u8; max_serialize_buf_len::<Test>()];
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const function `framed::typed::max_encoded_len::<Test>` in constants
[INFO] [stdout]   --> src/typed.rs:80:33
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let mut encoded_buf = [0u8; max_encoded_len::<Test>()];
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] error[E0015]: cannot call non-const function `framed::typed::max_serialize_buf_len::<Test>` in constants
[INFO] [stdout]   --> src/typed.rs:90:28
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let mut de_buf = [0u8; max_serialize_buf_len::<Test>()];
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: calls in constants are limited to constant functions, tuple structs and tuple variants
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0015`.
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/bytes.rs - bytes (line 41)
[INFO] [stdout]     src/typed.rs - typed (line 60)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 2 passed; 2 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.51s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "cc5c569e9771580e2d8dc695dc782bf05fe51c7a4bcd06f641ee2c78e7d4fb89", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc5c569e9771580e2d8dc695dc782bf05fe51c7a4bcd06f641ee2c78e7d4fb89", kill_on_drop: false }`
[INFO] [stdout] cc5c569e9771580e2d8dc695dc782bf05fe51c7a4bcd06f641ee2c78e7d4fb89
