[INFO] fetching crate cancellation 0.1.0...
[INFO] testing cancellation-0.1.0 against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151
[INFO] extracting crate cancellation 0.1.0 into /workspace/builds/worker-0-tc1/source
[INFO] validating manifest of crates.io crate cancellation 0.1.0 on toolchain 1871252fc8bb672d40787e67404e6eaae7059369
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cancellation 0.1.0
[INFO] finished tweaking crates.io crate cancellation 0.1.0
[INFO] tweaked toml for crates.io crate cancellation 0.1.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 77aa630345b9d5bf6938e7dc297487a8c4b30a3f0021b6c1c365708c1c3fe197
[INFO] running `Command { std: "docker" "start" "-a" "77aa630345b9d5bf6938e7dc297487a8c4b30a3f0021b6c1c365708c1c3fe197", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "77aa630345b9d5bf6938e7dc297487a8c4b30a3f0021b6c1c365708c1c3fe197", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "77aa630345b9d5bf6938e7dc297487a8c4b30a3f0021b6c1c365708c1c3fe197", kill_on_drop: false }`
[INFO] [stdout] 77aa630345b9d5bf6938e7dc297487a8c4b30a3f0021b6c1c365708c1c3fe197
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4b602e8236ab0912dbcd876381b2af56e41613bc96327965769028d0fcb41e3c
[INFO] running `Command { std: "docker" "start" "-a" "4b602e8236ab0912dbcd876381b2af56e41613bc96327965769028d0fcb41e3c", kill_on_drop: false }`
[INFO] [stderr]    Compiling cancellation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> lib.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> lib.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> lib.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:161:25
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:330:37
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> lib.rs:380:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stdout] 381 | |             fn drop(&mut self) {
[INFO] [stdout] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stdout] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |             }
[INFO] [stdout] 387 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.36s
[INFO] running `Command { std: "docker" "inspect" "4b602e8236ab0912dbcd876381b2af56e41613bc96327965769028d0fcb41e3c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4b602e8236ab0912dbcd876381b2af56e41613bc96327965769028d0fcb41e3c", kill_on_drop: false }`
[INFO] [stdout] 4b602e8236ab0912dbcd876381b2af56e41613bc96327965769028d0fcb41e3c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6dcc9c09aa244becd1f97e3d03df884363638aec6a96c84f88b19e76a7b03ca7
[INFO] running `Command { std: "docker" "start" "-a" "6dcc9c09aa244becd1f97e3d03df884363638aec6a96c84f88b19e76a7b03ca7", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> lib.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cancellation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> lib.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> lib.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:161:25
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:330:37
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> lib.rs:380:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stdout] 381 | |             fn drop(&mut self) {
[INFO] [stdout] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stdout] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |             }
[INFO] [stdout] 387 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> lib.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> lib.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> lib.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:161:25
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:330:37
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> lib.rs:380:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stdout] 381 | |             fn drop(&mut self) {
[INFO] [stdout] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stdout] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |             }
[INFO] [stdout] 387 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.66s
[INFO] running `Command { std: "docker" "inspect" "6dcc9c09aa244becd1f97e3d03df884363638aec6a96c84f88b19e76a7b03ca7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6dcc9c09aa244becd1f97e3d03df884363638aec6a96c84f88b19e76a7b03ca7", kill_on_drop: false }`
[INFO] [stdout] 6dcc9c09aa244becd1f97e3d03df884363638aec6a96c84f88b19e76a7b03ca7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 9b7668441f52aa657b0bbb4a7bbfd7ca808b8ca488fefa1defb04f813d666828
[INFO] running `Command { std: "docker" "start" "-a" "9b7668441f52aa657b0bbb4a7bbfd7ca808b8ca488fefa1defb04f813d666828", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> lib.rs:97:38
[INFO] [stderr]    |
[INFO] [stderr] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> lib.rs:135:13
[INFO] [stderr]     |
[INFO] [stderr] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: replace the use of the deprecated constant
[INFO] [stderr]     |
[INFO] [stderr] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stderr]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> lib.rs:418:35
[INFO] [stderr]     |
[INFO] [stderr] 418 |         f.write_str(error::Error::description(self))
[INFO] [stderr]     |                                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> lib.rs:161:25
[INFO] [stderr]     |
[INFO] [stderr] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stderr]     |                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> lib.rs:330:37
[INFO] [stderr]     |
[INFO] [stderr] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stderr]     |                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]    --> lib.rs:380:9
[INFO] [stderr]     |
[INFO] [stderr] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stderr] 381 | |             fn drop(&mut self) {
[INFO] [stderr] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stderr] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stderr] ...   |
[INFO] [stderr] 386 | |             }
[INFO] [stderr] 387 | |         }
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stderr]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `cancellation` (lib) generated 6 warnings (run `cargo fix --lib -p cancellation` to apply 3 suggestions)
[INFO] [stderr] warning: `cancellation` (lib test) generated 6 warnings (6 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests lib.rs (/opt/rustwide/target/debug/deps/cancellation-fe70c044c77485b9)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test::cancel_in_recursive_run ... ok
[INFO] [stdout] test test::none_not_canceled ... ok
[INFO] [stdout] test test::cancel ... ok
[INFO] [stdout] test test::none_run ... ok
[INFO] [stdout] test test::on_cancel_is_not_called_after_end_of_run ... ok
[INFO] [stdout] test test::recursive_run_already_canceled ... ok
[INFO] [stdout] test test::run_already_canceled ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests cancellation
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test lib.rs - (line 58) ... ok
[INFO] [stdout] test lib.rs - (line 33) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.28s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "9b7668441f52aa657b0bbb4a7bbfd7ca808b8ca488fefa1defb04f813d666828", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9b7668441f52aa657b0bbb4a7bbfd7ca808b8ca488fefa1defb04f813d666828", kill_on_drop: false }`
[INFO] [stdout] 9b7668441f52aa657b0bbb4a7bbfd7ca808b8ca488fefa1defb04f813d666828
[INFO] testing cancellation-0.1.0 against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151
[INFO] extracting crate cancellation 0.1.0 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate cancellation 0.1.0 on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cancellation 0.1.0
[INFO] finished tweaking crates.io crate cancellation 0.1.0
[INFO] tweaked toml for crates.io crate cancellation 0.1.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1f0d4c0e524762be8e917d1f3b820bac7b9354efd264b4a20fb98e3b317e9808
[INFO] running `Command { std: "docker" "start" "-a" "1f0d4c0e524762be8e917d1f3b820bac7b9354efd264b4a20fb98e3b317e9808", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1f0d4c0e524762be8e917d1f3b820bac7b9354efd264b4a20fb98e3b317e9808", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1f0d4c0e524762be8e917d1f3b820bac7b9354efd264b4a20fb98e3b317e9808", kill_on_drop: false }`
[INFO] [stdout] 1f0d4c0e524762be8e917d1f3b820bac7b9354efd264b4a20fb98e3b317e9808
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 086c4e0dd1bf02fccb34a33b485e2d404a8eb61564dd6cdac667085d482021b5
[INFO] running `Command { std: "docker" "start" "-a" "086c4e0dd1bf02fccb34a33b485e2d404a8eb61564dd6cdac667085d482021b5", kill_on_drop: false }`
[INFO] [stderr]    Compiling cancellation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> lib.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> lib.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> lib.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:161:25
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:330:37
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> lib.rs:380:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stdout] 381 | |             fn drop(&mut self) {
[INFO] [stdout] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stdout] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |             }
[INFO] [stdout] 387 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.36s
[INFO] running `Command { std: "docker" "inspect" "086c4e0dd1bf02fccb34a33b485e2d404a8eb61564dd6cdac667085d482021b5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "086c4e0dd1bf02fccb34a33b485e2d404a8eb61564dd6cdac667085d482021b5", kill_on_drop: false }`
[INFO] [stdout] 086c4e0dd1bf02fccb34a33b485e2d404a8eb61564dd6cdac667085d482021b5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0fb464b85ff9f33cfad6712980e74932af10cff808565fca3677fb02b0c98c16
[INFO] running `Command { std: "docker" "start" "-a" "0fb464b85ff9f33cfad6712980e74932af10cff808565fca3677fb02b0c98c16", kill_on_drop: false }`
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> lib.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> lib.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> lib.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:161:25
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:330:37
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> lib.rs:380:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stdout] 381 | |             fn drop(&mut self) {
[INFO] [stdout] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stdout] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |             }
[INFO] [stdout] 387 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling cancellation v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]   --> lib.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stdout]    --> lib.rs:135:13
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated constant
[INFO] [stdout]     |
[INFO] [stdout] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stdout]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stdout]    --> lib.rs:418:35
[INFO] [stdout]     |
[INFO] [stdout] 418 |         f.write_str(error::Error::description(self))
[INFO] [stdout]     |                                   ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:161:25
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> lib.rs:330:37
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stdout]     |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stdout]    --> lib.rs:380:9
[INFO] [stdout]     |
[INFO] [stdout] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stdout] 381 | |             fn drop(&mut self) {
[INFO] [stdout] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stdout] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stdout] ...   |
[INFO] [stdout] 386 | |             }
[INFO] [stdout] 387 | |         }
[INFO] [stdout]     | |_________^
[INFO] [stdout]     |
[INFO] [stdout]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stdout]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stdout]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 6 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.61s
[INFO] running `Command { std: "docker" "inspect" "0fb464b85ff9f33cfad6712980e74932af10cff808565fca3677fb02b0c98c16", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0fb464b85ff9f33cfad6712980e74932af10cff808565fca3677fb02b0c98c16", kill_on_drop: false }`
[INFO] [stdout] 0fb464b85ff9f33cfad6712980e74932af10cff808565fca3677fb02b0c98c16
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5a3ef2205fdecf88b1239c8cd728b39a17ff64fd7e5e26ccf4dfe79ac995446a
[INFO] running `Command { std: "docker" "start" "-a" "5a3ef2205fdecf88b1239c8cd728b39a17ff64fd7e5e26ccf4dfe79ac995446a", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stderr]   --> lib.rs:97:38
[INFO] [stderr]    |
[INFO] [stderr] 97 | use std::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering};
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::sync::atomic::ATOMIC_USIZE_INIT`: the `new` function is now preferred
[INFO] [stderr]    --> lib.rs:135:13
[INFO] [stderr]     |
[INFO] [stderr] 135 |     status: ATOMIC_USIZE_INIT, //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: replace the use of the deprecated constant
[INFO] [stderr]     |
[INFO] [stderr] 135 |     status: AtomicUsize::new(0), //AtomicUsize::new(STATUS_CANNOT_BE_CANCELED),
[INFO] [stderr]     |             ~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::error::Error::description`: use the Display impl or to_string()
[INFO] [stderr]    --> lib.rs:418:35
[INFO] [stderr]     |
[INFO] [stderr] 418 |         f.write_str(error::Error::description(self))
[INFO] [stderr]     |                                   ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> lib.rs:161:25
[INFO] [stderr]     |
[INFO] [stderr] 161 |     on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 161 |     on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stderr]     |                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> lib.rs:330:37
[INFO] [stderr]     |
[INFO] [stderr] 330 |                 on_cancel: &'a mut (FnOnceOption + Send + 'a),
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is an object-safe trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 330 |                 on_cancel: &'a mut (dyn FnOnceOption + Send + 'a),
[INFO] [stderr]     |                                     +++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, they should be avoided as they go against expectation
[INFO] [stderr]    --> lib.rs:380:9
[INFO] [stderr]     |
[INFO] [stderr] 380 | /         impl <'a> Drop for Registration<'a> {
[INFO] [stderr] 381 | |             fn drop(&mut self) {
[INFO] [stderr] 382 | |                 let _mutex_guard = self.cancellation_token.registrations.as_ref().unwrap().lock().unwrap();
[INFO] [stderr] 383 | |                 if !self.link_to_this.is_null() {
[INFO] [stderr] ...   |
[INFO] [stderr] 386 | |             }
[INFO] [stderr] 387 | |         }
[INFO] [stderr]     | |_________^
[INFO] [stderr]     |
[INFO] [stderr]     = help: move this `impl` block outside the of the current method `run`
[INFO] [stderr]     = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type
[INFO] [stderr]     = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue <https://github.com/rust-lang/rust/issues/120363>
[INFO] [stderr]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `cancellation` (lib) generated 6 warnings (run `cargo fix --lib -p cancellation` to apply 3 suggestions)
[INFO] [stderr] warning: `cancellation` (lib test) generated 6 warnings (6 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests lib.rs (/opt/rustwide/target/debug/deps/cancellation-fe70c044c77485b9)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test test::cancel ... ok
[INFO] [stdout] test test::recursive_run_already_canceled ... ok
[INFO] [stdout] test test::run_already_canceled ... ok
[INFO] [stdout] test test::on_cancel_is_not_called_after_end_of_run ... ok
[INFO] [stdout] test test::none_not_canceled ... ok
[INFO] [stdout] test test::none_run ... ok
[INFO] [stdout] test test::cancel_in_recursive_run ... ok
[INFO] [stderr]    Doc-tests cancellation
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test lib.rs - (line 58) ... ok
[INFO] [stdout] test lib.rs - (line 33) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.44s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5a3ef2205fdecf88b1239c8cd728b39a17ff64fd7e5e26ccf4dfe79ac995446a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5a3ef2205fdecf88b1239c8cd728b39a17ff64fd7e5e26ccf4dfe79ac995446a", kill_on_drop: false }`
[INFO] [stdout] 5a3ef2205fdecf88b1239c8cd728b39a17ff64fd7e5e26ccf4dfe79ac995446a
