[INFO] cloning repository https://github.com/d-michail/python-rheaps
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/d-michail/python-rheaps" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fd-michail%2Fpython-rheaps", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fd-michail%2Fpython-rheaps'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 553cfc6106a90044f6ad11c0653613aa97ccf17c
[INFO] checking d-michail/python-rheaps against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fd-michail%2Fpython-rheaps" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/d-michail/python-rheaps
[INFO] finished tweaking git repo https://github.com/d-michail/python-rheaps
[INFO] tweaked toml for git repo https://github.com/d-michail/python-rheaps written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/d-michail/python-rheaps 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 git repo https://github.com/d-michail/python-rheaps 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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] 5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0
[INFO] running `Command { std: "docker" "start" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0", 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" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0", 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" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]     Checking inventory v0.3.24
[INFO] [stderr]     Checking num-bigint v0.4.8
[INFO] [stderr]    Compiling pyo3-build-config v0.29.2
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling pyo3-ffi v0.29.2
[INFO] [stderr]    Compiling pyo3 v0.29.2
[INFO] [stderr]     Checking rheaps v0.16.0
[INFO] [stderr]    Compiling pyo3-macros-backend v0.29.2
[INFO] [stderr]    Compiling pyo3-macros v0.29.2
[INFO] [stderr]     Checking _rheaps v0.16.0 (/opt/rustwide/workdir)
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/heaps/tree.rs:136:50
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn push(&mut self, key: Bound<'_, PyAny>) -> 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/heaps/tree.rs:145:39
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn peek(&self, py: Python<'_>) -> PyResult<Option<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/heaps/tree.rs:155:42
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn pop(&mut self, py: Python<'_>) -> PyResult<Option<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/heaps/tree.rs:199:45
[INFO] [stdout]     |
[INFO] [stdout] 199 |     fn meld(&mut self, other: &mut Self) -> 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/heaps/tree.rs:277:45
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn meld(&mut self, other: &mut Self) -> 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/macros.rs:131:51
[INFO] [stdout]     |
[INFO] [stdout] 127 |   macro_rules! double_ended_value_heap_methods {
[INFO] [stdout] ...
[INFO] [stdout] 131 |               fn peek_max(&self, py: Python<'_>) -> PyResult<Option<Py<PyAny>>> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | / crate::double_ended_value_heap_methods!(
[INFO] [stdout]  37 | |     MinMaxBinaryArrayDoubleEndedHeap,
[INFO] [stdout]  38 | |     MinMaxBinaryArrayDoubleEndedHeapRepr
[INFO] [stdout]  39 | | );
[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/macros.rs:146:54
[INFO] [stdout]     |
[INFO] [stdout] 127 |   macro_rules! double_ended_value_heap_methods {
[INFO] [stdout] ...
[INFO] [stdout] 146 |               fn pop_max(&mut self, py: Python<'_>) -> PyResult<Option<Py<PyAny>>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | / crate::double_ended_value_heap_methods!(
[INFO] [stdout]  37 | |     MinMaxBinaryArrayDoubleEndedHeap,
[INFO] [stdout]  38 | |     MinMaxBinaryArrayDoubleEndedHeapRepr
[INFO] [stdout]  39 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:51:1
[INFO] [stdout]     |
[INFO] [stdout]  51 | / crate::decrease_key_methods!(
[INFO] [stdout]  52 | |     BinaryArrayAddressableHeap,
[INFO] [stdout]  53 | |     BinaryArrayAddressableHeapRepr,
[INFO] [stdout]  54 | |     crate::handles::AddressableHandle
[INFO] [stdout]  55 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout]  68 | / crate::decrease_key_methods!(
[INFO] [stdout]  69 | |     DaryArrayAddressableHeap,
[INFO] [stdout]  70 | |     DaryArrayAddressableHeapRepr,
[INFO] [stdout]  71 | |     crate::handles::AddressableHandle
[INFO] [stdout]  72 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/dag.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | crate::decrease_key_methods!(HollowHeap, HollowHeapRepr, crate::handles::HollowHandle);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 |   tree_addressable_meldable!(PairingHeap, PairingHeapRepr, rheaps::tree::PairingHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:16:1
[INFO] [stdout]     |
[INFO] [stdout]  16 | / tree_addressable_meldable!(
[INFO] [stdout]  17 | |     PurePairingHeap,
[INFO] [stdout]  18 | |     PurePairingHeapRepr,
[INFO] [stdout]  19 | |     rheaps::tree::PurePairingHeap
[INFO] [stdout]  20 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | / tree_addressable_meldable!(
[INFO] [stdout]  22 | |     CostlessMeldPairingHeap,
[INFO] [stdout]  23 | |     CostlessMeldPairingHeapRepr,
[INFO] [stdout]  24 | |     rheaps::tree::CostlessMeldPairingHeap
[INFO] [stdout]  25 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / tree_addressable_meldable!(
[INFO] [stdout]  27 | |     RankPairingHeap,
[INFO] [stdout]  28 | |     RankPairingHeapRepr,
[INFO] [stdout]  29 | |     rheaps::tree::RankPairingHeap
[INFO] [stdout]  30 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 |   tree_addressable_meldable!(LeftistHeap, LeftistHeapRepr, rheaps::tree::LeftistHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:32:1
[INFO] [stdout]     |
[INFO] [stdout]  32 |   tree_addressable_meldable!(SkewHeap, SkewHeapRepr, rheaps::tree::SkewHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 |   tree_addressable_meldable!(FibonacciHeap, FibonacciHeapRepr, rheaps::tree::FibonacciHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout]  34 | / tree_addressable_meldable!(
[INFO] [stdout]  35 | |     SimpleFibonacciHeap,
[INFO] [stdout]  36 | |     SimpleFibonacciHeapRepr,
[INFO] [stdout]  37 | |     rheaps::tree::SimpleFibonacciHeap
[INFO] [stdout]  38 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:39:1
[INFO] [stdout]     |
[INFO] [stdout]  39 | / tree_addressable_meldable!(
[INFO] [stdout]  40 | |     StrictFibonacciHeap,
[INFO] [stdout]  41 | |     StrictFibonacciHeapRepr,
[INFO] [stdout]  42 | |     rheaps::tree::StrictFibonacciHeap
[INFO] [stdout]  43 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:55:1
[INFO] [stdout]     |
[INFO] [stdout]  55 | / crate::decrease_key_methods!(
[INFO] [stdout]  56 | |     BinaryTreeAddressableHeap,
[INFO] [stdout]  57 | |     BinaryTreeAddressableHeapRepr,
[INFO] [stdout]  58 | |     crate::handles::TreeHandle
[INFO] [stdout]  59 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:72:1
[INFO] [stdout]     |
[INFO] [stdout]  72 | / crate::decrease_key_methods!(
[INFO] [stdout]  73 | |     DaryTreeAddressableHeap,
[INFO] [stdout]  74 | |     DaryTreeAddressableHeapRepr,
[INFO] [stdout]  75 | |     crate::handles::TreeHandle
[INFO] [stdout]  76 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | macro_rules! meldable_methods {
[INFO] [stdout] ...
[INFO] [stdout] 495 |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/dag.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | crate::meldable_methods!(HollowHeap, HollowHeapRepr, rheaps::dag::HollowHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 |   tree_addressable_meldable!(PairingHeap, PairingHeapRepr, rheaps::tree::PairingHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:16:1
[INFO] [stdout]     |
[INFO] [stdout]  16 | / tree_addressable_meldable!(
[INFO] [stdout]  17 | |     PurePairingHeap,
[INFO] [stdout]  18 | |     PurePairingHeapRepr,
[INFO] [stdout]  19 | |     rheaps::tree::PurePairingHeap
[INFO] [stdout]  20 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | / tree_addressable_meldable!(
[INFO] [stdout]  22 | |     CostlessMeldPairingHeap,
[INFO] [stdout]  23 | |     CostlessMeldPairingHeapRepr,
[INFO] [stdout]  24 | |     rheaps::tree::CostlessMeldPairingHeap
[INFO] [stdout]  25 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / tree_addressable_meldable!(
[INFO] [stdout]  27 | |     RankPairingHeap,
[INFO] [stdout]  28 | |     RankPairingHeapRepr,
[INFO] [stdout]  29 | |     rheaps::tree::RankPairingHeap
[INFO] [stdout]  30 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 |   tree_addressable_meldable!(LeftistHeap, LeftistHeapRepr, rheaps::tree::LeftistHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:32:1
[INFO] [stdout]     |
[INFO] [stdout]  32 |   tree_addressable_meldable!(SkewHeap, SkewHeapRepr, rheaps::tree::SkewHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 |   tree_addressable_meldable!(FibonacciHeap, FibonacciHeapRepr, rheaps::tree::FibonacciHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout]  34 | / tree_addressable_meldable!(
[INFO] [stdout]  35 | |     SimpleFibonacciHeap,
[INFO] [stdout]  36 | |     SimpleFibonacciHeapRepr,
[INFO] [stdout]  37 | |     rheaps::tree::SimpleFibonacciHeap
[INFO] [stdout]  38 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:39:1
[INFO] [stdout]     |
[INFO] [stdout]  39 | / tree_addressable_meldable!(
[INFO] [stdout]  40 | |     StrictFibonacciHeap,
[INFO] [stdout]  41 | |     StrictFibonacciHeapRepr,
[INFO] [stdout]  42 | |     rheaps::tree::StrictFibonacciHeap
[INFO] [stdout]  43 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:533:18
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 533 | |             ) -> PyResult<Option<($handle, Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:553:54
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 553 | |             fn pop_max(&mut self, py: Python<'_>) -> PyResult<Option<(Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:567:83
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 567 | |             fn increase_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:533:18
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 533 | |             ) -> PyResult<Option<($handle, Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:553:54
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 553 | |             fn pop_max(&mut self, py: Python<'_>) -> PyResult<Option<(Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:567:83
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 567 | |             fn increase_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/heaps/tree.rs:136:50
[INFO] [stdout]     |
[INFO] [stdout] 136 |     fn push(&mut self, key: Bound<'_, PyAny>) -> 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] [stderr] error: could not compile `_rheaps` (lib) due to 41 previous errors
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/heaps/tree.rs:145:39
[INFO] [stdout]     |
[INFO] [stdout] 145 |     fn peek(&self, py: Python<'_>) -> PyResult<Option<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] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> src/heaps/tree.rs:155:42
[INFO] [stdout]     |
[INFO] [stdout] 155 |     fn pop(&mut self, py: Python<'_>) -> PyResult<Option<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/heaps/tree.rs:199:45
[INFO] [stdout]     |
[INFO] [stdout] 199 |     fn meld(&mut self, other: &mut Self) -> 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/heaps/tree.rs:277:45
[INFO] [stdout]     |
[INFO] [stdout] 277 |     fn meld(&mut self, other: &mut Self) -> 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/macros.rs:131:51
[INFO] [stdout]     |
[INFO] [stdout] 127 |   macro_rules! double_ended_value_heap_methods {
[INFO] [stdout] ...
[INFO] [stdout] 131 |               fn peek_max(&self, py: Python<'_>) -> PyResult<Option<Py<PyAny>>> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | / crate::double_ended_value_heap_methods!(
[INFO] [stdout]  37 | |     MinMaxBinaryArrayDoubleEndedHeap,
[INFO] [stdout]  38 | |     MinMaxBinaryArrayDoubleEndedHeapRepr
[INFO] [stdout]  39 | | );
[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/macros.rs:146:54
[INFO] [stdout]     |
[INFO] [stdout] 127 |   macro_rules! double_ended_value_heap_methods {
[INFO] [stdout] ...
[INFO] [stdout] 146 |               fn pop_max(&mut self, py: Python<'_>) -> PyResult<Option<Py<PyAny>>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | / crate::double_ended_value_heap_methods!(
[INFO] [stdout]  37 | |     MinMaxBinaryArrayDoubleEndedHeap,
[INFO] [stdout]  38 | |     MinMaxBinaryArrayDoubleEndedHeapRepr
[INFO] [stdout]  39 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:51:1
[INFO] [stdout]     |
[INFO] [stdout]  51 | / crate::decrease_key_methods!(
[INFO] [stdout]  52 | |     BinaryArrayAddressableHeap,
[INFO] [stdout]  53 | |     BinaryArrayAddressableHeapRepr,
[INFO] [stdout]  54 | |     crate::handles::AddressableHandle
[INFO] [stdout]  55 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/array.rs:68:1
[INFO] [stdout]     |
[INFO] [stdout]  68 | / crate::decrease_key_methods!(
[INFO] [stdout]  69 | |     DaryArrayAddressableHeap,
[INFO] [stdout]  70 | |     DaryArrayAddressableHeapRepr,
[INFO] [stdout]  71 | |     crate::handles::AddressableHandle
[INFO] [stdout]  72 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/dag.rs:7:1
[INFO] [stdout]     |
[INFO] [stdout]   7 | crate::decrease_key_methods!(HollowHeap, HollowHeapRepr, crate::handles::HollowHandle);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 |   tree_addressable_meldable!(PairingHeap, PairingHeapRepr, rheaps::tree::PairingHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:16:1
[INFO] [stdout]     |
[INFO] [stdout]  16 | / tree_addressable_meldable!(
[INFO] [stdout]  17 | |     PurePairingHeap,
[INFO] [stdout]  18 | |     PurePairingHeapRepr,
[INFO] [stdout]  19 | |     rheaps::tree::PurePairingHeap
[INFO] [stdout]  20 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | / tree_addressable_meldable!(
[INFO] [stdout]  22 | |     CostlessMeldPairingHeap,
[INFO] [stdout]  23 | |     CostlessMeldPairingHeapRepr,
[INFO] [stdout]  24 | |     rheaps::tree::CostlessMeldPairingHeap
[INFO] [stdout]  25 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / tree_addressable_meldable!(
[INFO] [stdout]  27 | |     RankPairingHeap,
[INFO] [stdout]  28 | |     RankPairingHeapRepr,
[INFO] [stdout]  29 | |     rheaps::tree::RankPairingHeap
[INFO] [stdout]  30 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 |   tree_addressable_meldable!(LeftistHeap, LeftistHeapRepr, rheaps::tree::LeftistHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:32:1
[INFO] [stdout]     |
[INFO] [stdout]  32 |   tree_addressable_meldable!(SkewHeap, SkewHeapRepr, rheaps::tree::SkewHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 |   tree_addressable_meldable!(FibonacciHeap, FibonacciHeapRepr, rheaps::tree::FibonacciHeap);
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout]  34 | / tree_addressable_meldable!(
[INFO] [stdout]  35 | |     SimpleFibonacciHeap,
[INFO] [stdout]  36 | |     SimpleFibonacciHeapRepr,
[INFO] [stdout]  37 | |     rheaps::tree::SimpleFibonacciHeap
[INFO] [stdout]  38 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:39:1
[INFO] [stdout]     |
[INFO] [stdout]  39 | / tree_addressable_meldable!(
[INFO] [stdout]  40 | |     StrictFibonacciHeap,
[INFO] [stdout]  41 | |     StrictFibonacciHeapRepr,
[INFO] [stdout]  42 | |     rheaps::tree::StrictFibonacciHeap
[INFO] [stdout]  43 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:55:1
[INFO] [stdout]     |
[INFO] [stdout]  55 | / crate::decrease_key_methods!(
[INFO] [stdout]  56 | |     BinaryTreeAddressableHeap,
[INFO] [stdout]  57 | |     BinaryTreeAddressableHeapRepr,
[INFO] [stdout]  58 | |     crate::handles::TreeHandle
[INFO] [stdout]  59 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 |   macro_rules! decrease_key_methods {
[INFO] [stdout] ...
[INFO] [stdout] 466 |               fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:72:1
[INFO] [stdout]     |
[INFO] [stdout]  72 | / crate::decrease_key_methods!(
[INFO] [stdout]  73 | |     DaryTreeAddressableHeap,
[INFO] [stdout]  74 | |     DaryTreeAddressableHeapRepr,
[INFO] [stdout]  75 | |     crate::handles::TreeHandle
[INFO] [stdout]  76 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:466:83
[INFO] [stdout]     |
[INFO] [stdout] 462 | / macro_rules! decrease_key_methods {
[INFO] [stdout] 463 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 464 | |         #[pymethods]
[INFO] [stdout] 465 | |         impl $name {
[INFO] [stdout] 466 | |             fn decrease_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 480 | |     };
[INFO] [stdout] 481 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::decrease_key_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | macro_rules! meldable_methods {
[INFO] [stdout] ...
[INFO] [stdout] 495 |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/dag.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout]   8 | crate::meldable_methods!(HollowHeap, HollowHeapRepr, rheaps::dag::HollowHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:15:1
[INFO] [stdout]     |
[INFO] [stdout]  15 |   tree_addressable_meldable!(PairingHeap, PairingHeapRepr, rheaps::tree::PairingHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:16:1
[INFO] [stdout]     |
[INFO] [stdout]  16 | / tree_addressable_meldable!(
[INFO] [stdout]  17 | |     PurePairingHeap,
[INFO] [stdout]  18 | |     PurePairingHeapRepr,
[INFO] [stdout]  19 | |     rheaps::tree::PurePairingHeap
[INFO] [stdout]  20 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:21:1
[INFO] [stdout]     |
[INFO] [stdout]  21 | / tree_addressable_meldable!(
[INFO] [stdout]  22 | |     CostlessMeldPairingHeap,
[INFO] [stdout]  23 | |     CostlessMeldPairingHeapRepr,
[INFO] [stdout]  24 | |     rheaps::tree::CostlessMeldPairingHeap
[INFO] [stdout]  25 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout]  26 | / tree_addressable_meldable!(
[INFO] [stdout]  27 | |     RankPairingHeap,
[INFO] [stdout]  28 | |     RankPairingHeapRepr,
[INFO] [stdout]  29 | |     rheaps::tree::RankPairingHeap
[INFO] [stdout]  30 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 |   tree_addressable_meldable!(LeftistHeap, LeftistHeapRepr, rheaps::tree::LeftistHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:32:1
[INFO] [stdout]     |
[INFO] [stdout]  32 |   tree_addressable_meldable!(SkewHeap, SkewHeapRepr, rheaps::tree::SkewHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 |   tree_addressable_meldable!(FibonacciHeap, FibonacciHeapRepr, rheaps::tree::FibonacciHeap);
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:34:1
[INFO] [stdout]     |
[INFO] [stdout]  34 | / tree_addressable_meldable!(
[INFO] [stdout]  35 | |     SimpleFibonacciHeap,
[INFO] [stdout]  36 | |     SimpleFibonacciHeapRepr,
[INFO] [stdout]  37 | |     rheaps::tree::SimpleFibonacciHeap
[INFO] [stdout]  38 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `tree_addressable_meldable`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:39:1
[INFO] [stdout]     |
[INFO] [stdout]  39 | / tree_addressable_meldable!(
[INFO] [stdout]  40 | |     StrictFibonacciHeap,
[INFO] [stdout]  41 | |     StrictFibonacciHeapRepr,
[INFO] [stdout]  42 | |     rheaps::tree::StrictFibonacciHeap
[INFO] [stdout]  43 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:495:53
[INFO] [stdout]     |
[INFO] [stdout] 491 | / macro_rules! meldable_methods {
[INFO] [stdout] 492 | |     ($name:ident, $repr:ident, $($path:ident)::+) => {
[INFO] [stdout] 493 | |         #[pymethods]
[INFO] [stdout] 494 | |         impl $name {
[INFO] [stdout] 495 | |             fn meld(&mut self, other: &mut Self) -> PyResult<()> {
[INFO] [stdout]     | |                                                     ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 520 | |     };
[INFO] [stdout] 521 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::meldable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:533:18
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 533 | |             ) -> PyResult<Option<($handle, Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:553:54
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 553 | |             fn pop_max(&mut self, py: Python<'_>) -> PyResult<Option<(Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:567:83
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 567 | |             fn increase_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:88:1
[INFO] [stdout]     |
[INFO] [stdout]  88 | / reflected_heap!(
[INFO] [stdout]  89 | |     ReflectedFibonacciHeap,
[INFO] [stdout]  90 | |     ReflectedFibonacciHeapRepr,
[INFO] [stdout]  91 | |     rheaps::tree::ReflectedFibonacciHeap
[INFO] [stdout]  92 | | );
[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/macros.rs:533:18
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 533 | |             ) -> PyResult<Option<($handle, Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:553:54
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 553 | |             fn pop_max(&mut self, py: Python<'_>) -> PyResult<Option<(Py<PyAny>, Py<PyAny>)>> {
[INFO] [stdout]     | |                                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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/macros.rs:567:83
[INFO] [stdout]     |
[INFO] [stdout] 526 | / macro_rules! double_ended_addressable_methods {
[INFO] [stdout] 527 | |     ($name:ident, $repr:ident, $handle:ty) => {
[INFO] [stdout] 528 | |         #[pymethods]
[INFO] [stdout] 529 | |         impl $name {
[INFO] [stdout] ...   |
[INFO] [stdout] 567 | |             fn increase_key(&mut self, handle: $handle, key: Bound<'_, PyAny>) -> PyResult<()> {
[INFO] [stdout]     | |                                                                                   ^^^^^^^^^^^^
[INFO] [stdout] ...   |
[INFO] [stdout] 581 | |     };
[INFO] [stdout] 582 | | }
[INFO] [stdout]     | |_- this error originates in the macro `crate::double_ended_addressable_methods` which comes from the expansion of the macro `reflected_heap`
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/heaps/tree.rs:93:1
[INFO] [stdout]     |
[INFO] [stdout]  93 | / reflected_heap!(
[INFO] [stdout]  94 | |     ReflectedPairingHeap,
[INFO] [stdout]  95 | |     ReflectedPairingHeapRepr,
[INFO] [stdout]  96 | |     rheaps::tree::ReflectedPairingHeap
[INFO] [stdout]  97 | | );
[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 `_rheaps` (lib test) due to 41 previous errors
[INFO] running `Command { std: "docker" "inspect" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0", kill_on_drop: false }`
[INFO] [stdout] 5d6a3a68a61af2245f35d2cb91a00d01cdd4619cb7c039472046e528d1b55fa0
