[INFO] fetching crate feos-dft 0.10.1...
[INFO] checking feos-dft-0.10.1 against e3607d549209cc9fdfe7e907123b4185210e2c2b for pr-158915
[INFO] extracting crate feos-dft 0.10.1 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate feos-dft 0.10.1
[INFO] finished tweaking crates.io crate feos-dft 0.10.1
[INFO] tweaked toml for crates.io crate feos-dft 0.10.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate feos-dft 0.10.1 on toolchain e3607d549209cc9fdfe7e907123b4185210e2c2b
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate feos-dft 0.10.1 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" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:59:1
[INFO] [stderr]    |
[INFO] [stderr] 59 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `feos-dft` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b
[INFO] running `Command { std: "docker" "start" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b", 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" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b" "/opt/rustwide/cargo-home/bin/cargo" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b", 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" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b" "/opt/rustwide/cargo-home/bin/cargo" "+e3607d549209cc9fdfe7e907123b4185210e2c2b" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:59:1
[INFO] [stderr]    |
[INFO] [stderr] 59 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `feos-dft` (manifest) generated 1 warning
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling matrixmultiply v0.3.11
[INFO] [stderr]     Checking bytemuck v1.25.2
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking hashbrown v0.17.1
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking memchr v2.8.3
[INFO] [stderr]     Checking typenum v1.20.1
[INFO] [stderr]     Checking safe_arch v1.1.0
[INFO] [stderr]     Checking wide v1.5.0
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling quantity v0.14.0
[INFO] [stderr]     Checking strength_reduce v0.2.4
[INFO] [stderr]     Checking itoa v1.0.18
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling thiserror v2.0.19
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]     Checking transpose v0.2.3
[INFO] [stderr]     Checking ndarray v0.17.2
[INFO] [stderr]     Checking primal-check v0.3.4
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]     Checking ryu v1.0.23
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]     Checking itertools v0.15.0
[INFO] [stderr]     Checking rustfft v6.4.1
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking simba v0.10.0
[INFO] [stderr]     Checking petgraph v0.8.3
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.19
[INFO] [stderr]    Compiling nalgebra-macros v0.3.0
[INFO] [stderr]     Checking rustdct v0.7.1
[INFO] [stderr]     Checking nalgebra v0.35.0
[INFO] [stderr]     Checking num-dual v0.14.1
[INFO] [stderr]     Checking feos-core v0.10.1
[INFO] [stderr]     Checking feos-dft v0.10.1 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:552:20
[INFO] [stdout]     |
[INFO] [stdout] 552 |     convolver: Arc<dyn Convolver<T, D>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 |     convolver_boundary: Arc<dyn Convolver<T, D>>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `(dyn Convolver<T, D> + 'static)` cannot be shared between threads safely
[INFO] [stdout]    --> src/convolver/mod.rs:577:56
[INFO] [stdout]     |
[INFO] [stdout] 577 | impl<T, D: Dimension + RemoveAxis> Convolver<T, D> for CurvilinearConvolver<T, D>
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn Convolver<T, D> + 'static)` cannot be shared between threads safely
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sync` is not implemented for `(dyn Convolver<T, D> + 'static)`
[INFO] [stdout]     = note: required for `Arc<(dyn Convolver<T, D> + 'static)>` to implement `Sync`
[INFO] [stdout] note: required because it appears within the type `CurvilinearConvolver<T, D>`
[INFO] [stdout]    --> src/convolver/mod.rs:551:8
[INFO] [stdout]     |
[INFO] [stdout] 551 | struct CurvilinearConvolver<T, D> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `Convolver`
[INFO] [stdout]    --> src/convolver/mod.rs:24:46
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |                                              ^^^^ required by this bound in `Convolver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:552:20
[INFO] [stdout]     |
[INFO] [stdout] 552 |     convolver: Arc<dyn Convolver<T, D>>,
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:553:29
[INFO] [stdout]     |
[INFO] [stdout] 553 |     convolver_boundary: Arc<dyn Convolver<T, D>>,
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `(dyn Convolver<T, D> + 'static)` cannot be shared between threads safely
[INFO] [stdout]    --> src/convolver/mod.rs:577:56
[INFO] [stdout]     |
[INFO] [stdout] 577 | impl<T, D: Dimension + RemoveAxis> Convolver<T, D> for CurvilinearConvolver<T, D>
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn Convolver<T, D> + 'static)` cannot be shared between threads safely
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `Sync` is not implemented for `(dyn Convolver<T, D> + 'static)`
[INFO] [stdout]     = note: required for `Arc<(dyn Convolver<T, D> + 'static)>` to implement `Sync`
[INFO] [stdout] note: required because it appears within the type `CurvilinearConvolver<T, D>`
[INFO] [stdout]    --> src/convolver/mod.rs:551:8
[INFO] [stdout]     |
[INFO] [stdout] 551 | struct CurvilinearConvolver<T, D> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `Convolver`
[INFO] [stdout]    --> src/convolver/mod.rs:24:46
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |                                              ^^^^ required by this bound in `Convolver`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:104:24
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub convolver: Arc<dyn Convolver<f64, D>>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:107:28
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub specification: Arc<dyn DFTSpecification<D, F>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:104:24
[INFO] [stdout]     |
[INFO] [stdout] 104 |     pub convolver: Arc<dyn Convolver<f64, D>>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:107:28
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub specification: Arc<dyn DFTSpecification<D, F>>,
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 38 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 38 +     ) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 52 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 52 +     ) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:75:14
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 75 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 75 +     ) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/mod.rs:45:76
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 45 -     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout] 45 +     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:140:14
[INFO] [stdout]     |
[INFO] [stdout] 140 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 140 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 140 +     ) -> Arc<Self> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:172:14
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 172 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 172 +     ) -> Arc<Self> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:569:14
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 569 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 569 +     ) -> Arc<Self> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |         convolver: &dyn Convolver<N, D>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 82 -         convolver: &dyn Convolver<N, D>,
[INFO] [stdout] 82 +         convolver: &Self,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |         convolver: &dyn Convolver<Dual64, D>,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 143 -         convolver: &dyn Convolver<Dual64, D>,
[INFO] [stdout] 143 +         convolver: &Self,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 38 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 38 +     ) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/functional.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |         convolver: &dyn Convolver<N, D>,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 119 -         convolver: &dyn Convolver<N, D>,
[INFO] [stdout] 119 +         convolver: &Self,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/functional.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |         convolver: &dyn Convolver<N, D>,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 154 -         convolver: &dyn Convolver<N, D>,
[INFO] [stdout] 154 +         convolver: &Self,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:52:14
[INFO] [stdout]    |
[INFO] [stdout] 52 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 52 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 52 +     ) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:75:14
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 75 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 75 +     ) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/mod.rs:45:76
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout]    |                                                                            ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 45 -     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout] 45 +     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<Self> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:140:14
[INFO] [stdout]     |
[INFO] [stdout] 140 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 140 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 140 +     ) -> Arc<Self> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:172:14
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 172 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 172 +     ) -> Arc<Self> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:569:14
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 569 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 569 +     ) -> Arc<Self> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:82:21
[INFO] [stdout]    |
[INFO] [stdout] 82 |         convolver: &dyn Convolver<N, D>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]    |
[INFO] [stdout] 82 -         convolver: &dyn Convolver<N, D>,
[INFO] [stdout] 82 +         convolver: &Self,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:143:21
[INFO] [stdout]     |
[INFO] [stdout] 143 |         convolver: &dyn Convolver<Dual64, D>,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 143 -         convolver: &dyn Convolver<Dual64, D>,
[INFO] [stdout] 143 +         convolver: &Self,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/functional.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |         convolver: &dyn Convolver<N, D>,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 119 -         convolver: &dyn Convolver<N, D>,
[INFO] [stdout] 119 +         convolver: &Self,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/functional.rs:154:21
[INFO] [stdout]     |
[INFO] [stdout] 154 |         convolver: &dyn Convolver<N, D>,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: you might have meant to use `Self` to refer to the implementing type
[INFO] [stdout]     |
[INFO] [stdout] 154 -         convolver: &dyn Convolver<N, D>,
[INFO] [stdout] 154 +         convolver: &Self,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |             ConvolverFFT::<_, D>::plan(&self.profile.grid, &weight_functions, self.profile.lanczos);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:163:14
[INFO] [stdout]     |
[INFO] [stdout] 163 |             .bond_integrals(temperature, &exp_pot, convolver.as_ref());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:163:52
[INFO] [stdout]     |
[INFO] [stdout] 163 |             .bond_integrals(temperature, &exp_pot, convolver.as_ref());
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:163:62
[INFO] [stdout]     |
[INFO] [stdout] 163 |             .bond_integrals(temperature, &exp_pot, convolver.as_ref());
[INFO] [stdout]     |                                                              ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         Self::new(axes, f, weight_functions, lanczos)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:158:13
[INFO] [stdout]     |
[INFO] [stdout] 158 |             ConvolverFFT::<_, D>::plan(&self.profile.grid, &weight_functions, self.profile.lanczos);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:163:14
[INFO] [stdout]     |
[INFO] [stdout] 163 |             .bond_integrals(temperature, &exp_pot, convolver.as_ref());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:163:52
[INFO] [stdout]     |
[INFO] [stdout] 163 |             .bond_integrals(temperature, &exp_pot, convolver.as_ref());
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |         Self::new(axes, f, weight_functions, lanczos)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/adsorption/pore.rs:163:62
[INFO] [stdout]     |
[INFO] [stdout] 163 |             .bond_integrals(temperature, &exp_pot, convolver.as_ref());
[INFO] [stdout]     |                                                              ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:75:18
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]    |
[INFO] [stdout] 75 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 75 +     ) -> Arc<impl Convolver<T, D>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/convolver/periodic_convolver.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout]  75 |       ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |            ------------------------ expected `Arc<(dyn Convolver<T, D> + 'static)>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 177 | /         Arc::new(Self {
[INFO] [stdout] 178 | |             k_abs,
[INFO] [stdout] 179 | |             weight_functions: fft_weight_functions,
[INFO] [stdout] 180 | |             lanczos_sigma,
[INFO] [stdout] 181 | |             forward_transforms,
[INFO] [stdout] 182 | |             inverse_transforms,
[INFO] [stdout] 183 | |         })
[INFO] [stdout]     | |__________^ expected `Arc<dyn Convolver<T, D>>`, found `Arc<PeriodicConvolver<T, D>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn Convolver<T, D> + 'static)>`
[INFO] [stdout]                found struct `Arc<PeriodicConvolver<T, D>>`
[INFO] [stdout]     = help: `PeriodicConvolver<T, D>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 44 |         Self::new(axes, f, weight_functions, lanczos)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 |         Self::new(axes, f, weight_functions, lanczos)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/periodic_convolver.rs:75:18
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]    |
[INFO] [stdout] 75 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 75 +     ) -> Arc<impl Convolver<T, D>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/convolver/periodic_convolver.rs:177:9
[INFO] [stdout]     |
[INFO] [stdout]  75 |       ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |            ------------------------ expected `Arc<(dyn Convolver<T, D> + 'static)>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 177 | /         Arc::new(Self {
[INFO] [stdout] 178 | |             k_abs,
[INFO] [stdout] 179 | |             weight_functions: fft_weight_functions,
[INFO] [stdout] 180 | |             lanczos_sigma,
[INFO] [stdout] 181 | |             forward_transforms,
[INFO] [stdout] 182 | |             inverse_transforms,
[INFO] [stdout] 183 | |         })
[INFO] [stdout]     | |__________^ expected `Arc<dyn Convolver<T, D>>`, found `Arc<PeriodicConvolver<T, D>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn Convolver<T, D> + 'static)>`
[INFO] [stdout]                found struct `Arc<PeriodicConvolver<T, D>>`
[INFO] [stdout]     = help: `PeriodicConvolver<T, D>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/mod.rs:45:80
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout]    |                                                                                ^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]    |
[INFO] [stdout] 45 -     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout] 45 +     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<impl Convolver<T, Ix0>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/convolver/mod.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout]    |                                                                        -------------------------- expected `Arc<(dyn Convolver<T, ndarray::Dim<[usize; 0]>> + 'static)>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 50 |         Arc::new(Self { weight_constants })
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<dyn Convolver<T, Dim<[usize; 0]>>>`, found `Arc<BulkConvolver<T>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Arc<(dyn Convolver<T, ndarray::Dim<[usize; 0]>> + 'static)>`
[INFO] [stdout]               found struct `Arc<BulkConvolver<T>>`
[INFO] [stdout]    = help: `BulkConvolver<T>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:142:31
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Grid::Polar(r) => CurvilinearConvolver::new(r, &[], weight_functions, lanczos),
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:143:35
[INFO] [stdout]     |
[INFO] [stdout] 143 |             Grid::Spherical(r) => CurvilinearConvolver::new(r, &[], weight_functions, lanczos),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:144:36
[INFO] [stdout]     |
[INFO] [stdout] 144 |             Grid::Cartesian1(z) => Self::new(Some(z), &[], weight_functions, lanczos),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:146:17
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 CurvilinearConvolver::new(r, &[z], weight_functions, lanczos)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 |             Grid::Cartesian2(x, y) => Self::new(Some(x), &[y], weight_functions, lanczos),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 PeriodicConvolver::new_2d(&[x, y], *alpha, weight_functions, lanczos)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:152:42
[INFO] [stdout]     |
[INFO] [stdout] 152 |             Grid::Cartesian3(x, y, z) => Self::new(Some(x), &[y, z], weight_functions, lanczos),
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |                 PeriodicConvolver::new_3d(&[x, y, z], *angles, weight_functions, lanczos)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/convolver/mod.rs:45:80
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout]    |                                                                                ^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]    |
[INFO] [stdout] 45 -     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout] 45 +     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<impl Convolver<T, Ix0>> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/convolver/mod.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     pub(crate) fn new(weight_functions: Vec<WeightFunctionInfo<T>>) -> Arc<dyn Convolver<T, Ix0>> {
[INFO] [stdout]    |                                                                        -------------------------- expected `Arc<(dyn Convolver<T, ndarray::Dim<[usize; 0]>> + 'static)>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 50 |         Arc::new(Self { weight_constants })
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<dyn Convolver<T, Dim<[usize; 0]>>>`, found `Arc<BulkConvolver<T>>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected struct `Arc<(dyn Convolver<T, ndarray::Dim<[usize; 0]>> + 'static)>`
[INFO] [stdout]               found struct `Arc<BulkConvolver<T>>`
[INFO] [stdout]    = help: `BulkConvolver<T>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]     |
[INFO] [stdout] 172 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 172 +     ) -> Arc<impl Convolver<T, D>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/convolver/mod.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |       ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |            ------------------------ expected `Arc<(dyn Convolver<T, D> + 'static)>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 269 | /         Arc::new(Self {
[INFO] [stdout] 270 | |             k_abs,
[INFO] [stdout] 271 | |             weight_functions: fft_weight_functions,
[INFO] [stdout] 272 | |             lanczos_sigma,
[INFO] [stdout] 273 | |             transform,
[INFO] [stdout] 274 | |             cartesian_transforms,
[INFO] [stdout] 275 | |         })
[INFO] [stdout]     | |__________^ expected `Arc<dyn Convolver<T, D>>`, found `Arc<ConvolverFFT<T, D>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn Convolver<T, D> + 'static)>`
[INFO] [stdout]                found struct `Arc<ConvolverFFT<T, D>>`
[INFO] [stdout]     = help: `ConvolverFFT<T, D>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:142:31
[INFO] [stdout]     |
[INFO] [stdout] 142 |             Grid::Polar(r) => CurvilinearConvolver::new(r, &[], weight_functions, lanczos),
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:143:35
[INFO] [stdout]     |
[INFO] [stdout] 143 |             Grid::Spherical(r) => CurvilinearConvolver::new(r, &[], weight_functions, lanczos),
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:144:36
[INFO] [stdout]     |
[INFO] [stdout] 144 |             Grid::Cartesian1(z) => Self::new(Some(z), &[], weight_functions, lanczos),
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:146:17
[INFO] [stdout]     |
[INFO] [stdout] 146 |                 CurvilinearConvolver::new(r, &[z], weight_functions, lanczos)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:148:39
[INFO] [stdout]     |
[INFO] [stdout] 148 |             Grid::Cartesian2(x, y) => Self::new(Some(x), &[y], weight_functions, lanczos),
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:150:17
[INFO] [stdout]     |
[INFO] [stdout] 150 |                 PeriodicConvolver::new_2d(&[x, y], *alpha, weight_functions, lanczos)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:152:42
[INFO] [stdout]     |
[INFO] [stdout] 152 |             Grid::Cartesian3(x, y, z) => Self::new(Some(x), &[y, z], weight_functions, lanczos),
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:154:17
[INFO] [stdout]     |
[INFO] [stdout] 154 |                 PeriodicConvolver::new_3d(&[x, y, z], *angles, weight_functions, lanczos)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 172 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]     |
[INFO] [stdout] 172 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 172 +     ) -> Arc<impl Convolver<T, D>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/convolver/mod.rs:269:9
[INFO] [stdout]     |
[INFO] [stdout] 172 |       ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |            ------------------------ expected `Arc<(dyn Convolver<T, D> + 'static)>` because of return type
[INFO] [stdout] ...
[INFO] [stdout] 269 | /         Arc::new(Self {
[INFO] [stdout] 270 | |             k_abs,
[INFO] [stdout] 271 | |             weight_functions: fft_weight_functions,
[INFO] [stdout] 272 | |             lanczos_sigma,
[INFO] [stdout] 273 | |             transform,
[INFO] [stdout] 274 | |             cartesian_transforms,
[INFO] [stdout] 275 | |         })
[INFO] [stdout]     | |__________^ expected `Arc<dyn Convolver<T, D>>`, found `Arc<ConvolverFFT<T, D>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn Convolver<T, D> + 'static)>`
[INFO] [stdout]                found struct `Arc<ConvolverFFT<T, D>>`
[INFO] [stdout]     = help: `ConvolverFFT<T, D>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:571:24
[INFO] [stdout]     |
[INFO] [stdout] 571 |             convolver: ConvolverFFT::new(Some(r), z, weight_functions, lanczos),
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:572:33
[INFO] [stdout]     |
[INFO] [stdout] 572 |             convolver_boundary: ConvolverFFT::new(None, z, weight_functions, lanczos),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:569:18
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]     |
[INFO] [stdout] 569 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 569 +     ) -> Arc<impl Convolver<T, D>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/convolver/mod.rs:570:9
[INFO] [stdout]     |
[INFO] [stdout] 569 |       ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |            ------------------------ expected `Arc<(dyn Convolver<T, D> + 'static)>` because of return type
[INFO] [stdout] 570 | /         Arc::new(Self {
[INFO] [stdout] 571 | |             convolver: ConvolverFFT::new(Some(r), z, weight_functions, lanczos),
[INFO] [stdout] 572 | |             convolver_boundary: ConvolverFFT::new(None, z, weight_functions, lanczos),
[INFO] [stdout] 573 | |         })
[INFO] [stdout]     | |__________^ expected `Arc<dyn Convolver<T, D>>`, found `Arc<CurvilinearConvolver<T, D>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn Convolver<T, D> + 'static)>`
[INFO] [stdout]                found struct `Arc<CurvilinearConvolver<T, D>>`
[INFO] [stdout]     = help: `CurvilinearConvolver<T, D>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:597:26
[INFO] [stdout]     |
[INFO] [stdout] 597 |         let mut result = self.convolver.convolve(profile, weight_function);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:601:31
[INFO] [stdout]     |
[INFO] [stdout] 601 |           let result_boundary = self
[INFO] [stdout]     |  _______________________________^
[INFO] [stdout] 602 | |             .convolver_boundary
[INFO] [stdout] 603 | |             .convolve(profile_boundary, weight_function);
[INFO] [stdout]     | |________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:623:22
[INFO] [stdout]     |
[INFO] [stdout] 623 |         let mut wd = self.convolver.weighted_densities(&density);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:627:27
[INFO] [stdout]     |
[INFO] [stdout] 627 |           let wd_boundary = self
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 628 | |             .convolver_boundary
[INFO] [stdout] 629 | |             .weighted_densities(&density_boundary.to_owned());
[INFO] [stdout]     | |_____________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:571:24
[INFO] [stdout]     |
[INFO] [stdout] 571 |             convolver: ConvolverFFT::new(Some(r), z, weight_functions, lanczos),
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:572:33
[INFO] [stdout]     |
[INFO] [stdout] 572 |             convolver_boundary: ConvolverFFT::new(None, z, weight_functions, lanczos),
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:662:41
[INFO] [stdout]     |
[INFO] [stdout] 662 |           let mut functional_derivative = self
[INFO] [stdout]     |  _________________________________________^
[INFO] [stdout] 663 | |             .convolver
[INFO] [stdout] 664 | |             .functional_derivative(&partial_derivatives_full);
[INFO] [stdout]     | |_____________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:569:18
[INFO] [stdout]     |
[INFO] [stdout] 569 |     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] help: consider using an opaque type instead
[INFO] [stdout]     |
[INFO] [stdout] 569 -     ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout] 569 +     ) -> Arc<impl Convolver<T, D>> {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/convolver/mod.rs:570:9
[INFO] [stdout]     |
[INFO] [stdout] 569 |       ) -> Arc<dyn Convolver<T, D>> {
[INFO] [stdout]     |            ------------------------ expected `Arc<(dyn Convolver<T, D> + 'static)>` because of return type
[INFO] [stdout] 570 | /         Arc::new(Self {
[INFO] [stdout] 571 | |             convolver: ConvolverFFT::new(Some(r), z, weight_functions, lanczos),
[INFO] [stdout] 572 | |             convolver_boundary: ConvolverFFT::new(None, z, weight_functions, lanczos),
[INFO] [stdout] 573 | |         })
[INFO] [stdout]     | |__________^ expected `Arc<dyn Convolver<T, D>>`, found `Arc<CurvilinearConvolver<T, D>>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn Convolver<T, D> + 'static)>`
[INFO] [stdout]                found struct `Arc<CurvilinearConvolver<T, D>>`
[INFO] [stdout]     = help: `CurvilinearConvolver<T, D>` implements `Convolver` so you could box the found value and coerce it to the trait object `Box<dyn Convolver>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:597:26
[INFO] [stdout]     |
[INFO] [stdout] 597 |         let mut result = self.convolver.convolve(profile, weight_function);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:601:31
[INFO] [stdout]     |
[INFO] [stdout] 601 |           let result_boundary = self
[INFO] [stdout]     |  _______________________________^
[INFO] [stdout] 602 | |             .convolver_boundary
[INFO] [stdout] 603 | |             .convolve(profile_boundary, weight_function);
[INFO] [stdout]     | |________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:673:46
[INFO] [stdout]     |
[INFO] [stdout] 673 |           let functional_derivative_boundary = self
[INFO] [stdout]     |  ______________________________________________^
[INFO] [stdout] 674 | |             .convolver_boundary
[INFO] [stdout] 675 | |             .functional_derivative(&partial_derivatives_boundary);
[INFO] [stdout]     | |_________________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:623:22
[INFO] [stdout]     |
[INFO] [stdout] 623 |         let mut wd = self.convolver.weighted_densities(&density);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:627:27
[INFO] [stdout]     |
[INFO] [stdout] 627 |           let wd_boundary = self
[INFO] [stdout]     |  ___________________________^
[INFO] [stdout] 628 | |             .convolver_boundary
[INFO] [stdout] 629 | |             .weighted_densities(&density_boundary.to_owned());
[INFO] [stdout]     | |_____________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:662:41
[INFO] [stdout]     |
[INFO] [stdout] 662 |           let mut functional_derivative = self
[INFO] [stdout]     |  _________________________________________^
[INFO] [stdout] 663 | |             .convolver
[INFO] [stdout] 664 | |             .functional_derivative(&partial_derivatives_full);
[INFO] [stdout]     | |_____________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/convolver/mod.rs:673:46
[INFO] [stdout]     |
[INFO] [stdout] 673 |           let functional_derivative_boundary = self
[INFO] [stdout]     |  ______________________________________________^
[INFO] [stdout] 674 | |             .convolver_boundary
[INFO] [stdout] 675 | |             .functional_derivative(&partial_derivatives_boundary);
[INFO] [stdout]     | |_________________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/interface/mod.rs:98:45
[INFO] [stdout]     |
[INFO] [stdout]  98 |               profile.profile.specification = Arc::new(DFTSpecifications::total_moles_from_profile(
[INFO] [stdout]     |  _____________-----------------------------___^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             expected due to the type of this binding
[INFO] [stdout]  99 | |                 &profile.profile,
[INFO] [stdout] 100 | |             ));
[INFO] [stdout]     | |______________^ expected `Arc<_>`, found `Arc<DFTSpecifications>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn DFTSpecification<ndarray::Dim<[usize; 1]>, F> + 'static)>`
[INFO] [stdout]                found struct `Arc<DFTSpecifications>`
[INFO] [stdout]     = help: `DFTSpecifications` implements `DFTSpecification` so you could box the found value and coerce it to the trait object `Box<dyn DFTSpecification>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/interface/mod.rs:148:45
[INFO] [stdout]     |
[INFO] [stdout] 148 |               profile.profile.specification = Arc::new(DFTSpecifications::total_moles_from_profile(
[INFO] [stdout]     |  _____________-----------------------------___^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             expected due to the type of this binding
[INFO] [stdout] 149 | |                 &profile.profile,
[INFO] [stdout] 150 | |             ));
[INFO] [stdout]     | |______________^ expected `Arc<_>`, found `Arc<DFTSpecifications>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn DFTSpecification<ndarray::Dim<[usize; 1]>, F> + 'static)>`
[INFO] [stdout]                found struct `Arc<DFTSpecifications>`
[INFO] [stdout]     = help: `DFTSpecifications` implements `DFTSpecification` so you could box the found value and coerce it to the trait object `Box<dyn DFTSpecification>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/interface/mod.rs:98:45
[INFO] [stdout]     |
[INFO] [stdout]  98 |               profile.profile.specification = Arc::new(DFTSpecifications::total_moles_from_profile(
[INFO] [stdout]     |  _____________-----------------------------___^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             expected due to the type of this binding
[INFO] [stdout]  99 | |                 &profile.profile,
[INFO] [stdout] 100 | |             ));
[INFO] [stdout]     | |______________^ expected `Arc<_>`, found `Arc<DFTSpecifications>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn DFTSpecification<ndarray::Dim<[usize; 1]>, F> + 'static)>`
[INFO] [stdout]                found struct `Arc<DFTSpecifications>`
[INFO] [stdout]     = help: `DFTSpecifications` implements `DFTSpecification` so you could box the found value and coerce it to the trait object `Box<dyn DFTSpecification>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/interface/mod.rs:148:45
[INFO] [stdout]     |
[INFO] [stdout] 148 |               profile.profile.specification = Arc::new(DFTSpecifications::total_moles_from_profile(
[INFO] [stdout]     |  _____________-----------------------------___^
[INFO] [stdout]     | |             |
[INFO] [stdout]     | |             expected due to the type of this binding
[INFO] [stdout] 149 | |                 &profile.profile,
[INFO] [stdout] 150 | |             ));
[INFO] [stdout]     | |______________^ expected `Arc<_>`, found `Arc<DFTSpecifications>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn DFTSpecification<ndarray::Dim<[usize; 1]>, F> + 'static)>`
[INFO] [stdout]                found struct `Arc<DFTSpecifications>`
[INFO] [stdout]     = help: `DFTSpecifications` implements `DFTSpecification` so you could box the found value and coerce it to the trait object `Box<dyn DFTSpecification>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:36:18
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 .functional_derivative(t, &rho, self.convolver.as_ref())?;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:36:49
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 .functional_derivative(t, &rho, self.convolver.as_ref())?;
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:36:64
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 .functional_derivative(t, &rho, self.convolver.as_ref())?;
[INFO] [stdout]    |                                                                ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:63:41
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let (_, dfdrho) = self.bulk.eos.functional_derivative(
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             self.convolver.as_ref(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 |             self.convolver.as_ref(),
[INFO] [stdout]    |                            ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:36:18
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 .functional_derivative(t, &rho, self.convolver.as_ref())?;
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:36:49
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 .functional_derivative(t, &rho, self.convolver.as_ref())?;
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:36:64
[INFO] [stdout]    |
[INFO] [stdout] 36 |                 .functional_derivative(t, &rho, self.convolver.as_ref())?;
[INFO] [stdout]    |                                                                ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:63:41
[INFO] [stdout]    |
[INFO] [stdout] 63 |         let (_, dfdrho) = self.bulk.eos.functional_derivative(
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:66:13
[INFO] [stdout]    |
[INFO] [stdout] 66 |             self.convolver.as_ref(),
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]   --> src/profile/properties.rs:66:28
[INFO] [stdout]    |
[INFO] [stdout] 66 |             self.convolver.as_ref(),
[INFO] [stdout]    |                            ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]    |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]   --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]    |
[INFO] [stdout] 51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]    |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]    |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout] 53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |                                            |
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout] 55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                           |
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/convolver/mod.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]    |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:122:25
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let convolver = ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:126:45
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let helmholtz_energy_density = self.intrinsic_helmholtz_energy_density(
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |             convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:129:23
[INFO] [stdout]     |
[INFO] [stdout] 129 |             convolver.as_ref(),
[INFO] [stdout]     |                       ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:122:25
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let convolver = ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:126:45
[INFO] [stdout]     |
[INFO] [stdout] 126 |         let helmholtz_energy_density = self.intrinsic_helmholtz_energy_density(
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:129:13
[INFO] [stdout]     |
[INFO] [stdout] 129 |             convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:129:23
[INFO] [stdout]     |
[INFO] [stdout] 129 |             convolver.as_ref(),
[INFO] [stdout]     |                       ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:210:25
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let convolver = ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:214:49
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let mut helmholtz_energy_density = self.intrinsic_helmholtz_energy_density(
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |             convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:217:23
[INFO] [stdout]     |
[INFO] [stdout] 217 |             convolver.as_ref(),
[INFO] [stdout]     |                       ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:260:25
[INFO] [stdout]     |
[INFO] [stdout] 260 |         let convolver = ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:264:54
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let mut helmholtz_energy_density_dual = self.intrinsic_helmholtz_energy_density(
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:267:13
[INFO] [stdout]     |
[INFO] [stdout] 267 |             convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:267:23
[INFO] [stdout]     |
[INFO] [stdout] 267 |             convolver.as_ref(),
[INFO] [stdout]     |                       ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:210:25
[INFO] [stdout]     |
[INFO] [stdout] 210 |         let convolver = ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:214:49
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let mut helmholtz_energy_density = self.intrinsic_helmholtz_energy_density(
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:217:13
[INFO] [stdout]     |
[INFO] [stdout] 217 |             convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:217:23
[INFO] [stdout]     |
[INFO] [stdout] 217 |             convolver.as_ref(),
[INFO] [stdout]     |                       ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:260:25
[INFO] [stdout]     |
[INFO] [stdout] 260 |         let convolver = ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:264:54
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let mut helmholtz_energy_density_dual = self.intrinsic_helmholtz_energy_density(
[INFO] [stdout]     |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:267:13
[INFO] [stdout]     |
[INFO] [stdout] 267 |             convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:267:23
[INFO] [stdout]     |
[INFO] [stdout] 267 |             convolver.as_ref(),
[INFO] [stdout]     |                       ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:394:32
[INFO] [stdout]     |
[INFO] [stdout] 394 |         let convolver: Arc<dyn Convolver<_, D>> =
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:395:13
[INFO] [stdout]     |
[INFO] [stdout] 395 |             ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:399:18
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 .functional_derivative(t_dual, &rho_dual, convolver.as_ref())?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:399:59
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 .functional_derivative(t_dual, &rho_dual, convolver.as_ref())?;
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:414:30
[INFO] [stdout]     |
[INFO] [stdout] 414 |         let bulk_convolver = BulkConvolver::new(weight_functions);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:418:18
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 .functional_derivative(t_dual, &rho_bulk_dual, bulk_convolver.as_ref())?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:418:64
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 .functional_derivative(t_dual, &rho_bulk_dual, bulk_convolver.as_ref())?;
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:418:79
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 .functional_derivative(t_dual, &rho_bulk_dual, bulk_convolver.as_ref())?;
[INFO] [stdout]     |                                                                               ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:432:14
[INFO] [stdout]     |
[INFO] [stdout] 432 |             .bond_integrals(t_dual, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:432:50
[INFO] [stdout]     |
[INFO] [stdout] 432 |             .bond_integrals(t_dual, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:394:32
[INFO] [stdout]     |
[INFO] [stdout] 394 |         let convolver: Arc<dyn Convolver<_, D>> =
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:395:13
[INFO] [stdout]     |
[INFO] [stdout] 395 |             ConvolverFFT::plan(&self.grid, &weight_functions, self.lanczos);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:399:18
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 .functional_derivative(t_dual, &rho_dual, convolver.as_ref())?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:399:59
[INFO] [stdout]     |
[INFO] [stdout] 399 |                 .functional_derivative(t_dual, &rho_dual, convolver.as_ref())?;
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:414:30
[INFO] [stdout]     |
[INFO] [stdout] 414 |         let bulk_convolver = BulkConvolver::new(weight_functions);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:418:18
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 .functional_derivative(t_dual, &rho_bulk_dual, bulk_convolver.as_ref())?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:418:64
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 .functional_derivative(t_dual, &rho_bulk_dual, bulk_convolver.as_ref())?;
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:418:79
[INFO] [stdout]     |
[INFO] [stdout] 418 |                 .functional_derivative(t_dual, &rho_bulk_dual, bulk_convolver.as_ref())?;
[INFO] [stdout]     |                                                                               ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:432:14
[INFO] [stdout]     |
[INFO] [stdout] 432 |             .bond_integrals(t_dual, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/properties.rs:432:50
[INFO] [stdout]     |
[INFO] [stdout] 432 |             .bond_integrals(t_dual, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 100 | #[derive(Clone)]
[INFO] [stdout]     |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub convolver: Arc<dyn Convolver<f64, D>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 100 | #[derive(Clone)]
[INFO] [stdout]     |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub specification: Arc<dyn DFTSpecification<D, F>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:216:25
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let convolver = ConvolverFFT::plan(&grid, &weight_functions, lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 100 | #[derive(Clone)]
[INFO] [stdout]     |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 104 |     pub convolver: Arc<dyn Convolver<f64, D>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:232:38
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let mut bonds = bulk.eos.bond_integrals(t, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:232:69
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let mut bonds = bulk.eos.bond_integrals(t, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:107:5
[INFO] [stdout]     |
[INFO] [stdout] 100 | #[derive(Clone)]
[INFO] [stdout]     |          ----- in this derive macro expansion
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub specification: Arc<dyn DFTSpecification<D, F>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:232:79
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let mut bonds = bulk.eos.bond_integrals(t, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                                                               ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:246:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |             convolver,
[INFO] [stdout]     |             ^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:249:28
[INFO] [stdout]     |
[INFO] [stdout] 249 |             specification: Arc::new(DFTSpecifications::ChemicalPotential),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/profile/mod.rs:249:28
[INFO] [stdout]     |
[INFO] [stdout] 249 |             specification: Arc::new(DFTSpecifications::ChemicalPotential),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<dyn DFTSpecification<D, F>>`, found `Arc<DFTSpecifications>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn DFTSpecification<D, F> + 'static)>`
[INFO] [stdout]                found struct `Arc<DFTSpecifications>`
[INFO] [stdout]     = help: `DFTSpecifications` implements `DFTSpecification` so you could box the found value and coerce it to the trait object `Box<dyn DFTSpecification>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:216:25
[INFO] [stdout]     |
[INFO] [stdout] 216 |         let convolver = ConvolverFFT::plan(&grid, &weight_functions, lanczos);
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:232:38
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let mut bonds = bulk.eos.bond_integrals(t, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:232:69
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let mut bonds = bulk.eos.bond_integrals(t, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:232:79
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let mut bonds = bulk.eos.bond_integrals(t, &exp_dfdrho, convolver.as_ref());
[INFO] [stdout]     |                                                                               ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:246:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |             convolver,
[INFO] [stdout]     |             ^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:249:28
[INFO] [stdout]     |
[INFO] [stdout] 249 |             specification: Arc::new(DFTSpecifications::ChemicalPotential),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/profile/mod.rs:249:28
[INFO] [stdout]     |
[INFO] [stdout] 249 |             specification: Arc::new(DFTSpecifications::ChemicalPotential),
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc<dyn DFTSpecification<D, F>>`, found `Arc<DFTSpecifications>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected struct `Arc<(dyn DFTSpecification<D, F> + 'static)>`
[INFO] [stdout]                found struct `Arc<DFTSpecifications>`
[INFO] [stdout]     = help: `DFTSpecifications` implements `DFTSpecification` so you could box the found value and coerce it to the trait object `Box<dyn DFTSpecification>`, you will have to change the expected type as well
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:367:12
[INFO] [stdout]     |
[INFO] [stdout] 367 |           Ok(self
[INFO] [stdout]     |  ____________^
[INFO] [stdout] 368 | |             .convolver
[INFO] [stdout] 369 | |             .weighted_densities(&self.density.to_reduced()))
[INFO] [stdout]     | |___________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:410:18
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 .functional_derivative(temperature, density, self.convolver.as_ref())?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:410:62
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 .functional_derivative(temperature, density, self.convolver.as_ref())?;
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:410:77
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 .functional_derivative(temperature, density, self.convolver.as_ref())?;
[INFO] [stdout]     |                                                                             ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:416:30
[INFO] [stdout]     |
[INFO] [stdout] 416 |         let bulk_convolver = BulkConvolver::new(self.bulk.eos.weight_functions(temperature));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:417:46
[INFO] [stdout]     |
[INFO] [stdout] 417 |         let (_, dfdrho_bulk) = self.bulk.eos.functional_derivative(
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 |             bulk_convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:420:28
[INFO] [stdout]     |
[INFO] [stdout] 420 |             bulk_convolver.as_ref(),
[INFO] [stdout]     |                            ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:436:14
[INFO] [stdout]     |
[INFO] [stdout] 436 |             .bond_integrals(temperature, &exp_dfdrho, self.convolver.as_ref());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:436:55
[INFO] [stdout]     |
[INFO] [stdout] 436 |             .bond_integrals(temperature, &exp_dfdrho, self.convolver.as_ref());
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:436:70
[INFO] [stdout]     |
[INFO] [stdout] 436 |             .bond_integrals(temperature, &exp_dfdrho, self.convolver.as_ref());
[INFO] [stdout]     |                                                                      ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:367:12
[INFO] [stdout]     |
[INFO] [stdout] 367 |           Ok(self
[INFO] [stdout]     |  ____________^
[INFO] [stdout] 368 | |             .convolver
[INFO] [stdout] 369 | |             .weighted_densities(&self.density.to_reduced()))
[INFO] [stdout]     | |___________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:410:18
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 .functional_derivative(temperature, density, self.convolver.as_ref())?;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:410:62
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 .functional_derivative(temperature, density, self.convolver.as_ref())?;
[INFO] [stdout]     |                                                              ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:410:77
[INFO] [stdout]     |
[INFO] [stdout] 410 |                 .functional_derivative(temperature, density, self.convolver.as_ref())?;
[INFO] [stdout]     |                                                                             ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:416:30
[INFO] [stdout]     |
[INFO] [stdout] 416 |         let bulk_convolver = BulkConvolver::new(self.bulk.eos.weight_functions(temperature));
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:417:46
[INFO] [stdout]     |
[INFO] [stdout] 417 |         let (_, dfdrho_bulk) = self.bulk.eos.functional_derivative(
[INFO] [stdout]     |                                              ^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:420:13
[INFO] [stdout]     |
[INFO] [stdout] 420 |             bulk_convolver.as_ref(),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:420:28
[INFO] [stdout]     |
[INFO] [stdout] 420 |             bulk_convolver.as_ref(),
[INFO] [stdout]     |                            ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:463:15
[INFO] [stdout]     |
[INFO] [stdout] 463 |               - self
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 464 | |                 .specification
[INFO] [stdout] 465 | |                 .calculate_bulk_density(self, bulk_density, &z)?;
[INFO] [stdout]     | |_______________________________________________________________^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:436:14
[INFO] [stdout]     |
[INFO] [stdout] 436 |             .bond_integrals(temperature, &exp_dfdrho, self.convolver.as_ref());
[INFO] [stdout]     |              ^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:436:55
[INFO] [stdout]     |
[INFO] [stdout] 436 |             .bond_integrals(temperature, &exp_dfdrho, self.convolver.as_ref());
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:436:70
[INFO] [stdout]     |
[INFO] [stdout] 436 |             .bond_integrals(temperature, &exp_dfdrho, self.convolver.as_ref());
[INFO] [stdout]     |                                                                      ^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `DFTSpecification` is not dyn compatible
[INFO] [stdout]    --> src/profile/mod.rs:463:15
[INFO] [stdout]     |
[INFO] [stdout] 463 |               - self
[INFO] [stdout]     |  _______________^
[INFO] [stdout] 464 | |                 .specification
[INFO] [stdout] 465 | |                 .calculate_bulk_density(self, bulk_density, &z)?;
[INFO] [stdout]     | |_______________________________________________________________^ `DFTSpecification` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/profile/mod.rs:27:11
[INFO] [stdout]     |
[INFO] [stdout]  27 | pub trait DFTSpecification<D: Dimension, F>: Send + Sync {
[INFO] [stdout]     |           ---------------- this trait is not dyn compatible...
[INFO] [stdout]     = help: only type `profile::DFTSpecifications` implements `DFTSpecification` within this crate; consider using it directly instead.
[INFO] [stdout]     = note: `DFTSpecification` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:564:34
[INFO] [stdout]     |
[INFO] [stdout] 564 |         let weighted_densities = self.convolver.weighted_densities(density);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:564:34
[INFO] [stdout]     |
[INFO] [stdout] 564 |         let weighted_densities = self.convolver.weighted_densities(density);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:593:40
[INFO] [stdout]     |
[INFO] [stdout] 593 |         let delta_weighted_densities = self.convolver.weighted_densities(delta_density);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:614:9
[INFO] [stdout]     |
[INFO] [stdout] 614 | /         self.convolver
[INFO] [stdout] 615 | |             .functional_derivative(&delta_partial_derivatives)
[INFO] [stdout]     | |______________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:593:40
[INFO] [stdout]     |
[INFO] [stdout] 593 |         let delta_weighted_densities = self.convolver.weighted_densities(delta_density);
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:684:29
[INFO] [stdout]     |
[INFO] [stdout] 684 | / ...                   self.convolver
[INFO] [stdout] 685 | | ...                       .convolve(i0, &bond_weight_functions[edge.id()]),
[INFO] [stdout]     | |__________________________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:688:30
[INFO] [stdout]     |
[INFO] [stdout] 688 |   ...                   (self
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 689 | | ...                       .convolver
[INFO] [stdout] 690 | | ...                       .convolve(delta_i0, &bond_weight_functions[edge.id()])
[INFO] [stdout]     | |________________________________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:614:9
[INFO] [stdout]     |
[INFO] [stdout] 614 | /         self.convolver
[INFO] [stdout] 615 | |             .functional_derivative(&delta_partial_derivatives)
[INFO] [stdout]     | |______________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:684:29
[INFO] [stdout]     |
[INFO] [stdout] 684 | / ...                   self.convolver
[INFO] [stdout] 685 | | ...                       .convolve(i0, &bond_weight_functions[edge.id()]),
[INFO] [stdout]     | |__________________________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0038]: the trait `Convolver` is not dyn compatible
[INFO] [stdout]    --> src/solver.rs:688:30
[INFO] [stdout]     |
[INFO] [stdout] 688 |   ...                   (self
[INFO] [stdout]     |  ________________________^
[INFO] [stdout] 689 | | ...                       .convolver
[INFO] [stdout] 690 | | ...                       .convolve(delta_i0, &bond_weight_functions[edge.id()])
[INFO] [stdout]     | |________________________________________________________________________________^ `Convolver` is not dyn compatible
[INFO] [stdout]     |
[INFO] [stdout] note: for a trait to be dyn compatible it needs to allow building a vtable
[INFO] [stdout]       for more information, visit <https://doc.rust-lang.org/reference/items/traits.html#dyn-compatibility>
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/ndarray-0.17.2/src/dimension/dimension_trait.rs:51:19
[INFO] [stdout]     |
[INFO] [stdout]  51 |     + DimMax<Ix0, Output = Self>
[INFO] [stdout]     |                   ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  52 |     + DimMax<Self, Output = Self>
[INFO] [stdout]     |                    ^^^^^^^^^^^^^ ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]  53 |     + DimMax<IxDyn, Output = IxDyn>
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                     ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  54 |     + DimMax<<Self as Dimension>::Smaller, Output = Self>
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^
[INFO] [stdout]     |                                            |
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                            ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D`
[INFO] [stdout]  55 |     + DimMax<<Self as Dimension>::Larger, Output = <Self as Dimension>::Larger>
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                           |
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<<D as ndarray::Dimension>::Smaller>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<ndarray::IxDynImpl>>>::Output == ndarray::Dim<ndarray::IxDynImpl>` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<D>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |                                           ...because it has conflicting associated item bounds for `Output` in supertraits: `<D as ndarray::DimMax<ndarray::Dim<[usize; 0]>>>::Output == D` and `<D as ndarray::DimMax<<D as ndarray::Dimension>::Larger>>::Output == <D as ndarray::Dimension>::Larger`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/convolver/mod.rs:24:11
[INFO] [stdout]     |
[INFO] [stdout]  24 | pub trait Convolver<T, D: Dimension>: Send + Sync {
[INFO] [stdout]     |           --------- this trait is not dyn compatible...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0038, E0277, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0038`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `feos-dft` (lib test) due to 102 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0038, E0277, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0038`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `feos-dft` (lib) due to 102 previous errors
[INFO] running `Command { std: "docker" "inspect" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b", kill_on_drop: false }`
[INFO] [stdout] f900d09b9d5874847d8f080d1e25d5fda2018f15c6a4c73c7c8a165d65b9855b
