[INFO] fetching crate syncbox 0.2.4...
[INFO] testing syncbox-0.2.4 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate syncbox 0.2.4 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate syncbox 0.2.4
[INFO] removed 1 missing tests
[INFO] finished tweaking crates.io crate syncbox 0.2.4
[INFO] tweaked toml for crates.io crate syncbox 0.2.4 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate syncbox 0.2.4 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 19 packages to highest compatible versions
[INFO] [stderr]       Adding env_logger v0.3.5 (available: v0.11.11)
[INFO] [stderr]       Adding log v0.3.9 (available: v0.4.34)
[INFO] [stderr]       Adding time v0.1.45 (available: v0.3.55)
[INFO] [stderr]       Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | homepage = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 | repository = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |              ---------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `syncbox` (manifest) generated 2 warnings
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e
[INFO] running `Command { std: "docker" "start" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | homepage = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 | repository = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |              ---------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `syncbox` (manifest) generated 2 warnings
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling syncbox v0.2.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/linked_queue.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::u32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/linked_queue.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stdout]   |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/linked_queue.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 |         LinkedQueue::with_capacity(usize::MAX)
[INFO] [stdout]    |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linked_queue.rs:163:31
[INFO] [stdout]     |
[INFO] [stdout] 163 |         self.offer_ms(e, u32::MAX)
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linked_queue.rs:225:27
[INFO] [stdout]     |
[INFO] [stdout] 225 |         self.poll_ms(u32::MAX)
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/thread_pool.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{thread, usize};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/thread_pool.rs:21:71
[INFO] [stdout]    |
[INFO] [stdout] 21 |         ThreadPool::new(size, size, LinkedQueue::with_capacity(usize::MAX))
[INFO] [stdout]    |                                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/thread_pool.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Delayed(Box<BoxedTask>, Duration),
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Delayed(Box<dyn BoxedTask>, Duration),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/run.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Task for Box<TaskBox>{
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Task for Box<dyn TaskBox>{
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:121:22
[INFO] [stdout]     |
[INFO] [stdout] 121 |         AtomicUsize::compare_and_swap(self, old, new, order)
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:156:20
[INFO] [stdout]     |
[INFO] [stdout] 156 |             self.v.compare_and_swap(old as usize, new as usize, order) as u64
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<isize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |             self.v.compare_and_swap(old as isize, new as isize, order) as i64
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/array_queue.rs:118:52
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 let enqueue_pos = self.enqueue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/array_queue.rs:145:52
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 let dequeue_pos = self.dequeue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]   --> src/delay_queue.rs:99:40
[INFO] [stdout]    |
[INFO] [stdout] 99 |             queue = self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/delay_queue.rs:184:40
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/linked_queue.rs:188:38
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 last = self.not_full.wait_timeout_ms(last, dur)
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/linked_queue.rs:251:39
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 head = self.not_empty.wait_timeout_ms(head, dur)
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:676:34
[INFO] [stdout]     |
[INFO] [stdout] 676 |         let actual = self.atomic.compare_and_swap(expect.as_usize(), val.as_usize(), order);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:682:21
[INFO] [stdout]     |
[INFO] [stdout] 682 |         self.atomic.compare_and_swap(num, num + (1 << LIFECYCLE_BITS), order) == num
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:691:21
[INFO] [stdout]     |
[INFO] [stdout] 691 |         self.atomic.compare_and_swap(num, num - (1 << LIFECYCLE_BITS), order) == num
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Queue`
[INFO] [stdout]  --> src/thread_pool.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {LinkedQueue, Queue, SyncQueue, Run, Task, Delayed, DelayQueue};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_queue.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 | fn dequeue<T: Send>(mut head: &mut MutexGuard<NodePtr<T>>) -> T {
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_queue.rs:323:36
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn enqueue<T: Send>(node: Node<T>, mut last: &mut MutexGuard<NodePtr<T>>) {
[INFO] [stdout]     |                                    ----^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.63s
[INFO] running `Command { std: "docker" "inspect" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | homepage = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 | repository = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |              ---------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `syncbox` (manifest) generated 2 warnings
[INFO] [stderr]    Compiling winapi-build v0.1.1
[INFO] [stderr]    Compiling winapi v0.2.8
[INFO] [stderr]    Compiling memchr v0.1.11
[INFO] [stderr]    Compiling regex-syntax v0.3.9
[INFO] [stderr]    Compiling utf8-ranges v0.1.3
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/linked_queue.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]  --> src/lib.rs:4:9
[INFO] [stdout]   |
[INFO] [stdout] 4 | #![deny(warnings)]
[INFO] [stdout]   |         ^^^^^^^^
[INFO] [stdout]   = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::u32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/linked_queue.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stdout]   |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/linked_queue.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 |         LinkedQueue::with_capacity(usize::MAX)
[INFO] [stdout]    |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linked_queue.rs:163:31
[INFO] [stdout]     |
[INFO] [stdout] 163 |         self.offer_ms(e, u32::MAX)
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linked_queue.rs:225:27
[INFO] [stdout]     |
[INFO] [stdout] 225 |         self.poll_ms(u32::MAX)
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/thread_pool.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{thread, usize};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/thread_pool.rs:21:71
[INFO] [stdout]    |
[INFO] [stdout] 21 |         ThreadPool::new(size, size, LinkedQueue::with_capacity(usize::MAX))
[INFO] [stdout]    |                                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/thread_pool.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Delayed(Box<BoxedTask>, Duration),
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Delayed(Box<dyn BoxedTask>, Duration),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/run.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Task for Box<TaskBox>{
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Task for Box<dyn TaskBox>{
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:121:22
[INFO] [stdout]     |
[INFO] [stdout] 121 |         AtomicUsize::compare_and_swap(self, old, new, order)
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:156:20
[INFO] [stdout]     |
[INFO] [stdout] 156 |             self.v.compare_and_swap(old as usize, new as usize, order) as u64
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<isize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |             self.v.compare_and_swap(old as isize, new as isize, order) as i64
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/array_queue.rs:118:52
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 let enqueue_pos = self.enqueue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/array_queue.rs:145:52
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 let dequeue_pos = self.dequeue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]   --> src/delay_queue.rs:99:40
[INFO] [stdout]    |
[INFO] [stdout] 99 |             queue = self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/delay_queue.rs:184:40
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/linked_queue.rs:188:38
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 last = self.not_full.wait_timeout_ms(last, dur)
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/linked_queue.rs:251:39
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 head = self.not_empty.wait_timeout_ms(head, dur)
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:676:34
[INFO] [stdout]     |
[INFO] [stdout] 676 |         let actual = self.atomic.compare_and_swap(expect.as_usize(), val.as_usize(), order);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:682:21
[INFO] [stdout]     |
[INFO] [stdout] 682 |         self.atomic.compare_and_swap(num, num + (1 << LIFECYCLE_BITS), order) == num
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:691:21
[INFO] [stdout]     |
[INFO] [stdout] 691 |         self.atomic.compare_and_swap(num, num - (1 << LIFECYCLE_BITS), order) == num
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Queue`
[INFO] [stdout]  --> src/thread_pool.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {LinkedQueue, Queue, SyncQueue, Run, Task, Delayed, DelayQueue};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_queue.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 | fn dequeue<T: Send>(mut head: &mut MutexGuard<NodePtr<T>>) -> T {
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_queue.rs:323:36
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn enqueue<T: Send>(node: Node<T>, mut last: &mut MutexGuard<NodePtr<T>>) {
[INFO] [stdout]     |                                    ----^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling aho-corasick v0.5.3
[INFO] [stderr]    Compiling kernel32-sys v0.2.2
[INFO] [stderr]    Compiling thread-id v2.0.0
[INFO] [stderr]    Compiling thread_local v0.2.7
[INFO] [stderr]    Compiling regex v0.1.80
[INFO] [stderr]    Compiling env_logger v0.3.5
[INFO] [stderr]    Compiling syncbox v0.2.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/array_queue.rs:178:18
[INFO] [stdout]     |
[INFO] [stdout] 178 |         for _ in (0..nthreads) {
[INFO] [stdout]     |                  ^           ^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/lib.rs:4:9
[INFO] [stdout]     |
[INFO] [stdout]   4 | #![deny(warnings)]
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 178 -         for _ in (0..nthreads) {
[INFO] [stdout] 178 +         for _ in 0..nthreads {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/array_queue.rs:183:26
[INFO] [stdout]     |
[INFO] [stdout] 183 |                 for i in (0..nmsgs) {
[INFO] [stdout]     |                          ^        ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 183 -                 for i in (0..nmsgs) {
[INFO] [stdout] 183 +                 for i in 0..nmsgs {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/array_queue.rs:191:18
[INFO] [stdout]     |
[INFO] [stdout] 191 |         for _ in (0..nthreads) {
[INFO] [stdout]     |                  ^           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 191 -         for _ in (0..nthreads) {
[INFO] [stdout] 191 +         for _ in 0..nthreads {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/array_queue.rs:214:18
[INFO] [stdout]     |
[INFO] [stdout] 214 |         for _ in (0..nthreads) {
[INFO] [stdout]     |                  ^           ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 214 -         for _ in (0..nthreads) {
[INFO] [stdout] 214 +         for _ in 0..nthreads {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/linked_queue.rs:3:26
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stdout]   |                          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::u32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/linked_queue.rs:3:33
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stdout]   |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/linked_queue.rs:18:43
[INFO] [stdout]    |
[INFO] [stdout] 18 |         LinkedQueue::with_capacity(usize::MAX)
[INFO] [stdout]    |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linked_queue.rs:163:31
[INFO] [stdout]     |
[INFO] [stdout] 163 |         self.offer_ms(e, u32::MAX)
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/linked_queue.rs:225:27
[INFO] [stdout]     |
[INFO] [stdout] 225 |         self.poll_ms(u32::MAX)
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/thread_pool.rs:5:19
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::{thread, usize};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/thread_pool.rs:21:71
[INFO] [stdout]    |
[INFO] [stdout] 21 |         ThreadPool::new(size, size, LinkedQueue::with_capacity(usize::MAX))
[INFO] [stdout]    |                                                                       ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/thread_pool.rs:121:17
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Delayed(Box<BoxedTask>, Duration),
[INFO] [stdout]     |                 ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 121 |     Delayed(Box<dyn BoxedTask>, Duration),
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/run.rs:22:19
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Task for Box<TaskBox>{
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Task for Box<dyn TaskBox>{
[INFO] [stdout]    |                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:121:22
[INFO] [stdout]     |
[INFO] [stdout] 121 |         AtomicUsize::compare_and_swap(self, old, new, order)
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:156:20
[INFO] [stdout]     |
[INFO] [stdout] 156 |             self.v.compare_and_swap(old as usize, new as usize, order) as u64
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<isize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/atomic.rs:212:20
[INFO] [stdout]     |
[INFO] [stdout] 212 |             self.v.compare_and_swap(old as isize, new as isize, order) as i64
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/array_queue.rs:118:52
[INFO] [stdout]     |
[INFO] [stdout] 118 |                 let enqueue_pos = self.enqueue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/array_queue.rs:145:52
[INFO] [stdout]     |
[INFO] [stdout] 145 |                 let dequeue_pos = self.dequeue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]   --> src/delay_queue.rs:99:40
[INFO] [stdout]    |
[INFO] [stdout] 99 |             queue = self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/delay_queue.rs:184:40
[INFO] [stdout]     |
[INFO] [stdout] 184 |                     self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/linked_queue.rs:188:38
[INFO] [stdout]     |
[INFO] [stdout] 188 |                 last = self.not_full.wait_timeout_ms(last, dur)
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stdout]    --> src/linked_queue.rs:251:39
[INFO] [stdout]     |
[INFO] [stdout] 251 |                 head = self.not_empty.wait_timeout_ms(head, dur)
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:676:34
[INFO] [stdout]     |
[INFO] [stdout] 676 |         let actual = self.atomic.compare_and_swap(expect.as_usize(), val.as_usize(), order);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:682:21
[INFO] [stdout]     |
[INFO] [stdout] 682 |         self.atomic.compare_and_swap(num, num + (1 << LIFECYCLE_BITS), order) == num
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stdout]    --> src/thread_pool.rs:691:21
[INFO] [stdout]     |
[INFO] [stdout] 691 |         self.atomic.compare_and_swap(num, num - (1 << LIFECYCLE_BITS), order) == num
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Queue`
[INFO] [stdout]  --> src/thread_pool.rs:1:19
[INFO] [stdout]   |
[INFO] [stdout] 1 | use {LinkedQueue, Queue, SyncQueue, Run, Task, Delayed, DelayQueue};
[INFO] [stdout]   |                   ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_queue.rs:315:21
[INFO] [stdout]     |
[INFO] [stdout] 315 | fn dequeue<T: Send>(mut head: &mut MutexGuard<NodePtr<T>>) -> T {
[INFO] [stdout]     |                     ----^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` implied by `#[warn(warnings)]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/linked_queue.rs:323:36
[INFO] [stdout]     |
[INFO] [stdout] 323 | fn enqueue<T: Send>(node: Node<T>, mut last: &mut MutexGuard<NodePtr<T>>) {
[INFO] [stdout]     |                                    ----^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.92s
[INFO] running `Command { std: "docker" "inspect" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | homepage = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 20 | repository = "https://github.com/carllerche/syncbox"
[INFO] [stderr]    |              ---------------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `syncbox` (manifest) generated 2 warnings
[INFO] [stderr] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]  --> src/linked_queue.rs:3:26
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stderr]   |                          ^^^^^
[INFO] [stderr]   |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]  --> src/lib.rs:4:9
[INFO] [stderr]   |
[INFO] [stderr] 4 | #![deny(warnings)]
[INFO] [stderr]   |         ^^^^^^^^
[INFO] [stderr]   = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated module `std::u32`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]  --> src/linked_queue.rs:3:33
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stderr]   |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]   --> src/linked_queue.rs:18:43
[INFO] [stderr]    |
[INFO] [stderr] 18 |         LinkedQueue::with_capacity(usize::MAX)
[INFO] [stderr]    |                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/linked_queue.rs:163:31
[INFO] [stderr]     |
[INFO] [stderr] 163 |         self.offer_ms(e, u32::MAX)
[INFO] [stderr]     |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/linked_queue.rs:225:27
[INFO] [stderr]     |
[INFO] [stderr] 225 |         self.poll_ms(u32::MAX)
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]  --> src/thread_pool.rs:5:19
[INFO] [stderr]   |
[INFO] [stderr] 5 | use std::{thread, usize};
[INFO] [stderr]   |                   ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]   --> src/thread_pool.rs:21:71
[INFO] [stderr]    |
[INFO] [stderr] 21 |         ThreadPool::new(size, size, LinkedQueue::with_capacity(usize::MAX))
[INFO] [stderr]    |                                                                       ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/thread_pool.rs:121:17
[INFO] [stderr]     |
[INFO] [stderr] 121 |     Delayed(Box<BoxedTask>, Duration),
[INFO] [stderr]     |                 ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 121 |     Delayed(Box<dyn BoxedTask>, Duration),
[INFO] [stderr]     |                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/run.rs:22:19
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl Task for Box<TaskBox>{
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 22 | impl Task for Box<dyn TaskBox>{
[INFO] [stderr]    |                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/atomic.rs:121:22
[INFO] [stderr]     |
[INFO] [stderr] 121 |         AtomicUsize::compare_and_swap(self, old, new, order)
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/atomic.rs:156:20
[INFO] [stderr]     |
[INFO] [stderr] 156 |             self.v.compare_and_swap(old as usize, new as usize, order) as u64
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<isize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/atomic.rs:212:20
[INFO] [stderr]     |
[INFO] [stderr] 212 |             self.v.compare_and_swap(old as isize, new as isize, order) as i64
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/array_queue.rs:118:52
[INFO] [stderr]     |
[INFO] [stderr] 118 |                 let enqueue_pos = self.enqueue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/array_queue.rs:145:52
[INFO] [stderr]     |
[INFO] [stderr] 145 |                 let dequeue_pos = self.dequeue_pos.compare_and_swap(pos, pos+1, Relaxed);
[INFO] [stderr]     |                                                    ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stderr]   --> src/delay_queue.rs:99:40
[INFO] [stderr]    |
[INFO] [stderr] 99 |             queue = self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0;
[INFO] [stderr]    |                                        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stderr]    --> src/delay_queue.rs:184:40
[INFO] [stderr]     |
[INFO] [stderr] 184 |                     self.inner.condvar.wait_timeout_ms(queue, timeout).unwrap().0
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stderr]    --> src/linked_queue.rs:188:38
[INFO] [stderr]     |
[INFO] [stderr] 188 |                 last = self.not_full.wait_timeout_ms(last, dur)
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::Condvar::wait_timeout_ms`: replaced by `std::sync::Condvar::wait_timeout`
[INFO] [stderr]    --> src/linked_queue.rs:251:39
[INFO] [stderr]     |
[INFO] [stderr] 251 |                 head = self.not_empty.wait_timeout_ms(head, dur)
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/thread_pool.rs:676:34
[INFO] [stderr]     |
[INFO] [stderr] 676 |         let actual = self.atomic.compare_and_swap(expect.as_usize(), val.as_usize(), order);
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/thread_pool.rs:682:21
[INFO] [stderr]     |
[INFO] [stderr] 682 |         self.atomic.compare_and_swap(num, num + (1 << LIFECYCLE_BITS), order) == num
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead
[INFO] [stderr]    --> src/thread_pool.rs:691:21
[INFO] [stderr]     |
[INFO] [stderr] 691 |         self.atomic.compare_and_swap(num, num - (1 << LIFECYCLE_BITS), order) == num
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Queue`
[INFO] [stderr]  --> src/thread_pool.rs:1:19
[INFO] [stderr]   |
[INFO] [stderr] 1 | use {LinkedQueue, Queue, SyncQueue, Run, Task, Delayed, DelayQueue};
[INFO] [stderr]   |                   ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/linked_queue.rs:315:21
[INFO] [stderr]     |
[INFO] [stderr] 315 | fn dequeue<T: Send>(mut head: &mut MutexGuard<NodePtr<T>>) -> T {
[INFO] [stderr]     |                     ----^^^^
[INFO] [stdout] 
[INFO] [stderr]     |                     |
[INFO] [stdout] running 1 test
[INFO] [stderr]     |                     help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/linked_queue.rs:323:36
[INFO] [stderr]     |
[INFO] [stderr] 323 | fn enqueue<T: Send>(node: Node<T>, mut last: &mut MutexGuard<NodePtr<T>>) {
[INFO] [stderr]     |                                    ----^^^^
[INFO] [stderr]     |                                    |
[INFO] [stderr]     |                                    help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `syncbox` (lib) generated 24 warnings (run `cargo fix --lib -p syncbox` to apply 4 suggestions)
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/array_queue.rs:178:18
[INFO] [stderr]     |
[INFO] [stderr] 178 |         for _ in (0..nthreads) {
[INFO] [stderr]     |                  ^           ^
[INFO] [stderr]     |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]    --> src/lib.rs:4:9
[INFO] [stderr]     |
[INFO] [stderr]   4 | #![deny(warnings)]
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr]     = note: `#[warn(unused_parens)]` implied by `#[warn(warnings)]`
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 178 -         for _ in (0..nthreads) {
[INFO] [stderr] 178 +         for _ in 0..nthreads {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/array_queue.rs:183:26
[INFO] [stderr]     |
[INFO] [stderr] 183 |                 for i in (0..nmsgs) {
[INFO] [stderr]     |                          ^        ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 183 -                 for i in (0..nmsgs) {
[INFO] [stderr] 183 +                 for i in 0..nmsgs {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/array_queue.rs:191:18
[INFO] [stderr]     |
[INFO] [stderr] 191 |         for _ in (0..nthreads) {
[INFO] [stderr]     |                  ^           ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 191 -         for _ in (0..nthreads) {
[INFO] [stderr] 191 +         for _ in 0..nthreads {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/array_queue.rs:214:18
[INFO] [stderr]     |
[INFO] [stderr] 214 |         for _ in (0..nthreads) {
[INFO] [stderr]     |                  ^           ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 214 -         for _ in (0..nthreads) {
[INFO] [stderr] 214 +         for _ in 0..nthreads {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated module `std::usize`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]  --> src/linked_queue.rs:3:26
[INFO] [stderr]   |
[INFO] [stderr] 3 | use std::{mem, ptr, ops, usize, u32};
[INFO] [stderr]   |                          ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` implied by `#[warn(warnings)]`
[INFO] [stderr] 
[INFO] [stderr] warning: `syncbox` (lib test) generated 28 warnings (23 duplicates) (run `cargo fix --lib -p syncbox --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/syncbox/3bffc99de2055e6a/out/syncbox-3bffc99de2055e6a)
[INFO] [stdout] test array_queue::tests::test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests syncbox
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e", kill_on_drop: false }`
[INFO] [stdout] 0fc77d57b093511e6ec3e622d95b1d01dc5de9e3d55bd9d3c2d6e681ba3e792e
