[INFO] fetching crate parallel-disk-usage 0.24.0...
[INFO] checking parallel-disk-usage-0.24.0 against c60b92c03ca8a3b101eb9d57f51e2232690638c7 for pr-164148-crater-rollup
[INFO] extracting crate parallel-disk-usage 0.24.0 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate parallel-disk-usage 0.24.0
[INFO] finished tweaking crates.io crate parallel-disk-usage 0.24.0
[INFO] tweaked toml for crates.io crate parallel-disk-usage 0.24.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate parallel-disk-usage 0.24.0 on toolchain c60b92c03ca8a3b101eb9d57f51e2232690638c7
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate parallel-disk-usage 0.24.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28
[INFO] running `Command { std: "docker" "start" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28", 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" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28" "/opt/rustwide/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28", 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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28" "/opt/rustwide/cargo-home/bin/cargo" "+c60b92c03ca8a3b101eb9d57f51e2232690638c7" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling unicode-segmentation v1.13.2
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking memchr v2.8.1
[INFO] [stderr]     Checking pipe-trait v0.4.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking bitflags v2.11.1
[INFO] [stderr]    Compiling convert_case v0.10.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking text-block-macros v0.2.0
[INFO] [stderr]     Checking unicode-width v0.1.14
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking dashmap v6.2.1
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking sysinfo v0.39.2
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]     Checking terminal_size v0.4.4
[INFO] [stderr]     Checking into-sorted v0.0.3
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking assert-cmp v0.3.0
[INFO] [stderr]     Checking rounded-div v0.1.4
[INFO] [stderr]     Checking chacha20 v0.10.0
[INFO] [stderr]     Checking diff v0.1.13
[INFO] [stderr]     Checking yansi v1.0.1
[INFO] [stderr]     Checking rand v0.10.1
[INFO] [stderr]     Checking which v8.0.2
[INFO] [stderr]     Checking pretty_assertions v1.4.1
[INFO] [stderr]     Checking command-extra v1.0.0
[INFO] [stderr]     Checking normalize-path v0.2.1
[INFO] [stderr]     Checking maplit v1.0.2
[INFO] [stderr]    Compiling darling_core v0.12.4
[INFO] [stderr]    Compiling darling_core v0.21.3
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling smart-default v0.7.1
[INFO] [stderr]    Compiling darling_macro v0.12.4
[INFO] [stderr]    Compiling darling v0.12.4
[INFO] [stderr]    Compiling derive_builder_core v0.10.2
[INFO] [stderr]    Compiling derive_builder_macro v0.10.2
[INFO] [stderr]     Checking derive_builder v0.10.2
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking clap_complete v4.6.5
[INFO] [stderr]    Compiling darling_macro v0.21.3
[INFO] [stderr]     Checking fmt-iter v0.2.1
[INFO] [stderr]     Checking zero-copy-pads v0.2.0
[INFO] [stderr]    Compiling darling v0.21.3
[INFO] [stderr]    Compiling derive_setters v0.1.9
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking serde_yaml v0.9.34+deprecated
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]     Checking clap-utilities v0.3.0
[INFO] [stderr]     Checking parallel-disk-usage v0.24.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking build-fs-tree v0.8.1
[INFO] [stdout] error[E0277]: `Transform` cannot be sent between threads safely
[INFO] [stdout]    --> src/data_tree/reflection/par_methods.rs:67:18
[INFO] [stdout]     |
[INFO] [stdout]  67 |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]     |              --- -------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |   |
[INFO] [stdout]     |              |   `Transform` cannot be sent between threads safely
[INFO] [stdout]     |              |   within this `{closure@src/data_tree/reflection/par_methods.rs:67:18: 67:25}`
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] note: required because `transform` is used within this closure
[INFO] [stdout]    --> src/data_tree/reflection/par_methods.rs:67:44
[INFO] [stdout]     |
[INFO] [stdout]  67 |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]     |                                            ^^^^^^^^^
[INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::map`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.12.0/src/iter/mod.rs:595:41
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub trait ParallelIterator: Sized + Send {
[INFO] [stdout] ...
[INFO] [stdout] 593 |     fn map<F, R>(self, map_op: F) -> Map<Self, F>
[INFO] [stdout] 594 |     where
[INFO] [stdout] 595 |         F: Fn(Self::Item) -> R + Sync + Send,
[INFO] [stdout]     |                                         ^^^^ required by this bound in `ParallelIterator::map`
[INFO] [stdout] help: use parentheses to call this type parameter
[INFO] [stdout]     |
[INFO] [stdout]  67 |             .map((|child| child.par_try_map(transform))(/* Name */, /* Size */))
[INFO] [stdout]     |                  +                                    +++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting type parameter `Transform` with trait `Send`
[INFO] [stdout]     |
[INFO] [stdout]  58 |         Transform: Fn(Name, Size) -> Result<(TargetName, TargetSize), Error> + Copy + Sync + std::marker::Send,
[INFO] [stdout]     |                                                                                            +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Transform` cannot be sent between threads safely
[INFO] [stdout]   --> src/data_tree/reflection/par_methods.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |           let children = children
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 66 | |             .into_par_iter()
[INFO] [stdout] 67 | |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]    | |                  ------- within this `{closure@src/data_tree/reflection/par_methods.rs:67:18: 67:25}`
[INFO] [stdout] 68 | |             .collect::<Result<Vec<_>, _>>()?;
[INFO] [stdout]    | |___________________________________________^ `Transform` cannot be sent between threads safely
[INFO] [stdout]    |
[INFO] [stdout] note: required because `transform` is used within this closure
[INFO] [stdout]   --> src/data_tree/reflection/par_methods.rs:67:44
[INFO] [stdout]    |
[INFO] [stdout] 67 |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    = note: required for `Map<IntoIter<Reflection<Name, Size>>, {closure@par_methods.rs:67:18}>` to implement `rayon::iter::ParallelIterator`
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/build/parallel-disk-usage/fafdec89c87ad613/out/parallel_disk_usage-fafdec89c87ad613.long-type-15022093519728670174.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider further restricting type parameter `Transform` with trait `Send`
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Transform: Fn(Name, Size) -> Result<(TargetName, TargetSize), Error> + Copy + Sync + std::marker::Send,
[INFO] [stdout]    |                                                                                            +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `impl Fn(&Self, u64) -> bool + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]    --> src/data_tree/retain.rs:21:23
[INFO] [stdout]     |
[INFO] [stdout]  21 |             .for_each(|child| child.par_retain_with_depth(next_depth, predicate))
[INFO] [stdout]     |              -------- -------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |        |
[INFO] [stdout]     |              |        `impl Fn(&Self, u64) -> bool + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]     |              |        within this `{closure@src/data_tree/retain.rs:21:23: 21:30}`
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] note: required because `predicate` is used within this closure
[INFO] [stdout]    --> src/data_tree/retain.rs:21:71
[INFO] [stdout]     |
[INFO] [stdout]  21 |             .for_each(|child| child.par_retain_with_depth(next_depth, predicate))
[INFO] [stdout]     |                                                                       ^^^^^^^^^
[INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::for_each`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.12.0/src/iter/mod.rs:376:37
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub trait ParallelIterator: Sized + Send {
[INFO] [stdout] ...
[INFO] [stdout] 374 |     fn for_each<OP>(self, op: OP)
[INFO] [stdout] 375 |     where
[INFO] [stdout] 376 |         OP: Fn(Self::Item) + Sync + Send,
[INFO] [stdout]     |                                     ^^^^ required by this bound in `ParallelIterator::for_each`
[INFO] [stdout] help: use parentheses to call this type parameter
[INFO] [stdout]     |
[INFO] [stdout]  21 |             .for_each((|child| child.par_retain_with_depth(next_depth, predicate))(/* &DataTree<Name, Size> */, /* u64 */))
[INFO] [stdout]     |                       +                                                          +++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider restricting opaque type `impl Fn(&Self, u64) -> bool + Copy + Sync` with trait `Send`
[INFO] [stdout]     |
[INFO] [stdout]  14 |         predicate: impl Fn(&Self, u64) -> bool + Copy + Sync + std::marker::Send,
[INFO] [stdout]     |                                                              +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `impl Fn(&Self, &Self) -> Ordering + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]    --> src/data_tree/sort.rs:15:23
[INFO] [stdout]     |
[INFO] [stdout]  15 |             .for_each(|child| child.par_sort_by(compare));
[INFO] [stdout]     |              -------- -------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |        |
[INFO] [stdout]     |              |        `impl Fn(&Self, &Self) -> Ordering + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]     |              |        within this `{closure@src/data_tree/sort.rs:15:23: 15:30}`
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] note: required because `compare` is used within this closure
[INFO] [stdout]    --> src/data_tree/sort.rs:15:49
[INFO] [stdout]     |
[INFO] [stdout]  15 |             .for_each(|child| child.par_sort_by(compare));
[INFO] [stdout]     |                                                 ^^^^^^^
[INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::for_each`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.12.0/src/iter/mod.rs:376:37
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub trait ParallelIterator: Sized + Send {
[INFO] [stdout] ...
[INFO] [stdout] 374 |     fn for_each<OP>(self, op: OP)
[INFO] [stdout] 375 |     where
[INFO] [stdout] 376 |         OP: Fn(Self::Item) + Sync + Send,
[INFO] [stdout]     |                                     ^^^^ required by this bound in `ParallelIterator::for_each`
[INFO] [stdout] help: use parentheses to call this type parameter
[INFO] [stdout]     |
[INFO] [stdout]  15 |             .for_each((|child| child.par_sort_by(compare))(/* &DataTree<Name, Size> */, /* &DataTree<Name, Size> */));
[INFO] [stdout]     |                       +                                  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider restricting opaque type `impl Fn(&Self, &Self) -> Ordering + Copy + Sync` with trait `Send`
[INFO] [stdout]     |
[INFO] [stdout]  12 |     pub fn par_sort_by(&mut self, compare: impl Fn(&Self, &Self) -> Ordering + Copy + Sync + std::marker::Send) {
[INFO] [stdout]     |                                                                                            +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Transform` cannot be sent between threads safely
[INFO] [stdout]    --> src/data_tree/reflection/par_methods.rs:67:18
[INFO] [stdout]     |
[INFO] [stdout]  67 |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]     |              --- -------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |   |
[INFO] [stdout]     |              |   `Transform` cannot be sent between threads safely
[INFO] [stdout]     |              |   within this `{closure@src/data_tree/reflection/par_methods.rs:67:18: 67:25}`
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] note: required because `transform` is used within this closure
[INFO] [stdout]    --> src/data_tree/reflection/par_methods.rs:67:44
[INFO] [stdout]     |
[INFO] [stdout]  67 |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]     |                                            ^^^^^^^^^
[INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::map`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.12.0/src/iter/mod.rs:595:41
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub trait ParallelIterator: Sized + Send {
[INFO] [stdout] ...
[INFO] [stdout] 593 |     fn map<F, R>(self, map_op: F) -> Map<Self, F>
[INFO] [stdout] 594 |     where
[INFO] [stdout] 595 |         F: Fn(Self::Item) -> R + Sync + Send,
[INFO] [stdout]     |                                         ^^^^ required by this bound in `ParallelIterator::map`
[INFO] [stdout] help: use parentheses to call this type parameter
[INFO] [stdout]     |
[INFO] [stdout]  67 |             .map((|child| child.par_try_map(transform))(/* Name */, /* Size */))
[INFO] [stdout]     |                  +                                    +++++++++++++++++++++++++
[INFO] [stdout] help: consider further restricting type parameter `Transform` with trait `Send`
[INFO] [stdout]     |
[INFO] [stdout]  58 |         Transform: Fn(Name, Size) -> Result<(TargetName, TargetSize), Error> + Copy + Sync + std::marker::Send,
[INFO] [stdout]     |                                                                                            +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `Transform` cannot be sent between threads safely
[INFO] [stdout]   --> src/data_tree/reflection/par_methods.rs:65:24
[INFO] [stdout]    |
[INFO] [stdout] 65 |           let children = children
[INFO] [stdout]    |  ________________________^
[INFO] [stdout] 66 | |             .into_par_iter()
[INFO] [stdout] 67 | |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]    | |                  ------- within this `{closure@src/data_tree/reflection/par_methods.rs:67:18: 67:25}`
[INFO] [stdout] 68 | |             .collect::<Result<Vec<_>, _>>()?;
[INFO] [stdout]    | |___________________________________________^ `Transform` cannot be sent between threads safely
[INFO] [stdout]    |
[INFO] [stdout] note: required because `transform` is used within this closure
[INFO] [stdout]   --> src/data_tree/reflection/par_methods.rs:67:44
[INFO] [stdout]    |
[INFO] [stdout] 67 |             .map(|child| child.par_try_map(transform))
[INFO] [stdout]    |                                            ^^^^^^^^^
[INFO] [stdout]    = note: required for `Map<IntoIter<Reflection<Name, Size>>, {closure@par_methods.rs:67:18}>` to implement `rayon::iter::ParallelIterator`
[INFO] [stdout]    = note: the full name for the type has been written to '/opt/rustwide/target/debug/build/parallel-disk-usage/05d0df315977e26c/out/parallel_disk_usage-05d0df315977e26c.long-type-4496399177703162183.txt'
[INFO] [stdout]    = note: consider using `--verbose` to print the full type name to the console
[INFO] [stdout] help: consider further restricting type parameter `Transform` with trait `Send`
[INFO] [stdout]    |
[INFO] [stdout] 58 |         Transform: Fn(Name, Size) -> Result<(TargetName, TargetSize), Error> + Copy + Sync + std::marker::Send,
[INFO] [stdout]    |                                                                                            +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `impl Fn(&Self, u64) -> bool + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]    --> src/data_tree/retain.rs:21:23
[INFO] [stdout]     |
[INFO] [stdout]  21 |             .for_each(|child| child.par_retain_with_depth(next_depth, predicate))
[INFO] [stdout]     |              -------- -------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |        |
[INFO] [stdout]     |              |        `impl Fn(&Self, u64) -> bool + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]     |              |        within this `{closure@src/data_tree/retain.rs:21:23: 21:30}`
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] note: required because `predicate` is used within this closure
[INFO] [stdout]    --> src/data_tree/retain.rs:21:71
[INFO] [stdout]     |
[INFO] [stdout]  21 |             .for_each(|child| child.par_retain_with_depth(next_depth, predicate))
[INFO] [stdout]     |                                                                       ^^^^^^^^^
[INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::for_each`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.12.0/src/iter/mod.rs:376:37
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub trait ParallelIterator: Sized + Send {
[INFO] [stdout] ...
[INFO] [stdout] 374 |     fn for_each<OP>(self, op: OP)
[INFO] [stdout] 375 |     where
[INFO] [stdout] 376 |         OP: Fn(Self::Item) + Sync + Send,
[INFO] [stdout]     |                                     ^^^^ required by this bound in `ParallelIterator::for_each`
[INFO] [stdout] help: use parentheses to call this type parameter
[INFO] [stdout]     |
[INFO] [stdout]  21 |             .for_each((|child| child.par_retain_with_depth(next_depth, predicate))(/* &DataTree<Name, Size> */, /* u64 */))
[INFO] [stdout]     |                       +                                                          +++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider restricting opaque type `impl Fn(&Self, u64) -> bool + Copy + Sync` with trait `Send`
[INFO] [stdout]     |
[INFO] [stdout]  14 |         predicate: impl Fn(&Self, u64) -> bool + Copy + Sync + std::marker::Send,
[INFO] [stdout]     |                                                              +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `impl Fn(&Self, &Self) -> Ordering + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]    --> src/data_tree/sort.rs:15:23
[INFO] [stdout]     |
[INFO] [stdout]  15 |             .for_each(|child| child.par_sort_by(compare));
[INFO] [stdout]     |              -------- -------^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |              |        |
[INFO] [stdout]     |              |        `impl Fn(&Self, &Self) -> Ordering + Copy + Sync` cannot be sent between threads safely
[INFO] [stdout]     |              |        within this `{closure@src/data_tree/sort.rs:15:23: 15:30}`
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout] note: required because `compare` is used within this closure
[INFO] [stdout]    --> src/data_tree/sort.rs:15:49
[INFO] [stdout]     |
[INFO] [stdout]  15 |             .for_each(|child| child.par_sort_by(compare));
[INFO] [stdout]     |                                                 ^^^^^^^
[INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::for_each`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.12.0/src/iter/mod.rs:376:37
[INFO] [stdout]     |
[INFO] [stdout] 357 | pub trait ParallelIterator: Sized + Send {
[INFO] [stdout] ...
[INFO] [stdout] 374 |     fn for_each<OP>(self, op: OP)
[INFO] [stdout] 375 |     where
[INFO] [stdout] 376 |         OP: Fn(Self::Item) + Sync + Send,
[INFO] [stdout]     |                                     ^^^^ required by this bound in `ParallelIterator::for_each`
[INFO] [stdout] help: use parentheses to call this type parameter
[INFO] [stdout]     |
[INFO] [stdout]  15 |             .for_each((|child| child.par_sort_by(compare))(/* &DataTree<Name, Size> */, /* &DataTree<Name, Size> */));
[INFO] [stdout]     |                       +                                  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
[INFO] [stdout] help: consider restricting opaque type `impl Fn(&Self, &Self) -> Ordering + Copy + Sync` with trait `Send`
[INFO] [stdout]     |
[INFO] [stdout]  12 |     pub fn par_sort_by(&mut self, compare: impl Fn(&Self, &Self) -> Ordering + Copy + Sync + std::marker::Send) {
[INFO] [stdout]     |                                                                                            +++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `parallel-disk-usage` (lib) due to 4 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `parallel-disk-usage` (lib test) due to 4 previous errors
[INFO] running `Command { std: "docker" "inspect" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28", kill_on_drop: false }`
[INFO] [stdout] e3afddf665ab09eb39462f7ebdda738de15be8779d93827933e237102a4b8b28
