[INFO] fetching crate pymagba_binding 0.6.0...
[INFO] checking pymagba_binding-0.6.0 against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] extracting crate pymagba_binding 0.6.0 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate pymagba_binding 0.6.0
[INFO] finished tweaking crates.io crate pymagba_binding 0.6.0
[INFO] tweaked toml for crates.io crate pymagba_binding 0.6.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate pymagba_binding 0.6.0 on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate pymagba_binding 0.6.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:51:12
[INFO] [stderr]    |
[INFO] [stderr] 51 | homepage = "https://github.com/p-sira/pymagba"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 56 | repository = "https://github.com/p-sira/pymagba"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `pymagba_binding` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:c0af3998e971868164375a7dfb646c9933ddd1a3bdb00fa2041266763dc1eeab" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee
[INFO] running `Command { std: "docker" "start" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee", 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" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee", 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" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:51:12
[INFO] [stderr]    |
[INFO] [stderr] 51 | homepage = "https://github.com/p-sira/pymagba"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 56 | repository = "https://github.com/p-sira/pymagba"
[INFO] [stderr]    |              -----------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `pymagba_binding` (manifest) generated 1 warning
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking rustc-std-workspace-alloc v1.0.1
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]    Compiling pyo3-build-config v0.28.2
[INFO] [stderr]    Compiling nalgebra-macros v0.3.0
[INFO] [stderr]    Compiling derive_more-impl v2.1.1
[INFO] [stderr]     Checking inventory v0.3.22
[INFO] [stderr]     Checking num-lazy v0.4.1
[INFO] [stderr]    Compiling concat-idents v1.1.5
[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 enum_dispatch v0.3.13
[INFO] [stderr]    Compiling delegate v0.13.5
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking stl_io v0.11.0
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]    Compiling getset v0.1.6
[INFO] [stderr]     Checking simba v0.9.1
[INFO] [stderr]     Checking ndarray v0.17.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking derive_more v2.1.1
[INFO] [stderr]    Compiling pyo3-ffi v0.28.2
[INFO] [stderr]    Compiling pyo3-macros-backend v0.28.2
[INFO] [stderr]    Compiling pyo3 v0.28.2
[INFO] [stderr]    Compiling numpy v0.28.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling numeric_literals v0.2.0
[INFO] [stderr]     Checking ellip v1.1.0
[INFO] [stderr]     Checking nalgebra v0.34.2
[INFO] [stderr]    Compiling pyo3-macros v0.28.2
[INFO] [stderr]     Checking openmesh v0.2.3
[INFO] [stderr]     Checking magba v0.6.2
[INFO] [stderr]     Checking pymagba_binding v0.6.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/collection.rs:73:64
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn append(&mut self, source: Py<PyAny>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/collection.rs:84:47
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/collection.rs:95:77
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn __setstate__(&mut self, state: Bound<'_, PyDict>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:171:64
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn append(&mut self, sensor: Py<PyAny>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:182:47
[INFO] [stdout]     |
[INFO] [stdout] 182 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<PyDict>> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:193:77
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn __setstate__(&mut self, state: Bound<'_, PyDict>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:216:69
[INFO] [stdout]     |
[INFO] [stdout] 216 |     fn read_all(&self, source: Bound<'_, PyAny>, py: Python<'_>) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/circular.rs:66:47
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/circular.rs:78:74
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/path.rs:80:47
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/path.rs:100:74
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/sheet.rs:89:10
[INFO] [stdout]    |
[INFO] [stdout] 89 |     ) -> PyResult<Bound<'py, Self>> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/sheet.rs:142:47
[INFO] [stdout]     |
[INFO] [stdout] 142 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/sheet.rs:155:74
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/triangle.rs:92:47
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/triangle.rs:104:74
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/fields.rs:437:6
[INFO] [stdout]     |
[INFO] [stdout] 437 | ) -> PyResult<Bound<'py, numpy::PyArray2<f64>>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/fields.rs:574:6
[INFO] [stdout]     |
[INFO] [stdout] 574 | ) -> PyResult<Bound<'py, numpy::PyArray2<f64>>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cuboid.rs:70:47
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cuboid.rs:82:74
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cylinder.rs:82:47
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cylinder.rs:95:74
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/dipole.rs:53:47
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/dipole.rs:64:74
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/mesh.rs:81:10
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ) -> PyResult<Bound<'py, Self>> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/magnets/mesh.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/magnets/mesh.rs:143:74
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/sphere.rs:67:47
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/sphere.rs:79:74
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/tetrahedron.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/magnets/tetrahedron.rs:107:74
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/triangle.rs:87:47
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/triangle.rs:99:74
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_latch.rs:86:47
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/hall_latch.rs:100:80
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn __setstate__(&mut self, state: pyo3::Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/hall_latch.rs:113:67
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn read_state(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<bool> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_switch.rs:73:47
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_switch.rs:86:80
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn __setstate__(&mut self, state: pyo3::Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_switch.rs:98:67
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn read_state(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<bool> {
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/linear_hall_sensor.rs:92:47
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/linear_hall_sensor.rs:106:80
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn __setstate__(&mut self, state: pyo3::Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/linear_hall_sensor.rs:119:69
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn read_voltage(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<f64> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/linear_hall_sensor.rs:124:71
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn compute_B_perp(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<f64> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/macros.rs:10:69
[INFO] [stdout]     |
[INFO] [stdout]   6 | macro_rules! impl_unified_read {
[INFO] [stdout] ...
[INFO] [stdout]  10 |             fn read(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<$output_type> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/sensors/hall_latch.rs:120:1
[INFO] [stdout]     |
[INFO] [stdout] 120 | impl_unified_read!(HallLatch, bool, Digital);
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/macros.rs:10:69
[INFO] [stdout]     |
[INFO] [stdout]   6 | macro_rules! impl_unified_read {
[INFO] [stdout] ...
[INFO] [stdout]  10 |             fn read(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<$output_type> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/sensors/hall_switch.rs:105:1
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl_unified_read!(HallSwitch, bool, Digital);
[INFO] [stdout]     | --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/macros.rs:10:69
[INFO] [stdout]     |
[INFO] [stdout]   6 | macro_rules! impl_unified_read {
[INFO] [stdout] ...
[INFO] [stdout]  10 |             fn read(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<$output_type> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/sensors/linear_hall_sensor.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl_unified_read!(LinearHallSensor, f64, Scalar);
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/collection.rs:73:64
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn append(&mut self, source: Py<PyAny>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/collection.rs:84:47
[INFO] [stdout]    |
[INFO] [stdout] 84 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/collection.rs:95:77
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn __setstate__(&mut self, state: Bound<'_, PyDict>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]    |                                                                             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:171:64
[INFO] [stdout]     |
[INFO] [stdout] 171 |     fn append(&mut self, sensor: Py<PyAny>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:182:47
[INFO] [stdout]     |
[INFO] [stdout] 182 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<PyDict>> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:193:77
[INFO] [stdout]     |
[INFO] [stdout] 193 |     fn __setstate__(&mut self, state: Bound<'_, PyDict>, py: Python<'_>) -> PyResult<()> {
[INFO] [stdout]     |                                                                             ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/collection.rs:216:69
[INFO] [stdout]     |
[INFO] [stdout] 216 |     fn read_all(&self, source: Bound<'_, PyAny>, py: Python<'_>) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/circular.rs:66:47
[INFO] [stdout]    |
[INFO] [stdout] 66 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/circular.rs:78:74
[INFO] [stdout]    |
[INFO] [stdout] 78 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/path.rs:80:47
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/path.rs:100:74
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/sheet.rs:89:10
[INFO] [stdout]    |
[INFO] [stdout] 89 |     ) -> PyResult<Bound<'py, Self>> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/sheet.rs:142:47
[INFO] [stdout]     |
[INFO] [stdout] 142 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/sheet.rs:155:74
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/currents/triangle.rs:92:47
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/currents/triangle.rs:104:74
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/fields.rs:437:6
[INFO] [stdout]     |
[INFO] [stdout] 437 | ) -> PyResult<Bound<'py, numpy::PyArray2<f64>>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/fields.rs:574:6
[INFO] [stdout]     |
[INFO] [stdout] 574 | ) -> PyResult<Bound<'py, numpy::PyArray2<f64>>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cuboid.rs:70:47
[INFO] [stdout]    |
[INFO] [stdout] 70 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cuboid.rs:82:74
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cylinder.rs:82:47
[INFO] [stdout]    |
[INFO] [stdout] 82 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/cylinder.rs:95:74
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/dipole.rs:53:47
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/dipole.rs:64:74
[INFO] [stdout]    |
[INFO] [stdout] 64 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/mesh.rs:81:10
[INFO] [stdout]    |
[INFO] [stdout] 81 |     ) -> PyResult<Bound<'py, Self>> {
[INFO] [stdout]    |          ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/magnets/mesh.rs:130:47
[INFO] [stdout]     |
[INFO] [stdout] 130 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/magnets/mesh.rs:143:74
[INFO] [stdout]     |
[INFO] [stdout] 143 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/sphere.rs:67:47
[INFO] [stdout]    |
[INFO] [stdout] 67 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/sphere.rs:79:74
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/tetrahedron.rs:95:47
[INFO] [stdout]    |
[INFO] [stdout] 95 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/magnets/tetrahedron.rs:107:74
[INFO] [stdout]     |
[INFO] [stdout] 107 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/triangle.rs:87:47
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/magnets/triangle.rs:99:74
[INFO] [stdout]    |
[INFO] [stdout] 99 |     fn __setstate__(&mut self, state: Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                          ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_latch.rs:86:47
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/hall_latch.rs:100:80
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn __setstate__(&mut self, state: pyo3::Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/hall_latch.rs:113:67
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn read_state(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<bool> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_switch.rs:73:47
[INFO] [stdout]    |
[INFO] [stdout] 73 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_switch.rs:86:80
[INFO] [stdout]    |
[INFO] [stdout] 86 |     fn __setstate__(&mut self, state: pyo3::Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]    |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/hall_switch.rs:98:67
[INFO] [stdout]    |
[INFO] [stdout] 98 |     fn read_state(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<bool> {
[INFO] [stdout]    |                                                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]   --> src/sensors/linear_hall_sensor.rs:92:47
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn __getstate__(&self, py: Python<'_>) -> PyResult<Py<pyo3::types::PyDict>> {
[INFO] [stdout]    |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/linear_hall_sensor.rs:106:80
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn __setstate__(&mut self, state: pyo3::Bound<'_, pyo3::types::PyDict>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/linear_hall_sensor.rs:119:69
[INFO] [stdout]     |
[INFO] [stdout] 119 |     fn read_voltage(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<f64> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/linear_hall_sensor.rs:124:71
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn compute_B_perp(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<f64> {
[INFO] [stdout]     |                                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/macros.rs:10:69
[INFO] [stdout]     |
[INFO] [stdout]   6 | macro_rules! impl_unified_read {
[INFO] [stdout] ...
[INFO] [stdout]  10 |             fn read(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<$output_type> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/sensors/hall_latch.rs:120:1
[INFO] [stdout]     |
[INFO] [stdout] 120 | impl_unified_read!(HallLatch, bool, Digital);
[INFO] [stdout]     | -------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/macros.rs:10:69
[INFO] [stdout]     |
[INFO] [stdout]   6 | macro_rules! impl_unified_read {
[INFO] [stdout] ...
[INFO] [stdout]  10 |             fn read(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<$output_type> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/sensors/hall_switch.rs:105:1
[INFO] [stdout]     |
[INFO] [stdout] 105 | impl_unified_read!(HallSwitch, bool, Digital);
[INFO] [stdout]     | --------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/sensors/macros.rs:10:69
[INFO] [stdout]     |
[INFO] [stdout]   6 | macro_rules! impl_unified_read {
[INFO] [stdout] ...
[INFO] [stdout]  10 |             fn read(&self, source: pyo3::Bound<'_, pyo3::PyAny>) -> pyo3::PyResult<$output_type> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/sensors/linear_hall_sensor.rs:131:1
[INFO] [stdout]     |
[INFO] [stdout] 131 | impl_unified_read!(LinearHallSensor, f64, Scalar);
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `pymagba_binding` (lib test) due to 46 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `pymagba_binding` (lib) due to 46 previous errors
[INFO] running `Command { std: "docker" "inspect" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee", kill_on_drop: false }`
[INFO] [stdout] 0901c057b2ae0a9e8603b5b901452b54758fac23692213982e20ece9c8bd4aee
