[INFO] fetching crate stijl 0.5.2... [INFO] testing stijl-0.5.2 against master#99e3aef02079e9c10583638520cd0c134dc3a01d for pr-85530 [INFO] extracting crate stijl 0.5.2 into /workspace/builds/worker-10/source [INFO] validating manifest of crates.io crate stijl 0.5.2 on toolchain 99e3aef02079e9c10583638520cd0c134dc3a01d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate stijl 0.5.2 [INFO] finished tweaking crates.io crate stijl 0.5.2 [INFO] tweaked toml for crates.io crate stijl 0.5.2 written to /workspace/builds/worker-10/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a7973cca3a66dd4f004b7ae180c3edb9622b6db4e5b4279d660bd8a76798bd79 [INFO] running `Command { std: "docker" "start" "-a" "a7973cca3a66dd4f004b7ae180c3edb9622b6db4e5b4279d660bd8a76798bd79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a7973cca3a66dd4f004b7ae180c3edb9622b6db4e5b4279d660bd8a76798bd79", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a7973cca3a66dd4f004b7ae180c3edb9622b6db4e5b4279d660bd8a76798bd79", kill_on_drop: false }` [INFO] [stdout] a7973cca3a66dd4f004b7ae180c3edb9622b6db4e5b4279d660bd8a76798bd79 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c6659b423d77f99a49f4867b4bc06b61dbf351211292192de6c352c1f9ed24b6 [INFO] running `Command { std: "docker" "start" "-a" "c6659b423d77f99a49f4867b4bc06b61dbf351211292192de6c352c1f9ed24b6", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.95 [INFO] [stderr] Compiling lazy_static v0.2.11 [INFO] [stderr] Compiling tinf v0.14.0 [INFO] [stderr] Compiling tvis_util v0.5.2 [INFO] [stderr] Compiling stijl v0.5.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/buf.rs:33:40 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn playback(&self, other: &mut Stream) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn Stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/term.rs:40:34 [INFO] [stdout] | [INFO] [stdout] 40 | fn lock<'a>(&'a self) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/term.rs:55:34 [INFO] [stdout] | [INFO] [stdout] 55 | fn lock<'a>(&'a self) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:142:41 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn stdout(do_style: DoStyle) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn stderr(do_style: DoStyle) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | impl<'a> Stream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:248:28 [INFO] [stdout] | [INFO] [stdout] 248 | impl<'a> CLIStream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:262:34 [INFO] [stdout] | [INFO] [stdout] 262 | fn lock<'a>(&'a self) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | impl Stream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:283:24 [INFO] [stdout] | [INFO] [stdout] 283 | impl CLIStream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:338:32 [INFO] [stdout] | [INFO] [stdout] 338 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #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/lib.rs:333:43 [INFO] [stdout] | [INFO] [stdout] 333 | ErrorImpl::Io(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [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/lib.rs:334:44 [INFO] [stdout] | [INFO] [stdout] 334 | ErrorImpl::Cap(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.65s [INFO] running `Command { std: "docker" "inspect" "c6659b423d77f99a49f4867b4bc06b61dbf351211292192de6c352c1f9ed24b6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c6659b423d77f99a49f4867b4bc06b61dbf351211292192de6c352c1f9ed24b6", kill_on_drop: false }` [INFO] [stdout] c6659b423d77f99a49f4867b4bc06b61dbf351211292192de6c352c1f9ed24b6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 16a1521f7344b3220b232c69d1b4aa1df9e0ccbf1f810812f172b992aa0ecaa9 [INFO] running `Command { std: "docker" "start" "-a" "16a1521f7344b3220b232c69d1b4aa1df9e0ccbf1f810812f172b992aa0ecaa9", kill_on_drop: false }` [INFO] [stderr] Compiling stijl v0.5.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/buf.rs:33:40 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn playback(&self, other: &mut Stream) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn Stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/term.rs:40:34 [INFO] [stdout] | [INFO] [stdout] 40 | fn lock<'a>(&'a self) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/term.rs:55:34 [INFO] [stdout] | [INFO] [stdout] 55 | fn lock<'a>(&'a self) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:142:41 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn stdout(do_style: DoStyle) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn stderr(do_style: DoStyle) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | impl<'a> Stream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:248:28 [INFO] [stdout] | [INFO] [stdout] 248 | impl<'a> CLIStream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:262:34 [INFO] [stdout] | [INFO] [stdout] 262 | fn lock<'a>(&'a self) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | impl Stream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:283:24 [INFO] [stdout] | [INFO] [stdout] 283 | impl CLIStream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:338:32 [INFO] [stdout] | [INFO] [stdout] 338 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #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/lib.rs:333:43 [INFO] [stdout] | [INFO] [stdout] 333 | ErrorImpl::Io(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [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/lib.rs:334:44 [INFO] [stdout] | [INFO] [stdout] 334 | ErrorImpl::Cap(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/buf.rs:33:40 [INFO] [stdout] | [INFO] [stdout] 33 | pub fn playback(&self, other: &mut Stream) -> Result<()> { [INFO] [stdout] | ^^^^^^ help: use `dyn`: `dyn Stream` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/term.rs:40:34 [INFO] [stdout] | [INFO] [stdout] 40 | fn lock<'a>(&'a self) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/term.rs:55:34 [INFO] [stdout] | [INFO] [stdout] 55 | fn lock<'a>(&'a self) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:142:41 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn stdout(do_style: DoStyle) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:151:41 [INFO] [stdout] | [INFO] [stdout] 151 | pub fn stderr(do_style: DoStyle) -> Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:230:25 [INFO] [stdout] | [INFO] [stdout] 230 | impl<'a> Stream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:248:28 [INFO] [stdout] | [INFO] [stdout] 248 | impl<'a> CLIStream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:262:34 [INFO] [stdout] | [INFO] [stdout] 262 | fn lock<'a>(&'a self) -> Box; [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:265:21 [INFO] [stdout] | [INFO] [stdout] 265 | impl Stream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:283:24 [INFO] [stdout] | [INFO] [stdout] 283 | impl CLIStream for Box { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #80165 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:338:32 [INFO] [stdout] | [INFO] [stdout] 338 | fn cause(&self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stdout] = note: for more information, see issue #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/lib.rs:333:43 [INFO] [stdout] | [INFO] [stdout] 333 | ErrorImpl::Io(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [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/lib.rs:334:44 [INFO] [stdout] | [INFO] [stdout] 334 | ErrorImpl::Cap(ref err) => err.description(), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 13 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.91s [INFO] running `Command { std: "docker" "inspect" "16a1521f7344b3220b232c69d1b4aa1df9e0ccbf1f810812f172b992aa0ecaa9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "16a1521f7344b3220b232c69d1b4aa1df9e0ccbf1f810812f172b992aa0ecaa9", kill_on_drop: false }` [INFO] [stdout] 16a1521f7344b3220b232c69d1b4aa1df9e0ccbf1f810812f172b992aa0ecaa9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-10/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] c9bce3554c51908c10c7795c204b6ecf623a56e38b02bcec48496942bb4a3b65 [INFO] running `Command { std: "docker" "start" "-a" "c9bce3554c51908c10c7795c204b6ecf623a56e38b02bcec48496942bb4a3b65", kill_on_drop: false }` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/buf.rs:33:40 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn playback(&self, other: &mut Stream) -> Result<()> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stream` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/term.rs:40:34 [INFO] [stderr] | [INFO] [stderr] 40 | fn lock<'a>(&'a self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/term.rs:55:34 [INFO] [stderr] | [INFO] [stderr] 55 | fn lock<'a>(&'a self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:142:41 [INFO] [stderr] | [INFO] [stderr] 142 | pub fn stdout(do_style: DoStyle) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:151:41 [INFO] [stderr] | [INFO] [stderr] 151 | pub fn stderr(do_style: DoStyle) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:230:25 [INFO] [stderr] | [INFO] [stderr] 230 | impl<'a> Stream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:248:28 [INFO] [stderr] | [INFO] [stderr] 248 | impl<'a> CLIStream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:262:34 [INFO] [stderr] | [INFO] [stderr] 262 | fn lock<'a>(&'a self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:265:21 [INFO] [stderr] | [INFO] [stderr] 265 | impl Stream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:283:24 [INFO] [stderr] | [INFO] [stderr] 283 | impl CLIStream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:338:32 [INFO] [stderr] | [INFO] [stderr] 338 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/lib.rs:333:43 [INFO] [stderr] | [INFO] [stderr] 333 | ErrorImpl::Io(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/lib.rs:334:44 [INFO] [stderr] | [INFO] [stderr] 334 | ErrorImpl::Cap(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 13 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/buf.rs:33:40 [INFO] [stderr] | [INFO] [stderr] 33 | pub fn playback(&self, other: &mut Stream) -> Result<()> { [INFO] [stderr] | ^^^^^^ help: use `dyn`: `dyn Stream` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/term.rs:40:34 [INFO] [stderr] | [INFO] [stderr] 40 | fn lock<'a>(&'a self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/term.rs:55:34 [INFO] [stderr] | [INFO] [stderr] 55 | fn lock<'a>(&'a self) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:142:41 [INFO] [stderr] | [INFO] [stderr] 142 | pub fn stdout(do_style: DoStyle) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:151:41 [INFO] [stderr] | [INFO] [stderr] 151 | pub fn stderr(do_style: DoStyle) -> Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:230:25 [INFO] [stderr] | [INFO] [stderr] 230 | impl<'a> Stream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:248:28 [INFO] [stderr] | [INFO] [stderr] 248 | impl<'a> CLIStream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:262:34 [INFO] [stderr] | [INFO] [stderr] 262 | fn lock<'a>(&'a self) -> Box; [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn CLIStream + 'a` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:265:21 [INFO] [stderr] | [INFO] [stderr] 265 | impl Stream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:283:24 [INFO] [stderr] | [INFO] [stderr] 283 | impl CLIStream for Box { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: use `dyn`: `dyn LockableStream` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/lib.rs:338:32 [INFO] [stderr] | [INFO] [stderr] 338 | fn cause(&self) -> Option<&error::Error> { [INFO] [stderr] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition! [INFO] [stderr] = note: for more information, see issue #80165 [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/lib.rs:333:43 [INFO] [stderr] | [INFO] [stderr] 333 | ErrorImpl::Io(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stderr] --> src/lib.rs:334:44 [INFO] [stderr] | [INFO] [stderr] 334 | ErrorImpl::Cap(ref err) => err.description(), [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 13 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.03s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/stijl-9f74070aad38bf00) [INFO] [stdout] running 0 tests [INFO] [stderr] Doc-tests stijl [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] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test src/lib.rs - (line 40) ... ok [INFO] [stdout] test src/lib.rs - (line 13) ... ok [INFO] [stdout] test src/lib.rs - (line 81) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.81s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "c9bce3554c51908c10c7795c204b6ecf623a56e38b02bcec48496942bb4a3b65", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c9bce3554c51908c10c7795c204b6ecf623a56e38b02bcec48496942bb4a3b65", kill_on_drop: false }` [INFO] [stdout] c9bce3554c51908c10c7795c204b6ecf623a56e38b02bcec48496942bb4a3b65