[INFO] fetching crate cpython 0.7.2...
[INFO] testing cpython-0.7.2 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate cpython 0.7.2 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate cpython 0.7.2
[INFO] finished tweaking crates.io crate cpython 0.7.2
[INFO] tweaked toml for crates.io crate cpython 0.7.2 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate cpython 0.7.2 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate cpython 0.7.2 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded half v1.7.1
[INFO] [stderr]   Downloaded python27-sys v0.7.0
[INFO] [stderr]   Downloaded python3-sys v0.7.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c
[INFO] running `Command { std: "docker" "start" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", 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" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.4.1
[INFO] [stderr]    Compiling regex-syntax v0.6.27
[INFO] [stderr]    Compiling libc v0.2.103
[INFO] [stderr]    Compiling cpython v0.7.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling paste v1.0.5
[INFO] [stderr]    Compiling aho-corasick v0.7.18
[INFO] [stderr]    Compiling regex v1.6.0
[INFO] [stderr]    Compiling python3-sys v0.7.2
[INFO] [stdout] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]   --> src/py_class/slots.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::{isize, mem, ptr};
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/py_class/slots.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 |         if val <= (isize::MAX as usize) {
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/boolobject.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pyobject_newtype!(PyBool, PyBool_Check, PyBool_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/capsule.rs:190:1
[INFO] [stdout]     |
[INFO] [stdout] 190 | pyobject_newtype!(PyCapsule, PyCapsule_CheckExact, PyCapsule_Type);
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/dict.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | pyobject_newtype!(PyDict, PyDict_Check, PyDict_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/list.rs:28:1
[INFO] [stdout]     |
[INFO] [stdout]  28 | pyobject_newtype!(PyList, PyList_Check, PyList_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/module.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 | pyobject_newtype!(PyModule, PyModule_Check, PyModule_Type);
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/num.rs:56:1
[INFO] [stdout]     |
[INFO] [stdout]  56 | pyobject_newtype!(PyLong, PyLong_Check, PyLong_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/num.rs:65:1
[INFO] [stdout]     |
[INFO] [stdout]  65 | pyobject_newtype!(PyFloat, PyFloat_Check, PyFloat_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/object.rs:113:44
[INFO] [stdout]     |
[INFO] [stdout] 113 |         unsafe { PyType::from_type_ptr(py, &mut ffi::PyBaseObject_Type) }
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 113 |         unsafe { PyType::from_type_ptr(py, &raw mut ffi::PyBaseObject_Type) }
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/set.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | pyobject_newtype!(PySet, PySet_Check, PySet_Type);
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/string.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | pyobject_newtype!(PyString, PyUnicode_Check, PyUnicode_Type);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/string.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout]  42 | pyobject_newtype!(PyBytes, PyBytes_Check, PyBytes_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn data(&self, py: Python) -> PyStringData {
[INFO] [stdout]     |                 ^^^^^                 ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn data(&self, py: Python) -> PyStringData<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:286:18
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn data_impl(&self, _py: Python) -> PyStringData {
[INFO] [stdout]     |                  ^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn data_impl(&self, _py: Python) -> PyStringData<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:321:22
[INFO] [stdout]     |
[INFO] [stdout] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<str>> {
[INFO] [stdout]     |                      ^^^^^                          ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<'_, str>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:351:28
[INFO] [stdout]     |
[INFO] [stdout] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^                 ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<'_, str> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/tuple.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | pyobject_newtype!(PyTuple, PyTuple_Check, PyTuple_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/objects/tuple.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<PyObject> {
[INFO] [stdout]    |                 ^^^^^                 ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<'_, PyObject> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/typeobject.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | pyobject_newtype!(PyType, PyType_Check, PyType_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: specialization is experimental
[INFO] [stdout]    --> src/objects/sequence.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     default fn extract(py: Python, obj: &'s PyObject) -> PyResult<Self> {
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
[INFO] [stdout]     = warning: unstable syntax can change at any point in the future, causing a hard error!
[INFO] [stdout]     = note: for more information, see issue #154045 <https://github.com/rust-lang/rust/issues/154045>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 10.16s
[INFO] running `Command { std: "docker" "inspect" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.130
[INFO] [stdout] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]   --> src/py_class/slots.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::{isize, mem, ptr};
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/py_class/slots.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 |         if val <= (isize::MAX as usize) {
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/boolobject.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pyobject_newtype!(PyBool, PyBool_Check, PyBool_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/capsule.rs:190:1
[INFO] [stdout]     |
[INFO] [stdout] 190 | pyobject_newtype!(PyCapsule, PyCapsule_CheckExact, PyCapsule_Type);
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/dict.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | pyobject_newtype!(PyDict, PyDict_Check, PyDict_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/list.rs:28:1
[INFO] [stdout]     |
[INFO] [stdout]  28 | pyobject_newtype!(PyList, PyList_Check, PyList_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/module.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 | pyobject_newtype!(PyModule, PyModule_Check, PyModule_Type);
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/num.rs:56:1
[INFO] [stdout]     |
[INFO] [stdout]  56 | pyobject_newtype!(PyLong, PyLong_Check, PyLong_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/num.rs:65:1
[INFO] [stdout]     |
[INFO] [stdout]  65 | pyobject_newtype!(PyFloat, PyFloat_Check, PyFloat_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/object.rs:113:44
[INFO] [stdout]     |
[INFO] [stdout] 113 |         unsafe { PyType::from_type_ptr(py, &mut ffi::PyBaseObject_Type) }
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 113 |         unsafe { PyType::from_type_ptr(py, &raw mut ffi::PyBaseObject_Type) }
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/set.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | pyobject_newtype!(PySet, PySet_Check, PySet_Type);
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/string.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | pyobject_newtype!(PyString, PyUnicode_Check, PyUnicode_Type);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/string.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout]  42 | pyobject_newtype!(PyBytes, PyBytes_Check, PyBytes_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn data(&self, py: Python) -> PyStringData {
[INFO] [stdout]     |                 ^^^^^                 ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn data(&self, py: Python) -> PyStringData<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:286:18
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn data_impl(&self, _py: Python) -> PyStringData {
[INFO] [stdout]     |                  ^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn data_impl(&self, _py: Python) -> PyStringData<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:321:22
[INFO] [stdout]     |
[INFO] [stdout] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<str>> {
[INFO] [stdout]     |                      ^^^^^                          ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<'_, str>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:351:28
[INFO] [stdout]     |
[INFO] [stdout] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^                 ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<'_, str> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/tuple.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | pyobject_newtype!(PyTuple, PyTuple_Check, PyTuple_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/objects/tuple.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<PyObject> {
[INFO] [stdout]    |                 ^^^^^                 ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<'_, PyObject> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/typeobject.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | pyobject_newtype!(PyType, PyType_Check, PyType_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: specialization is experimental
[INFO] [stdout]    --> src/objects/sequence.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     default fn extract(py: Python, obj: &'s PyObject) -> PyResult<Self> {
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
[INFO] [stdout]     = warning: unstable syntax can change at any point in the future, causing a hard error!
[INFO] [stdout]     = note: for more information, see issue #154045 <https://github.com/rust-lang/rust/issues/154045>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling half v1.7.1
[INFO] [stderr]    Compiling serde_cbor v0.11.2
[INFO] [stderr]    Compiling serde_bytes v0.11.5
[INFO] [stderr]    Compiling cpython v0.7.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> tests/test_sharedref.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / py_class!(class Owner |py| {
[INFO] [stdout] 4 | |     @shared data string: String;
[INFO] [stdout] 5 | | });
[INFO] [stdout]   | |  ^
[INFO] [stdout]   | |  |
[INFO] [stdout]   | |  `Owner` is not local
[INFO] [stdout]   | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]   |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> tests/test_sharedref.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | / py_class!(class Owner |py| {
[INFO] [stdout] 4 | |     @shared data string: String;
[INFO] [stdout] 5 | | });
[INFO] [stdout]   | |  ^
[INFO] [stdout]   | |  |
[INFO] [stdout]   | |  `Owner` is not local
[INFO] [stdout]   | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]   |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]   |
[INFO] [stdout]   = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/objects/num.rs:433:27
[INFO] [stdout]     |
[INFO] [stdout] 433 |         let v = std::u32::MAX;
[INFO] [stdout]     |                           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/objects/num.rs:444:27
[INFO] [stdout]     |
[INFO] [stdout] 444 |         let v = std::i64::MAX;
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i64::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/objects/num.rs:455:27
[INFO] [stdout]     |
[INFO] [stdout] 455 |         let v = std::i64::MIN;
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/objects/num.rs:466:27
[INFO] [stdout]     |
[INFO] [stdout] 466 |         let v = std::u64::MAX;
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]   --> src/py_class/slots.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | use std::{isize, mem, ptr};
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/py_class/slots.rs:587:27
[INFO] [stdout]     |
[INFO] [stdout] 587 |         if val <= (isize::MAX as usize) {
[INFO] [stdout]     |                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stdout]    --> tests/test_function.rs:114:9
[INFO] [stdout]     |
[INFO] [stdout] 114 |         drop(py); // avoid unused variable warning
[INFO] [stdout]     |         ^^^^^--^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `Python<'_>`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 114 -         drop(py); // avoid unused variable warning
[INFO] [stdout] 114 +         let _ = py; // avoid unused variable warning
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stdout]    --> tests/test_function.rs:133:9
[INFO] [stdout]     |
[INFO] [stdout] 133 |         drop(py);
[INFO] [stdout]     |         ^^^^^--^
[INFO] [stdout]     |              |
[INFO] [stdout]     |              argument has type `Python<'_>`
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the expression or result
[INFO] [stdout]     |
[INFO] [stdout] 133 -         drop(py);
[INFO] [stdout] 133 +         let _ = py;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> tests/test_class.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::{isize, iter, mem};
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> tests/test_class.rs:430:49
[INFO] [stdout]     |
[INFO] [stdout] 430 |     let inst = Len::create_instance(py, (isize::MAX as usize) + 1).unwrap();
[INFO] [stdout]     |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/boolobject.rs:10:1
[INFO] [stdout]     |
[INFO] [stdout]  10 | pyobject_newtype!(PyBool, PyBool_Check, PyBool_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/capsule.rs:190:1
[INFO] [stdout]     |
[INFO] [stdout] 190 | pyobject_newtype!(PyCapsule, PyCapsule_CheckExact, PyCapsule_Type);
[INFO] [stdout]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/dict.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | pyobject_newtype!(PyDict, PyDict_Check, PyDict_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/list.rs:28:1
[INFO] [stdout]     |
[INFO] [stdout]  28 | pyobject_newtype!(PyList, PyList_Check, PyList_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/module.rs:33:1
[INFO] [stdout]     |
[INFO] [stdout]  33 | pyobject_newtype!(PyModule, PyModule_Check, PyModule_Type);
[INFO] [stdout]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/num.rs:56:1
[INFO] [stdout]     |
[INFO] [stdout]  56 | pyobject_newtype!(PyLong, PyLong_Check, PyLong_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/num.rs:65:1
[INFO] [stdout]     |
[INFO] [stdout]  65 | pyobject_newtype!(PyFloat, PyFloat_Check, PyFloat_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/object.rs:113:44
[INFO] [stdout]     |
[INFO] [stdout] 113 |         unsafe { PyType::from_type_ptr(py, &mut ffi::PyBaseObject_Type) }
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout] help: use `&raw mut` instead to create a raw pointer
[INFO] [stdout]     |
[INFO] [stdout] 113 |         unsafe { PyType::from_type_ptr(py, &raw mut ffi::PyBaseObject_Type) }
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/set.rs:30:1
[INFO] [stdout]     |
[INFO] [stdout]  30 | pyobject_newtype!(PySet, PySet_Check, PySet_Type);
[INFO] [stdout]     | ------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/string.rs:36:1
[INFO] [stdout]     |
[INFO] [stdout]  36 | pyobject_newtype!(PyString, PyUnicode_Check, PyUnicode_Type);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/string.rs:42:1
[INFO] [stdout]     |
[INFO] [stdout]  42 | pyobject_newtype!(PyBytes, PyBytes_Check, PyBytes_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:270:17
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn data(&self, py: Python) -> PyStringData {
[INFO] [stdout]     |                 ^^^^^                 ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn data(&self, py: Python) -> PyStringData<'_> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:286:18
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn data_impl(&self, _py: Python) -> PyStringData {
[INFO] [stdout]     |                  ^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 286 |     fn data_impl(&self, _py: Python) -> PyStringData<'_> {
[INFO] [stdout]     |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:321:22
[INFO] [stdout]     |
[INFO] [stdout] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<str>> {
[INFO] [stdout]     |                      ^^^^^                          ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<'_, str>> {
[INFO] [stdout]     |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/objects/string.rs:351:28
[INFO] [stdout]     |
[INFO] [stdout] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<str> {
[INFO] [stdout]     |                            ^^^^^                 ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<'_, str> {
[INFO] [stdout]     |                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/tuple.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | pyobject_newtype!(PyTuple, PyTuple_Check, PyTuple_Type);
[INFO] [stdout]     | ------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/objects/tuple.rs:91:17
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<PyObject> {
[INFO] [stdout]    |                 ^^^^^                 ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<'_, PyObject> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: creating a mutable reference to mutable static
[INFO] [stdout]    --> src/objects/mod.rs:119:85
[INFO] [stdout]     |
[INFO] [stdout] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stdout]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/objects/typeobject.rs:31:1
[INFO] [stdout]     |
[INFO] [stdout]  31 | pyobject_newtype!(PyType, PyType_Check, PyType_Type);
[INFO] [stdout]     | ---------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stdout]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stdout]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | py_class!(class EmptyClass |py| { });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `EmptyClass` is not local
[INFO] [stdout]    | `PythonObjectWithTypeObject` is not local
[INFO] [stdout]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | py_class!(class EmptyClass |py| { });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `EmptyClass` is not local
[INFO] [stdout]    | `PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | py_class!(class EmptyClassInModule |py| { });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `EmptyClassInModule` is not local
[INFO] [stdout]    | `PythonObjectWithTypeObject` is not local
[INFO] [stdout]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:49:1
[INFO] [stdout]    |
[INFO] [stdout] 49 | py_class!(class EmptyClassInModule |py| { });
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    | |
[INFO] [stdout]    | `EmptyClassInModule` is not local
[INFO] [stdout]    | `PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / py_class!(class EmptyClassWithNew |py| {
[INFO] [stdout] 76 | |     def __new__(_cls) -> PyResult<EmptyClassWithNew> {
[INFO] [stdout] 77 | |         EmptyClassWithNew::create_instance(py)
[INFO] [stdout] 78 | |     }
[INFO] [stdout] 79 | | });
[INFO] [stdout]    | |  ^
[INFO] [stdout]    | |  |
[INFO] [stdout]    | |  `EmptyClassWithNew` is not local
[INFO] [stdout]    | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:75:1
[INFO] [stdout]    |
[INFO] [stdout] 75 | / py_class!(class EmptyClassWithNew |py| {
[INFO] [stdout] 76 | |     def __new__(_cls) -> PyResult<EmptyClassWithNew> {
[INFO] [stdout] 77 | |         EmptyClassWithNew::create_instance(py)
[INFO] [stdout] 78 | |     }
[INFO] [stdout] 79 | | });
[INFO] [stdout]    | |  ^
[INFO] [stdout]    | |  |
[INFO] [stdout]    | |  `EmptyClassWithNew` is not local
[INFO] [stdout]    | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | / py_class!(class NewWithOneArg |py| {
[INFO] [stdout] 94 | |     data _data: i32;
[INFO] [stdout] 95 | |     def __new__(_cls, arg: i32) -> PyResult<NewWithOneArg> {
[INFO] [stdout] 96 | |         NewWithOneArg::create_instance(py, arg)
[INFO] [stdout] 97 | |     }
[INFO] [stdout] 98 | | });
[INFO] [stdout]    | |  ^
[INFO] [stdout]    | |  |
[INFO] [stdout]    | |  `NewWithOneArg` is not local
[INFO] [stdout]    | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> tests/test_class.rs:93:1
[INFO] [stdout]    |
[INFO] [stdout] 93 | / py_class!(class NewWithOneArg |py| {
[INFO] [stdout] 94 | |     data _data: i32;
[INFO] [stdout] 95 | |     def __new__(_cls, arg: i32) -> PyResult<NewWithOneArg> {
[INFO] [stdout] 96 | |         NewWithOneArg::create_instance(py, arg)
[INFO] [stdout] 97 | |     }
[INFO] [stdout] 98 | | });
[INFO] [stdout]    | |  ^
[INFO] [stdout]    | |  |
[INFO] [stdout]    | |  `NewWithOneArg` is not local
[INFO] [stdout]    | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]    |
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | / py_class!(class NewWithTwoArgs |py| {
[INFO] [stdout] 114 | |     data _data1: i32;
[INFO] [stdout] 115 | |     data _data2: i32;
[INFO] [stdout] 116 | |     def __new__(_cls, arg1: i32, arg2: i32) -> PyResult<NewWithTwoArgs> {
[INFO] [stdout] ...   |
[INFO] [stdout] 119 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `NewWithTwoArgs` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:113:1
[INFO] [stdout]     |
[INFO] [stdout] 113 | / py_class!(class NewWithTwoArgs |py| {
[INFO] [stdout] 114 | |     data _data1: i32;
[INFO] [stdout] 115 | |     data _data2: i32;
[INFO] [stdout] 116 | |     def __new__(_cls, arg1: i32, arg2: i32) -> PyResult<NewWithTwoArgs> {
[INFO] [stdout] ...   |
[INFO] [stdout] 119 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `NewWithTwoArgs` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:144:1
[INFO] [stdout]     |
[INFO] [stdout] 144 | / py_class!(class DataIsDropped |py| {
[INFO] [stdout] 145 | |     data member1: TestDropCall;
[INFO] [stdout] 146 | |     data member2: TestDropCall;
[INFO] [stdout] 147 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `DataIsDropped` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:144:1
[INFO] [stdout]     |
[INFO] [stdout] 144 | / py_class!(class DataIsDropped |py| {
[INFO] [stdout] 145 | |     data member1: TestDropCall;
[INFO] [stdout] 146 | |     data member2: TestDropCall;
[INFO] [stdout] 147 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `DataIsDropped` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | / py_class!(class InstanceMethod |py| {
[INFO] [stdout] 173 | |     data member: i32;
[INFO] [stdout] 174 | |
[INFO] [stdout] 175 | |     def method(&self) -> PyResult<i32> {
[INFO] [stdout] ...   |
[INFO] [stdout] 178 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `InstanceMethod` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:172:1
[INFO] [stdout]     |
[INFO] [stdout] 172 | / py_class!(class InstanceMethod |py| {
[INFO] [stdout] 173 | |     data member: i32;
[INFO] [stdout] 174 | |
[INFO] [stdout] 175 | |     def method(&self) -> PyResult<i32> {
[INFO] [stdout] ...   |
[INFO] [stdout] 178 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `InstanceMethod` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 | / py_class!(class InstanceMethodReturnsNone |py| {
[INFO] [stdout] 193 | |     data member: AtomicUsize;
[INFO] [stdout] 194 | |
[INFO] [stdout] 195 | |     def value(&self) -> PyResult<usize> {
[INFO] [stdout] ...   |
[INFO] [stdout] 203 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `InstanceMethodReturnsNone` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:192:1
[INFO] [stdout]     |
[INFO] [stdout] 192 | / py_class!(class InstanceMethodReturnsNone |py| {
[INFO] [stdout] 193 | |     data member: AtomicUsize;
[INFO] [stdout] 194 | |
[INFO] [stdout] 195 | |     def value(&self) -> PyResult<usize> {
[INFO] [stdout] ...   |
[INFO] [stdout] 203 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `InstanceMethodReturnsNone` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | / py_class!(class InstanceMethodWithArgs |py| {
[INFO] [stdout] 221 | |     data member: i32;
[INFO] [stdout] 222 | |
[INFO] [stdout] 223 | |     def method(&self, multiplier: i32) -> PyResult<i32> {
[INFO] [stdout] ...   |
[INFO] [stdout] 230 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `InstanceMethodWithArgs` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:220:1
[INFO] [stdout]     |
[INFO] [stdout] 220 | / py_class!(class InstanceMethodWithArgs |py| {
[INFO] [stdout] 221 | |     data member: i32;
[INFO] [stdout] 222 | |
[INFO] [stdout] 223 | |     def method(&self, multiplier: i32) -> PyResult<i32> {
[INFO] [stdout] ...   |
[INFO] [stdout] 230 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `InstanceMethodWithArgs` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:249:1
[INFO] [stdout]     |
[INFO] [stdout] 249 | / py_class!(class ClassMethod |py| {
[INFO] [stdout] 250 | |     def __new__(cls) -> PyResult<ClassMethod> {
[INFO] [stdout] 251 | |         ClassMethod::create_instance(py)
[INFO] [stdout] ...   |
[INFO] [stdout] 258 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ClassMethod` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:249:1
[INFO] [stdout]     |
[INFO] [stdout] 249 | / py_class!(class ClassMethod |py| {
[INFO] [stdout] 250 | |     def __new__(cls) -> PyResult<ClassMethod> {
[INFO] [stdout] 251 | |         ClassMethod::create_instance(py)
[INFO] [stdout] ...   |
[INFO] [stdout] 258 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ClassMethod` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:281:1
[INFO] [stdout]     |
[INFO] [stdout] 281 | / py_class!(class ClassMethodWithArgs |py| {
[INFO] [stdout] 282 | |     @classmethod
[INFO] [stdout] 283 | |     def method(cls, input: &str) -> PyResult<String> {
[INFO] [stdout] 284 | |         Ok(format!("{}.method({})", cls.name(py), input))
[INFO] [stdout] 285 | |     }
[INFO] [stdout] 286 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ClassMethodWithArgs` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:281:1
[INFO] [stdout]     |
[INFO] [stdout] 281 | / py_class!(class ClassMethodWithArgs |py| {
[INFO] [stdout] 282 | |     @classmethod
[INFO] [stdout] 283 | |     def method(cls, input: &str) -> PyResult<String> {
[INFO] [stdout] 284 | |         Ok(format!("{}.method({})", cls.name(py), input))
[INFO] [stdout] 285 | |     }
[INFO] [stdout] 286 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ClassMethodWithArgs` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | / py_class!(class StaticMethod |py| {
[INFO] [stdout] 305 | |     def __new__(cls) -> PyResult<StaticMethod> {
[INFO] [stdout] 306 | |         StaticMethod::create_instance(py)
[INFO] [stdout] ...   |
[INFO] [stdout] 313 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StaticMethod` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:304:1
[INFO] [stdout]     |
[INFO] [stdout] 304 | / py_class!(class StaticMethod |py| {
[INFO] [stdout] 305 | |     def __new__(cls) -> PyResult<StaticMethod> {
[INFO] [stdout] 306 | |         StaticMethod::create_instance(py)
[INFO] [stdout] ...   |
[INFO] [stdout] 313 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StaticMethod` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:337:1
[INFO] [stdout]     |
[INFO] [stdout] 337 | / py_class!(class StaticMethodWithArgs |py| {
[INFO] [stdout] 338 | |     @staticmethod
[INFO] [stdout] 339 | |     def method(input: i32) -> PyResult<String> {
[INFO] [stdout] 340 | |         Ok(format!("0x{:x}", input))
[INFO] [stdout] 341 | |     }
[INFO] [stdout] 342 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StaticMethodWithArgs` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:337:1
[INFO] [stdout]     |
[INFO] [stdout] 337 | / py_class!(class StaticMethodWithArgs |py| {
[INFO] [stdout] 338 | |     @staticmethod
[INFO] [stdout] 339 | |     def method(input: i32) -> PyResult<String> {
[INFO] [stdout] 340 | |         Ok(format!("0x{:x}", input))
[INFO] [stdout] 341 | |     }
[INFO] [stdout] 342 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StaticMethodWithArgs` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | / py_class!(class StaticData |py| {
[INFO] [stdout] 358 | |     static VAL1 = 123;
[INFO] [stdout] 359 | |     static VAL2 = py.None();
[INFO] [stdout] 360 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StaticData` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:357:1
[INFO] [stdout]     |
[INFO] [stdout] 357 | / py_class!(class StaticData |py| {
[INFO] [stdout] 358 | |     static VAL1 = 123;
[INFO] [stdout] 359 | |     static VAL2 = py.None();
[INFO] [stdout] 360 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StaticData` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:374:1
[INFO] [stdout]     |
[INFO] [stdout] 374 | / py_class!(class GCIntegration |py| {
[INFO] [stdout] 375 | |     data self_ref: RefCell<PyObject>;
[INFO] [stdout] 376 | |     data dropped: TestDropCall;
[INFO] [stdout] ...   |
[INFO] [stdout] 387 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `GCIntegration` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:374:1
[INFO] [stdout]     |
[INFO] [stdout] 374 | / py_class!(class GCIntegration |py| {
[INFO] [stdout] 375 | |     data self_ref: RefCell<PyObject>;
[INFO] [stdout] 376 | |     data dropped: TestDropCall;
[INFO] [stdout] ...   |
[INFO] [stdout] 387 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `GCIntegration` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:410:1
[INFO] [stdout]     |
[INFO] [stdout] 410 | / py_class!(class Len |py| {
[INFO] [stdout] 411 | |     data l: usize;
[INFO] [stdout] 412 | |
[INFO] [stdout] 413 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stdout] ...   |
[INFO] [stdout] 416 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Len` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:410:1
[INFO] [stdout]     |
[INFO] [stdout] 410 | / py_class!(class Len |py| {
[INFO] [stdout] 411 | |     data l: usize;
[INFO] [stdout] 412 | |
[INFO] [stdout] 413 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stdout] ...   |
[INFO] [stdout] 416 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Len` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:434:1
[INFO] [stdout]     |
[INFO] [stdout] 434 | / py_class!(class Iterator |py| {
[INFO] [stdout] 435 | |     data iter: RefCell<Box<dyn iter::Iterator<Item=i32> + Send>>;
[INFO] [stdout] 436 | |
[INFO] [stdout] 437 | |     def __iter__(&self) -> PyResult<Iterator> {
[INFO] [stdout] ...   |
[INFO] [stdout] 444 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Iterator` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:434:1
[INFO] [stdout]     |
[INFO] [stdout] 434 | / py_class!(class Iterator |py| {
[INFO] [stdout] 435 | |     data iter: RefCell<Box<dyn iter::Iterator<Item=i32> + Send>>;
[INFO] [stdout] 436 | |
[INFO] [stdout] 437 | |     def __iter__(&self) -> PyResult<Iterator> {
[INFO] [stdout] ...   |
[INFO] [stdout] 444 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Iterator` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:456:1
[INFO] [stdout]     |
[INFO] [stdout] 456 | / py_class!(class StringMethods |py| {
[INFO] [stdout] 457 | |     def __str__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 458 | |         Ok("str")
[INFO] [stdout] ...   |
[INFO] [stdout] 476 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StringMethods` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:456:1
[INFO] [stdout]     |
[INFO] [stdout] 456 | / py_class!(class StringMethods |py| {
[INFO] [stdout] 457 | |     def __str__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 458 | |         Ok("str")
[INFO] [stdout] ...   |
[INFO] [stdout] 476 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `StringMethods` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:509:1
[INFO] [stdout]     |
[INFO] [stdout] 509 | / py_class!(class Comparisons |py| {
[INFO] [stdout] 510 | |     data val: i32;
[INFO] [stdout] 511 | |
[INFO] [stdout] 512 | |     def __hash__(&self) -> PyResult<i32> {
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Comparisons` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:509:1
[INFO] [stdout]     |
[INFO] [stdout] 509 | / py_class!(class Comparisons |py| {
[INFO] [stdout] 510 | |     data val: i32;
[INFO] [stdout] 511 | |
[INFO] [stdout] 512 | |     def __hash__(&self) -> PyResult<i32> {
[INFO] [stdout] ...   |
[INFO] [stdout] 519 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Comparisons` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:538:1
[INFO] [stdout]     |
[INFO] [stdout] 538 | / py_class!(class Sequence |py| {
[INFO] [stdout] 539 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stdout] 540 | |         Ok(5)
[INFO] [stdout] ...   |
[INFO] [stdout] 551 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Sequence` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:538:1
[INFO] [stdout]     |
[INFO] [stdout] 538 | / py_class!(class Sequence |py| {
[INFO] [stdout] 539 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stdout] 540 | |         Ok(5)
[INFO] [stdout] ...   |
[INFO] [stdout] 551 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Sequence` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:563:1
[INFO] [stdout]     |
[INFO] [stdout] 563 | / py_class!(class SequenceRef |py| {
[INFO] [stdout] 564 | |     def __getitem__(&self, key: &str) -> PyResult<String> {
[INFO] [stdout] 565 | |         if key.is_empty() {
[INFO] [stdout] 566 | |             return Err(PyErr::new::<exc::IndexError, NoArgs>(py, NoArgs));
[INFO] [stdout] ...   |
[INFO] [stdout] 577 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SequenceRef` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:563:1
[INFO] [stdout]     |
[INFO] [stdout] 563 | / py_class!(class SequenceRef |py| {
[INFO] [stdout] 564 | |     def __getitem__(&self, key: &str) -> PyResult<String> {
[INFO] [stdout] 565 | |         if key.is_empty() {
[INFO] [stdout] 566 | |             return Err(PyErr::new::<exc::IndexError, NoArgs>(py, NoArgs));
[INFO] [stdout] ...   |
[INFO] [stdout] 577 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SequenceRef` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:592:1
[INFO] [stdout]     |
[INFO] [stdout] 592 | / py_class!(class Callable |py| {
[INFO] [stdout] 593 | |     def __call__(&self, arg: i32) -> PyResult<i32> {
[INFO] [stdout] 594 | |         Ok(arg * 6)
[INFO] [stdout] 595 | |     }
[INFO] [stdout] 596 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Callable` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:592:1
[INFO] [stdout]     |
[INFO] [stdout] 592 | / py_class!(class Callable |py| {
[INFO] [stdout] 593 | |     def __call__(&self, arg: i32) -> PyResult<i32> {
[INFO] [stdout] 594 | |         Ok(arg * 6)
[INFO] [stdout] 595 | |     }
[INFO] [stdout] 596 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Callable` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / py_class!(class SetItem |py| {
[INFO] [stdout] 612 | |     data key: Cell<i32>;
[INFO] [stdout] 613 | |     data val: Cell<i32>;
[INFO] [stdout] ...   |
[INFO] [stdout] 620 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetItem` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / py_class!(class SetItem |py| {
[INFO] [stdout] 612 | |     data key: Cell<i32>;
[INFO] [stdout] 613 | |     data val: Cell<i32>;
[INFO] [stdout] ...   |
[INFO] [stdout] 620 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetItem` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:634:1
[INFO] [stdout]     |
[INFO] [stdout] 634 | / py_class!(class SetItemRef |py| {
[INFO] [stdout] 635 | |     data key: RefCell<String>;
[INFO] [stdout] 636 | |     data val: Cell<i32>;
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetItemRef` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:634:1
[INFO] [stdout]     |
[INFO] [stdout] 634 | / py_class!(class SetItemRef |py| {
[INFO] [stdout] 635 | |     data key: RefCell<String>;
[INFO] [stdout] 636 | |     data val: Cell<i32>;
[INFO] [stdout] ...   |
[INFO] [stdout] 643 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetItemRef` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:657:1
[INFO] [stdout]     |
[INFO] [stdout] 657 | / py_class!(class SetItemOptRef |py| {
[INFO] [stdout] 658 | |     data key: RefCell<String>;
[INFO] [stdout] 659 | |     data val: Cell<i32>;
[INFO] [stdout] ...   |
[INFO] [stdout] 670 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetItemOptRef` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:657:1
[INFO] [stdout]     |
[INFO] [stdout] 657 | / py_class!(class SetItemOptRef |py| {
[INFO] [stdout] 658 | |     data key: RefCell<String>;
[INFO] [stdout] 659 | |     data val: Cell<i32>;
[INFO] [stdout] ...   |
[INFO] [stdout] 670 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetItemOptRef` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | / py_class!(class DelItem |py| {
[INFO] [stdout] 685 | |     data key: Cell<i32>;
[INFO] [stdout] 686 | |
[INFO] [stdout] 687 | |     def __delitem__(&self, key: i32) -> PyResult<()> {
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `DelItem` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:684:1
[INFO] [stdout]     |
[INFO] [stdout] 684 | / py_class!(class DelItem |py| {
[INFO] [stdout] 685 | |     data key: Cell<i32>;
[INFO] [stdout] 686 | |
[INFO] [stdout] 687 | |     def __delitem__(&self, key: i32) -> PyResult<()> {
[INFO] [stdout] ...   |
[INFO] [stdout] 691 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `DelItem` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:704:1
[INFO] [stdout]     |
[INFO] [stdout] 704 | / py_class!(class SetDelItem |py| {
[INFO] [stdout] 705 | |     data val: Cell<Option<i32>>;
[INFO] [stdout] 706 | |
[INFO] [stdout] 707 | |     def __setitem__(&self, key: i32, val: i32) -> PyResult<()> {
[INFO] [stdout] ...   |
[INFO] [stdout] 716 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetDelItem` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:704:1
[INFO] [stdout]     |
[INFO] [stdout] 704 | / py_class!(class SetDelItem |py| {
[INFO] [stdout] 705 | |     data val: Cell<Option<i32>>;
[INFO] [stdout] 706 | |
[INFO] [stdout] 707 | |     def __setitem__(&self, key: i32, val: i32) -> PyResult<()> {
[INFO] [stdout] ...   |
[INFO] [stdout] 716 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `SetDelItem` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:730:1
[INFO] [stdout]     |
[INFO] [stdout] 730 | / py_class!(class Reversed |py| {
[INFO] [stdout] 731 | |     def __reversed__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 732 | |         Ok("I am reversed")
[INFO] [stdout] 733 | |     }
[INFO] [stdout] 734 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Reversed` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:730:1
[INFO] [stdout]     |
[INFO] [stdout] 730 | / py_class!(class Reversed |py| {
[INFO] [stdout] 731 | |     def __reversed__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 732 | |         Ok("I am reversed")
[INFO] [stdout] 733 | |     }
[INFO] [stdout] 734 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Reversed` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:745:1
[INFO] [stdout]     |
[INFO] [stdout] 745 | / py_class!(class Contains |py| {
[INFO] [stdout] 746 | |     def __contains__(&self, item: i32) -> PyResult<bool> {
[INFO] [stdout] 747 | |         Ok(item >= 0)
[INFO] [stdout] 748 | |     }
[INFO] [stdout] 749 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Contains` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:745:1
[INFO] [stdout]     |
[INFO] [stdout] 745 | / py_class!(class Contains |py| {
[INFO] [stdout] 746 | |     def __contains__(&self, item: i32) -> PyResult<bool> {
[INFO] [stdout] 747 | |         Ok(item >= 0)
[INFO] [stdout] 748 | |     }
[INFO] [stdout] 749 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `Contains` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:762:1
[INFO] [stdout]     |
[INFO] [stdout] 762 | / py_class!(class ContainsRef |py| {
[INFO] [stdout] 763 | |     def __contains__(&self, item: &str) -> PyResult<bool> {
[INFO] [stdout] 764 | |         Ok(item.is_empty())
[INFO] [stdout] 765 | |     }
[INFO] [stdout] 766 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ContainsRef` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:762:1
[INFO] [stdout]     |
[INFO] [stdout] 762 | / py_class!(class ContainsRef |py| {
[INFO] [stdout] 763 | |     def __contains__(&self, item: &str) -> PyResult<bool> {
[INFO] [stdout] 764 | |         Ok(item.is_empty())
[INFO] [stdout] 765 | |     }
[INFO] [stdout] 766 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ContainsRef` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:779:1
[INFO] [stdout]     |
[INFO] [stdout] 779 | / py_class!(class ContainsOptRef |py| {
[INFO] [stdout] 780 | |     def __contains__(&self, item: Option<&str>) -> PyResult<bool> {
[INFO] [stdout] 781 | |         Ok(item.map_or(false, str::is_empty))
[INFO] [stdout] 782 | |     }
[INFO] [stdout] 783 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ContainsOptRef` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:779:1
[INFO] [stdout]     |
[INFO] [stdout] 779 | / py_class!(class ContainsOptRef |py| {
[INFO] [stdout] 780 | |     def __contains__(&self, item: Option<&str>) -> PyResult<bool> {
[INFO] [stdout] 781 | |         Ok(item.map_or(false, str::is_empty))
[INFO] [stdout] 782 | |     }
[INFO] [stdout] 783 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `ContainsOptRef` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:797:1
[INFO] [stdout]     |
[INFO] [stdout] 797 | / py_class!(class UnaryArithmetic |py| {
[INFO] [stdout] 798 | |     def __neg__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 799 | |         Ok("neg")
[INFO] [stdout] ...   |
[INFO] [stdout] 813 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `UnaryArithmetic` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:797:1
[INFO] [stdout]     |
[INFO] [stdout] 797 | / py_class!(class UnaryArithmetic |py| {
[INFO] [stdout] 798 | |     def __neg__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 799 | |         Ok("neg")
[INFO] [stdout] ...   |
[INFO] [stdout] 813 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `UnaryArithmetic` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:827:1
[INFO] [stdout]     |
[INFO] [stdout] 827 | / py_class!(class BinaryArithmetic |py| {
[INFO] [stdout] 828 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 829 | |         Ok("BA")
[INFO] [stdout] ...   |
[INFO] [stdout] 863 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `BinaryArithmetic` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:827:1
[INFO] [stdout]     |
[INFO] [stdout] 827 | / py_class!(class BinaryArithmetic |py| {
[INFO] [stdout] 828 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 829 | |         Ok("BA")
[INFO] [stdout] ...   |
[INFO] [stdout] 863 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `BinaryArithmetic` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:891:1
[INFO] [stdout]     |
[INFO] [stdout] 891 | / py_class!(class RichComparisons |py| {
[INFO] [stdout] 892 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 893 | |         Ok("RC")
[INFO] [stdout] ...   |
[INFO] [stdout] 906 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `RichComparisons` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:891:1
[INFO] [stdout]     |
[INFO] [stdout] 891 | / py_class!(class RichComparisons |py| {
[INFO] [stdout] 892 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 893 | |         Ok("RC")
[INFO] [stdout] ...   |
[INFO] [stdout] 906 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `RichComparisons` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:908:1
[INFO] [stdout]     |
[INFO] [stdout] 908 | / py_class!(class RichComparisons2 |py| {
[INFO] [stdout] 909 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 910 | |         Ok("RC2")
[INFO] [stdout] ...   |
[INFO] [stdout] 920 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `RichComparisons2` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:908:1
[INFO] [stdout]     |
[INFO] [stdout] 908 | / py_class!(class RichComparisons2 |py| {
[INFO] [stdout] 909 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 910 | |         Ok("RC2")
[INFO] [stdout] ...   |
[INFO] [stdout] 920 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `RichComparisons2` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:975:1
[INFO] [stdout]     |
[INFO] [stdout] 975 | / py_class!(class RichComparisonsRef |py| {
[INFO] [stdout] 976 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 977 | |         Ok("RCR")
[INFO] [stdout] ...   |
[INFO] [stdout] 990 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `RichComparisonsRef` is not local
[INFO] [stdout]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> tests/test_class.rs:975:1
[INFO] [stdout]     |
[INFO] [stdout] 975 | / py_class!(class RichComparisonsRef |py| {
[INFO] [stdout] 976 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 977 | |         Ok("RCR")
[INFO] [stdout] ...   |
[INFO] [stdout] 990 | | });
[INFO] [stdout]     | |  ^
[INFO] [stdout]     | |  |
[INFO] [stdout]     | |  `RichComparisonsRef` is not local
[INFO] [stdout]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1008:1
[INFO] [stdout]      |
[INFO] [stdout] 1008 | / py_class!(class RichComparisonsOptRef |py| {
[INFO] [stdout] 1009 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 1010 | |         Ok("RCR")
[INFO] [stdout] ...    |
[INFO] [stdout] 1029 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `RichComparisonsOptRef` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1008:1
[INFO] [stdout]      |
[INFO] [stdout] 1008 | / py_class!(class RichComparisonsOptRef |py| {
[INFO] [stdout] 1009 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 1010 | |         Ok("RCR")
[INFO] [stdout] ...    |
[INFO] [stdout] 1029 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `RichComparisonsOptRef` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1043:1
[INFO] [stdout]      |
[INFO] [stdout] 1043 | / py_class!(class InPlaceOperations |py| {
[INFO] [stdout] 1044 | |     data value: Cell<u32>;
[INFO] [stdout] 1045 | |
[INFO] [stdout] 1046 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stdout] ...    |
[INFO] [stdout] 1089 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `InPlaceOperations` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1043:1
[INFO] [stdout]      |
[INFO] [stdout] 1043 | / py_class!(class InPlaceOperations |py| {
[INFO] [stdout] 1044 | |     data value: Cell<u32>;
[INFO] [stdout] 1045 | |
[INFO] [stdout] 1046 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stdout] ...    |
[INFO] [stdout] 1089 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `InPlaceOperations` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1153:1
[INFO] [stdout]      |
[INFO] [stdout] 1153 | / py_class!(class InPlaceOperationsRef |py| {
[INFO] [stdout] 1154 | |     data value: RefCell<String>;
[INFO] [stdout] 1155 | |
[INFO] [stdout] 1156 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stdout] ...    |
[INFO] [stdout] 1165 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `InPlaceOperationsRef` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1153:1
[INFO] [stdout]      |
[INFO] [stdout] 1153 | / py_class!(class InPlaceOperationsRef |py| {
[INFO] [stdout] 1154 | |     data value: RefCell<String>;
[INFO] [stdout] 1155 | |
[INFO] [stdout] 1156 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stdout] ...    |
[INFO] [stdout] 1165 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `InPlaceOperationsRef` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1180:1
[INFO] [stdout]      |
[INFO] [stdout] 1180 | / py_class!(class ContextManager |py| {
[INFO] [stdout] 1181 | |     data exit_called : Cell<bool>;
[INFO] [stdout] 1182 | |
[INFO] [stdout] 1183 | |     def __enter__(&self) -> PyResult<i32> {
[INFO] [stdout] ...    |
[INFO] [stdout] 1195 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `ContextManager` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1180:1
[INFO] [stdout]      |
[INFO] [stdout] 1180 | / py_class!(class ContextManager |py| {
[INFO] [stdout] 1181 | |     data exit_called : Cell<bool>;
[INFO] [stdout] 1182 | |
[INFO] [stdout] 1183 | |     def __enter__(&self) -> PyResult<i32> {
[INFO] [stdout] ...    |
[INFO] [stdout] 1195 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `ContextManager` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1220:1
[INFO] [stdout]      |
[INFO] [stdout] 1220 | / py_class!(class Properties |py| {
[INFO] [stdout] 1221 | |     data value: Cell<i32>;
[INFO] [stdout] 1222 | |     data value_by_ref: RefCell<String>;
[INFO] [stdout] 1223 | |     data value_by_opt_ref: RefCell<String>;
[INFO] [stdout] ...    |
[INFO] [stdout] 1264 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `Properties` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1220:1
[INFO] [stdout]      |
[INFO] [stdout] 1220 | / py_class!(class Properties |py| {
[INFO] [stdout] 1221 | |     data value: Cell<i32>;
[INFO] [stdout] 1222 | |     data value_by_ref: RefCell<String>;
[INFO] [stdout] 1223 | |     data value_by_opt_ref: RefCell<String>;
[INFO] [stdout] ...    |
[INFO] [stdout] 1264 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `Properties` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1308:1
[INFO] [stdout]      |
[INFO] [stdout] 1308 | / py_class!(pub(crate) class ClassWithVisibility |py| {
[INFO] [stdout] 1309 | |   pub(crate) def __new__(_cls) -> PyResult<Self> {
[INFO] [stdout] 1310 | |     Self::create_instance(py)
[INFO] [stdout] ...    |
[INFO] [stdout] 1326 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `ClassWithVisibility` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1308:1
[INFO] [stdout]      |
[INFO] [stdout] 1308 | / py_class!(pub(crate) class ClassWithVisibility |py| {
[INFO] [stdout] 1309 | |   pub(crate) def __new__(_cls) -> PyResult<Self> {
[INFO] [stdout] 1310 | |     Self::create_instance(py)
[INFO] [stdout] ...    |
[INFO] [stdout] 1326 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `ClassWithVisibility` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1383:1
[INFO] [stdout]      |
[INFO] [stdout] 1383 | / py_class!(class NumberExt |py| {
[INFO] [stdout] 1384 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 1385 | |         Ok("BA")
[INFO] [stdout] ...    |
[INFO] [stdout] 1403 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `NumberExt` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1383:1
[INFO] [stdout]      |
[INFO] [stdout] 1383 | / py_class!(class NumberExt |py| {
[INFO] [stdout] 1384 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 1385 | |         Ok("BA")
[INFO] [stdout] ...    |
[INFO] [stdout] 1403 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `NumberExt` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1427:1
[INFO] [stdout]      |
[INFO] [stdout] 1427 | / py_class!(class Py3Number |py| {
[INFO] [stdout] 1428 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 1429 | |         Ok("BA")
[INFO] [stdout] ...    |
[INFO] [stdout] 1443 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `Py3Number` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1427:1
[INFO] [stdout]      |
[INFO] [stdout] 1427 | / py_class!(class Py3Number |py| {
[INFO] [stdout] 1428 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stdout] 1429 | |         Ok("BA")
[INFO] [stdout] ...    |
[INFO] [stdout] 1443 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `Py3Number` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1464:1
[INFO] [stdout]      |
[INFO] [stdout] 1464 | / py_class!(class DummyMatMul |py| {
[INFO] [stdout] 1465 | |     data number: i32;
[INFO] [stdout] 1466 | |     def __new__(_cls, arg: i32) -> PyResult<DummyMatMul> {
[INFO] [stdout] 1467 | |         DummyMatMul::create_instance(py, arg)
[INFO] [stdout] ...    |
[INFO] [stdout] 1477 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `DummyMatMul` is not local
[INFO] [stdout]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]     --> tests/test_class.rs:1464:1
[INFO] [stdout]      |
[INFO] [stdout] 1464 | / py_class!(class DummyMatMul |py| {
[INFO] [stdout] 1465 | |     data number: i32;
[INFO] [stdout] 1466 | |     def __new__(_cls, arg: i32) -> PyResult<DummyMatMul> {
[INFO] [stdout] 1467 | |         DummyMatMul::create_instance(py, arg)
[INFO] [stdout] ...    |
[INFO] [stdout] 1477 | | });
[INFO] [stdout]      | |  ^
[INFO] [stdout]      | |  |
[INFO] [stdout]      | |  `DummyMatMul` is not local
[INFO] [stdout]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stdout]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stdout]      |
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stdout]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: specialization is experimental
[INFO] [stdout]    --> src/objects/sequence.rs:259:5
[INFO] [stdout]     |
[INFO] [stdout] 259 |     default fn extract(py: Python, obj: &'s PyObject) -> PyResult<Self> {
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
[INFO] [stdout]     = warning: unstable syntax can change at any point in the future, causing a hard error!
[INFO] [stdout]     = note: for more information, see issue #154045 <https://github.com/rust-lang/rust/issues/154045>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 15.52s
[INFO] running `Command { std: "docker" "inspect" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]   --> src/py_class/slots.rs:21:11
[INFO] [stderr]    |
[INFO] [stderr] 21 | use std::{isize, mem, ptr};
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/py_class/slots.rs:587:27
[INFO] [stderr]     |
[INFO] [stderr] 587 |         if val <= (isize::MAX as usize) {
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/boolobject.rs:10:1
[INFO] [stderr]     |
[INFO] [stderr]  10 | pyobject_newtype!(PyBool, PyBool_Check, PyBool_Type);
[INFO] [stderr]     | ---------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: `#[warn(static_mut_refs)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/capsule.rs:190:1
[INFO] [stderr]     |
[INFO] [stderr] 190 | pyobject_newtype!(PyCapsule, PyCapsule_CheckExact, PyCapsule_Type);
[INFO] [stderr]     | ------------------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/dict.rs:30:1
[INFO] [stderr]     |
[INFO] [stderr]  30 | pyobject_newtype!(PyDict, PyDict_Check, PyDict_Type);
[INFO] [stderr]     | ---------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/list.rs:28:1
[INFO] [stderr]     |
[INFO] [stderr]  28 | pyobject_newtype!(PyList, PyList_Check, PyList_Type);
[INFO] [stderr]     | ---------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/module.rs:33:1
[INFO] [stderr]     |
[INFO] [stderr]  33 | pyobject_newtype!(PyModule, PyModule_Check, PyModule_Type);
[INFO] [stderr]     | ---------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/num.rs:56:1
[INFO] [stderr]     |
[INFO] [stderr]  56 | pyobject_newtype!(PyLong, PyLong_Check, PyLong_Type);
[INFO] [stderr]     | ---------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/num.rs:65:1
[INFO] [stderr]     |
[INFO] [stderr]  65 | pyobject_newtype!(PyFloat, PyFloat_Check, PyFloat_Type);
[INFO] [stderr]     | ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/object.rs:113:44
[INFO] [stderr]     |
[INFO] [stderr] 113 |         unsafe { PyType::from_type_ptr(py, &mut ffi::PyBaseObject_Type) }
[INFO] [stderr]     |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr] help: use `&raw mut` instead to create a raw pointer
[INFO] [stderr]     |
[INFO] [stderr] 113 |         unsafe { PyType::from_type_ptr(py, &raw mut ffi::PyBaseObject_Type) }
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/set.rs:30:1
[INFO] [stderr]     |
[INFO] [stderr]  30 | pyobject_newtype!(PySet, PySet_Check, PySet_Type);
[INFO] [stderr]     | ------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/string.rs:36:1
[INFO] [stderr]     |
[INFO] [stderr]  36 | pyobject_newtype!(PyString, PyUnicode_Check, PyUnicode_Type);
[INFO] [stderr]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/string.rs:42:1
[INFO] [stderr]     |
[INFO] [stderr]  42 | pyobject_newtype!(PyBytes, PyBytes_Check, PyBytes_Type);
[INFO] [stderr]     | ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/objects/string.rs:270:17
[INFO] [stderr]     |
[INFO] [stderr] 270 |     pub fn data(&self, py: Python) -> PyStringData {
[INFO] [stderr]     |                 ^^^^^                 ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 270 |     pub fn data(&self, py: Python) -> PyStringData<'_> {
[INFO] [stderr]     |                                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/objects/string.rs:286:18
[INFO] [stderr]     |
[INFO] [stderr] 286 |     fn data_impl(&self, _py: Python) -> PyStringData {
[INFO] [stderr]     |                  ^^^^^                  ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 286 |     fn data_impl(&self, _py: Python) -> PyStringData<'_> {
[INFO] [stderr]     |                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/objects/string.rs:321:22
[INFO] [stderr]     |
[INFO] [stderr] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<str>> {
[INFO] [stderr]     |                      ^^^^^                          ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 321 |     pub fn to_string(&self, py: Python) -> PyResult<Cow<'_, str>> {
[INFO] [stderr]     |                                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/objects/string.rs:351:28
[INFO] [stderr]     |
[INFO] [stderr] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<str> {
[INFO] [stderr]     |                            ^^^^^                 ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 351 |     pub fn to_string_lossy(&self, py: Python) -> Cow<'_, str> {
[INFO] [stderr]     |                                                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/tuple.rs:31:1
[INFO] [stderr]     |
[INFO] [stderr]  31 | pyobject_newtype!(PyTuple, PyTuple_Check, PyTuple_Type);
[INFO] [stderr]     | ------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/objects/tuple.rs:91:17
[INFO] [stderr]    |
[INFO] [stderr] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<PyObject> {
[INFO] [stderr]    |                 ^^^^^                 ^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 91 |     pub fn iter(&self, py: Python) -> slice::Iter<'_, PyObject> {
[INFO] [stderr]    |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: creating a mutable reference to mutable static
[INFO] [stderr]    --> src/objects/mod.rs:119:85
[INFO] [stderr]     |
[INFO] [stderr] 119 |                 unsafe { crate::objects::typeobject::PyType::from_type_ptr(py, &mut crate::ffi::$typeobject) }
[INFO] [stderr]     |                                                                                     ^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static
[INFO] [stderr]     |
[INFO] [stderr]    ::: src/objects/typeobject.rs:31:1
[INFO] [stderr]     |
[INFO] [stderr]  31 | pyobject_newtype!(PyType, PyType_Check, PyType_Type);
[INFO] [stderr]     | ---------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives
[INFO] [stderr]     = help: use a type that relies on "interior mutability" instead; to read more on this, visit <https://doc.rust-lang.org/reference/interior-mutability.html>
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/static-mut-references.html>
[INFO] [stderr]     = note: this warning originates in the macro `pyobject_newtype` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: specialization is experimental
[INFO] [stderr]    --> src/objects/sequence.rs:259:5
[INFO] [stderr]     |
[INFO] [stderr] 259 |     default fn extract(py: Python, obj: &'s PyObject) -> PyResult<Self> {
[INFO] [stderr]     |     ^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: see issue #31844 <https://github.com/rust-lang/rust/issues/31844> for more information
[INFO] [stderr]     = warning: unstable syntax can change at any point in the future, causing a hard error!
[INFO] [stderr]     = note: for more information, see issue #154045 <https://github.com/rust-lang/rust/issues/154045>
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/objects/num.rs:433:27
[INFO] [stderr]     |
[INFO] [stderr] 433 |         let v = std::u32::MAX;
[INFO] [stderr]     |                           ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/objects/num.rs:444:27
[INFO] [stderr]     |
[INFO] [stderr] 444 |         let v = std::i64::MAX;
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i64::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/objects/num.rs:455:27
[INFO] [stderr]     |
[INFO] [stderr] 455 |         let v = std::i64::MIN;
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/objects/num.rs:466:27
[INFO] [stderr]     |
[INFO] [stderr] 466 |         let v = std::u64::MAX;
[INFO] [stderr]     |                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]   --> src/py_class/slots.rs:21:11
[INFO] [stderr]    |
[INFO] [stderr] 21 | use std::{isize, mem, ptr};
[INFO] [stderr]    |           ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `cpython` (lib) generated 21 warnings (run `cargo fix --lib -p cpython` to apply 5 suggestions)
[INFO] [stderr] warning: `cpython` (lib test) generated 25 warnings (20 duplicates)
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> tests/test_sharedref.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | / py_class!(class Owner |py| {
[INFO] [stderr] 4 | |     @shared data string: String;
[INFO] [stderr] 5 | | });
[INFO] [stderr]   | |  ^
[INFO] [stderr]   | |  |
[INFO] [stderr]   | |  `Owner` is not local
[INFO] [stderr]   | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]   |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]   = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]  --> tests/test_sharedref.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | / py_class!(class Owner |py| {
[INFO] [stderr] 4 | |     @shared data string: String;
[INFO] [stderr] 5 | | });
[INFO] [stderr]   | |  ^
[INFO] [stderr]   | |  |
[INFO] [stderr]   | |  `Owner` is not local
[INFO] [stderr]   | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]   |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]   = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]   = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stderr]    --> tests/test_function.rs:114:9
[INFO] [stderr]     |
[INFO] [stderr] 114 |         drop(py); // avoid unused variable warning
[INFO] [stderr]     |         ^^^^^--^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `Python<'_>`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dropping_copy_types)]` on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 114 -         drop(py); // avoid unused variable warning
[INFO] [stderr] 114 +         let _ = py; // avoid unused variable warning
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing
[INFO] [stderr]    --> tests/test_function.rs:133:9
[INFO] [stderr]     |
[INFO] [stderr] 133 |         drop(py);
[INFO] [stderr]     |         ^^^^^--^
[INFO] [stderr]     |              |
[INFO] [stderr]     |              argument has type `Python<'_>`
[INFO] [stderr]     |
[INFO] [stderr] help: use `let _ = ...` to ignore the expression or result
[INFO] [stderr]     |
[INFO] [stderr] 133 -         drop(py);
[INFO] [stderr] 133 +         let _ = py;
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated module `std::isize`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]  --> tests/test_class.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::{isize, iter, mem};
[INFO] [stderr]   |           ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::isize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> tests/test_class.rs:430:49
[INFO] [stderr]     |
[INFO] [stderr] 430 |     let inst = Len::create_instance(py, (isize::MAX as usize) + 1).unwrap();
[INFO] [stderr]     |                                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:36:1
[INFO] [stderr]    |
[INFO] [stderr] 36 | py_class!(class EmptyClass |py| { });
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    | |
[INFO] [stderr]    | `EmptyClass` is not local
[INFO] [stderr]    | `PythonObjectWithTypeObject` is not local
[INFO] [stderr]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:36:1
[INFO] [stderr]    |
[INFO] [stderr] 36 | py_class!(class EmptyClass |py| { });
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    | |
[INFO] [stderr]    | `EmptyClass` is not local
[INFO] [stderr]    | `PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:49:1
[INFO] [stderr]    |
[INFO] [stderr] 49 | py_class!(class EmptyClassInModule |py| { });
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    | |
[INFO] [stderr]    | `EmptyClassInModule` is not local
[INFO] [stderr]    | `PythonObjectWithTypeObject` is not local
[INFO] [stderr]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:49:1
[INFO] [stderr]    |
[INFO] [stderr] 49 | py_class!(class EmptyClassInModule |py| { });
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    | |
[INFO] [stderr]    | `EmptyClassInModule` is not local
[INFO] [stderr]    | `PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]    | move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / py_class!(class EmptyClassWithNew |py| {
[INFO] [stderr] 76 | |     def __new__(_cls) -> PyResult<EmptyClassWithNew> {
[INFO] [stderr] 77 | |         EmptyClassWithNew::create_instance(py)
[INFO] [stderr] 78 | |     }
[INFO] [stderr] 79 | | });
[INFO] [stderr]    | |  ^
[INFO] [stderr]    | |  |
[INFO] [stderr]    | |  `EmptyClassWithNew` is not local
[INFO] [stderr]    | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:75:1
[INFO] [stderr]    |
[INFO] [stderr] 75 | / py_class!(class EmptyClassWithNew |py| {
[INFO] [stderr] 76 | |     def __new__(_cls) -> PyResult<EmptyClassWithNew> {
[INFO] [stderr] 77 | |         EmptyClassWithNew::create_instance(py)
[INFO] [stderr] 78 | |     }
[INFO] [stderr] 79 | | });
[INFO] [stderr]    | |  ^
[INFO] [stderr]    | |  |
[INFO] [stderr]    | |  `EmptyClassWithNew` is not local
[INFO] [stderr]    | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:93:1
[INFO] [stderr]    |
[INFO] [stderr] 93 | / py_class!(class NewWithOneArg |py| {
[INFO] [stderr] 94 | |     data _data: i32;
[INFO] [stderr] 95 | |     def __new__(_cls, arg: i32) -> PyResult<NewWithOneArg> {
[INFO] [stderr] 96 | |         NewWithOneArg::create_instance(py, arg)
[INFO] [stderr] 97 | |     }
[INFO] [stderr] 98 | | });
[INFO] [stderr]    | |  ^
[INFO] [stderr]    | |  |
[INFO] [stderr]    | |  `NewWithOneArg` is not local
[INFO] [stderr]    | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> tests/test_class.rs:93:1
[INFO] [stderr]    |
[INFO] [stderr] 93 | / py_class!(class NewWithOneArg |py| {
[INFO] [stderr] 94 | |     data _data: i32;
[INFO] [stderr] 95 | |     def __new__(_cls, arg: i32) -> PyResult<NewWithOneArg> {
[INFO] [stderr] 96 | |         NewWithOneArg::create_instance(py, arg)
[INFO] [stderr] 97 | |     }
[INFO] [stderr] 98 | | });
[INFO] [stderr]    | |  ^
[INFO] [stderr]    | |  |
[INFO] [stderr]    | |  `NewWithOneArg` is not local
[INFO] [stderr]    | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]    |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:113:1
[INFO] [stderr]     |
[INFO] [stderr] 113 | / py_class!(class NewWithTwoArgs |py| {
[INFO] [stderr] 114 | |     data _data1: i32;
[INFO] [stderr] 115 | |     data _data2: i32;
[INFO] [stderr] 116 | |     def __new__(_cls, arg1: i32, arg2: i32) -> PyResult<NewWithTwoArgs> {
[INFO] [stderr] ...   |
[INFO] [stderr] 119 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `NewWithTwoArgs` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:113:1
[INFO] [stderr]     |
[INFO] [stderr] 113 | / py_class!(class NewWithTwoArgs |py| {
[INFO] [stderr] 114 | |     data _data1: i32;
[INFO] [stderr] 115 | |     data _data2: i32;
[INFO] [stderr] 116 | |     def __new__(_cls, arg1: i32, arg2: i32) -> PyResult<NewWithTwoArgs> {
[INFO] [stderr] ...   |
[INFO] [stderr] 119 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `NewWithTwoArgs` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:144:1
[INFO] [stderr]     |
[INFO] [stderr] 144 | / py_class!(class DataIsDropped |py| {
[INFO] [stderr] 145 | |     data member1: TestDropCall;
[INFO] [stderr] 146 | |     data member2: TestDropCall;
[INFO] [stderr] 147 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `DataIsDropped` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:144:1
[INFO] [stderr]     |
[INFO] [stderr] 144 | / py_class!(class DataIsDropped |py| {
[INFO] [stderr] 145 | |     data member1: TestDropCall;
[INFO] [stderr] 146 | |     data member2: TestDropCall;
[INFO] [stderr] 147 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `DataIsDropped` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:172:1
[INFO] [stderr]     |
[INFO] [stderr] 172 | / py_class!(class InstanceMethod |py| {
[INFO] [stderr] 173 | |     data member: i32;
[INFO] [stderr] 174 | |
[INFO] [stderr] 175 | |     def method(&self) -> PyResult<i32> {
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `InstanceMethod` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:172:1
[INFO] [stderr]     |
[INFO] [stderr] 172 | / py_class!(class InstanceMethod |py| {
[INFO] [stderr] 173 | |     data member: i32;
[INFO] [stderr] 174 | |
[INFO] [stderr] 175 | |     def method(&self) -> PyResult<i32> {
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `InstanceMethod` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:192:1
[INFO] [stderr]     |
[INFO] [stderr] 192 | / py_class!(class InstanceMethodReturnsNone |py| {
[INFO] [stderr] 193 | |     data member: AtomicUsize;
[INFO] [stderr] 194 | |
[INFO] [stderr] 195 | |     def value(&self) -> PyResult<usize> {
[INFO] [stderr] ...   |
[INFO] [stderr] 203 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `InstanceMethodReturnsNone` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:192:1
[INFO] [stderr]     |
[INFO] [stderr] 192 | / py_class!(class InstanceMethodReturnsNone |py| {
[INFO] [stderr] 193 | |     data member: AtomicUsize;
[INFO] [stderr] 194 | |
[INFO] [stderr] 195 | |     def value(&self) -> PyResult<usize> {
[INFO] [stderr] ...   |
[INFO] [stderr] 203 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `InstanceMethodReturnsNone` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:220:1
[INFO] [stderr]     |
[INFO] [stderr] 220 | / py_class!(class InstanceMethodWithArgs |py| {
[INFO] [stderr] 221 | |     data member: i32;
[INFO] [stderr] 222 | |
[INFO] [stderr] 223 | |     def method(&self, multiplier: i32) -> PyResult<i32> {
[INFO] [stderr] ...   |
[INFO] [stderr] 230 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `InstanceMethodWithArgs` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:220:1
[INFO] [stderr]     |
[INFO] [stderr] 220 | / py_class!(class InstanceMethodWithArgs |py| {
[INFO] [stderr] 221 | |     data member: i32;
[INFO] [stderr] 222 | |
[INFO] [stderr] 223 | |     def method(&self, multiplier: i32) -> PyResult<i32> {
[INFO] [stderr] ...   |
[INFO] [stderr] 230 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `InstanceMethodWithArgs` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:249:1
[INFO] [stderr]     |
[INFO] [stderr] 249 | / py_class!(class ClassMethod |py| {
[INFO] [stderr] 250 | |     def __new__(cls) -> PyResult<ClassMethod> {
[INFO] [stderr] 251 | |         ClassMethod::create_instance(py)
[INFO] [stderr] ...   |
[INFO] [stderr] 258 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ClassMethod` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:249:1
[INFO] [stderr]     |
[INFO] [stderr] 249 | / py_class!(class ClassMethod |py| {
[INFO] [stderr] 250 | |     def __new__(cls) -> PyResult<ClassMethod> {
[INFO] [stderr] 251 | |         ClassMethod::create_instance(py)
[INFO] [stderr] ...   |
[INFO] [stderr] 258 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ClassMethod` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:281:1
[INFO] [stderr]     |
[INFO] [stderr] 281 | / py_class!(class ClassMethodWithArgs |py| {
[INFO] [stderr] 282 | |     @classmethod
[INFO] [stderr] 283 | |     def method(cls, input: &str) -> PyResult<String> {
[INFO] [stderr] 284 | |         Ok(format!("{}.method({})", cls.name(py), input))
[INFO] [stderr] 285 | |     }
[INFO] [stderr] 286 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ClassMethodWithArgs` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:281:1
[INFO] [stderr]     |
[INFO] [stderr] 281 | / py_class!(class ClassMethodWithArgs |py| {
[INFO] [stderr] 282 | |     @classmethod
[INFO] [stderr] 283 | |     def method(cls, input: &str) -> PyResult<String> {
[INFO] [stderr] 284 | |         Ok(format!("{}.method({})", cls.name(py), input))
[INFO] [stderr] 285 | |     }
[INFO] [stderr] 286 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ClassMethodWithArgs` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:304:1
[INFO] [stderr]     |
[INFO] [stderr] 304 | / py_class!(class StaticMethod |py| {
[INFO] [stderr] 305 | |     def __new__(cls) -> PyResult<StaticMethod> {
[INFO] [stderr] 306 | |         StaticMethod::create_instance(py)
[INFO] [stderr] ...   |
[INFO] [stderr] 313 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StaticMethod` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:304:1
[INFO] [stderr]     |
[INFO] [stderr] 304 | / py_class!(class StaticMethod |py| {
[INFO] [stderr] 305 | |     def __new__(cls) -> PyResult<StaticMethod> {
[INFO] [stderr] 306 | |         StaticMethod::create_instance(py)
[INFO] [stderr] ...   |
[INFO] [stderr] 313 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StaticMethod` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:337:1
[INFO] [stderr]     |
[INFO] [stderr] 337 | / py_class!(class StaticMethodWithArgs |py| {
[INFO] [stderr] 338 | |     @staticmethod
[INFO] [stderr] 339 | |     def method(input: i32) -> PyResult<String> {
[INFO] [stderr] 340 | |         Ok(format!("0x{:x}", input))
[INFO] [stderr] 341 | |     }
[INFO] [stderr] 342 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StaticMethodWithArgs` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:337:1
[INFO] [stderr]     |
[INFO] [stderr] 337 | / py_class!(class StaticMethodWithArgs |py| {
[INFO] [stderr] 338 | |     @staticmethod
[INFO] [stderr] 339 | |     def method(input: i32) -> PyResult<String> {
[INFO] [stderr] 340 | |         Ok(format!("0x{:x}", input))
[INFO] [stderr] 341 | |     }
[INFO] [stderr] 342 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StaticMethodWithArgs` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:357:1
[INFO] [stderr]     |
[INFO] [stderr] 357 | / py_class!(class StaticData |py| {
[INFO] [stderr] 358 | |     static VAL1 = 123;
[INFO] [stderr] 359 | |     static VAL2 = py.None();
[INFO] [stderr] 360 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StaticData` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:357:1
[INFO] [stderr]     |
[INFO] [stderr] 357 | / py_class!(class StaticData |py| {
[INFO] [stderr] 358 | |     static VAL1 = 123;
[INFO] [stderr] 359 | |     static VAL2 = py.None();
[INFO] [stderr] 360 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StaticData` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:374:1
[INFO] [stderr]     |
[INFO] [stderr] 374 | / py_class!(class GCIntegration |py| {
[INFO] [stderr] 375 | |     data self_ref: RefCell<PyObject>;
[INFO] [stderr] 376 | |     data dropped: TestDropCall;
[INFO] [stderr] ...   |
[INFO] [stderr] 387 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `GCIntegration` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:374:1
[INFO] [stderr]     |
[INFO] [stderr] 374 | / py_class!(class GCIntegration |py| {
[INFO] [stderr] 375 | |     data self_ref: RefCell<PyObject>;
[INFO] [stderr] 376 | |     data dropped: TestDropCall;
[INFO] [stderr] ...   |
[INFO] [stderr] 387 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `GCIntegration` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:410:1
[INFO] [stderr]     |
[INFO] [stderr] 410 | / py_class!(class Len |py| {
[INFO] [stderr] 411 | |     data l: usize;
[INFO] [stderr] 412 | |
[INFO] [stderr] 413 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stderr] ...   |
[INFO] [stderr] 416 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Len` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:410:1
[INFO] [stderr]     |
[INFO] [stderr] 410 | / py_class!(class Len |py| {
[INFO] [stderr] 411 | |     data l: usize;
[INFO] [stderr] 412 | |
[INFO] [stderr] 413 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stderr] ...   |
[INFO] [stderr] 416 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Len` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:434:1
[INFO] [stderr]     |
[INFO] [stderr] 434 | / py_class!(class Iterator |py| {
[INFO] [stderr] 435 | |     data iter: RefCell<Box<dyn iter::Iterator<Item=i32> + Send>>;
[INFO] [stderr] 436 | |
[INFO] [stderr] 437 | |     def __iter__(&self) -> PyResult<Iterator> {
[INFO] [stderr] ...   |
[INFO] [stderr] 444 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Iterator` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:434:1
[INFO] [stderr]     |
[INFO] [stderr] 434 | / py_class!(class Iterator |py| {
[INFO] [stderr] 435 | |     data iter: RefCell<Box<dyn iter::Iterator<Item=i32> + Send>>;
[INFO] [stderr] 436 | |
[INFO] [stderr] 437 | |     def __iter__(&self) -> PyResult<Iterator> {
[INFO] [stderr] ...   |
[INFO] [stderr] 444 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Iterator` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:456:1
[INFO] [stderr]     |
[INFO] [stderr] 456 | / py_class!(class StringMethods |py| {
[INFO] [stderr] 457 | |     def __str__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 458 | |         Ok("str")
[INFO] [stderr] ...   |
[INFO] [stderr] 476 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StringMethods` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:456:1
[INFO] [stderr]     |
[INFO] [stderr] 456 | / py_class!(class StringMethods |py| {
[INFO] [stderr] 457 | |     def __str__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 458 | |         Ok("str")
[INFO] [stderr] ...   |
[INFO] [stderr] 476 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `StringMethods` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:509:1
[INFO] [stderr]     |
[INFO] [stderr] 509 | / py_class!(class Comparisons |py| {
[INFO] [stderr] 510 | |     data val: i32;
[INFO] [stderr] 511 | |
[INFO] [stderr] 512 | |     def __hash__(&self) -> PyResult<i32> {
[INFO] [stderr] ...   |
[INFO] [stderr] 519 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Comparisons` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:509:1
[INFO] [stderr]     |
[INFO] [stderr] 509 | / py_class!(class Comparisons |py| {
[INFO] [stderr] 510 | |     data val: i32;
[INFO] [stderr] 511 | |
[INFO] [stderr] 512 | |     def __hash__(&self) -> PyResult<i32> {
[INFO] [stderr] ...   |
[INFO] [stderr] 519 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Comparisons` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:538:1
[INFO] [stderr]     |
[INFO] [stderr] 538 | / py_class!(class Sequence |py| {
[INFO] [stderr] 539 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stderr] 540 | |         Ok(5)
[INFO] [stderr] ...   |
[INFO] [stderr] 551 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Sequence` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:538:1
[INFO] [stderr]     |
[INFO] [stderr] 538 | / py_class!(class Sequence |py| {
[INFO] [stderr] 539 | |     def __len__(&self) -> PyResult<usize> {
[INFO] [stderr] 540 | |         Ok(5)
[INFO] [stderr] ...   |
[INFO] [stderr] 551 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Sequence` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:563:1
[INFO] [stderr]     |
[INFO] [stderr] 563 | / py_class!(class SequenceRef |py| {
[INFO] [stderr] 564 | |     def __getitem__(&self, key: &str) -> PyResult<String> {
[INFO] [stderr] 565 | |         if key.is_empty() {
[INFO] [stderr] 566 | |             return Err(PyErr::new::<exc::IndexError, NoArgs>(py, NoArgs));
[INFO] [stderr] ...   |
[INFO] [stderr] 577 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SequenceRef` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:563:1
[INFO] [stderr]     |
[INFO] [stderr] 563 | / py_class!(class SequenceRef |py| {
[INFO] [stderr] 564 | |     def __getitem__(&self, key: &str) -> PyResult<String> {
[INFO] [stderr] 565 | |         if key.is_empty() {
[INFO] [stderr] 566 | |             return Err(PyErr::new::<exc::IndexError, NoArgs>(py, NoArgs));
[INFO] [stderr] ...   |
[INFO] [stderr] 577 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SequenceRef` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:592:1
[INFO] [stderr]     |
[INFO] [stderr] 592 | / py_class!(class Callable |py| {
[INFO] [stderr] 593 | |     def __call__(&self, arg: i32) -> PyResult<i32> {
[INFO] [stderr] 594 | |         Ok(arg * 6)
[INFO] [stderr] 595 | |     }
[INFO] [stderr] 596 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Callable` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:592:1
[INFO] [stderr]     |
[INFO] [stderr] 592 | / py_class!(class Callable |py| {
[INFO] [stderr] 593 | |     def __call__(&self, arg: i32) -> PyResult<i32> {
[INFO] [stderr] 594 | |         Ok(arg * 6)
[INFO] [stderr] 595 | |     }
[INFO] [stderr] 596 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Callable` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:611:1
[INFO] [stderr]     |
[INFO] [stderr] 611 | / py_class!(class SetItem |py| {
[INFO] [stderr] 612 | |     data key: Cell<i32>;
[INFO] [stderr] 613 | |     data val: Cell<i32>;
[INFO] [stderr] ...   |
[INFO] [stderr] 620 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetItem` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:611:1
[INFO] [stderr]     |
[INFO] [stderr] 611 | / py_class!(class SetItem |py| {
[INFO] [stderr] 612 | |     data key: Cell<i32>;
[INFO] [stderr] 613 | |     data val: Cell<i32>;
[INFO] [stderr] ...   |
[INFO] [stderr] 620 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetItem` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:634:1
[INFO] [stderr]     |
[INFO] [stderr] 634 | / py_class!(class SetItemRef |py| {
[INFO] [stderr] 635 | |     data key: RefCell<String>;
[INFO] [stderr] 636 | |     data val: Cell<i32>;
[INFO] [stderr] ...   |
[INFO] [stderr] 643 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetItemRef` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:634:1
[INFO] [stderr]     |
[INFO] [stderr] 634 | / py_class!(class SetItemRef |py| {
[INFO] [stderr] 635 | |     data key: RefCell<String>;
[INFO] [stderr] 636 | |     data val: Cell<i32>;
[INFO] [stderr] ...   |
[INFO] [stderr] 643 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetItemRef` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:657:1
[INFO] [stderr]     |
[INFO] [stderr] 657 | / py_class!(class SetItemOptRef |py| {
[INFO] [stderr] 658 | |     data key: RefCell<String>;
[INFO] [stderr] 659 | |     data val: Cell<i32>;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetItemOptRef` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:657:1
[INFO] [stderr]     |
[INFO] [stderr] 657 | / py_class!(class SetItemOptRef |py| {
[INFO] [stderr] 658 | |     data key: RefCell<String>;
[INFO] [stderr] 659 | |     data val: Cell<i32>;
[INFO] [stderr] ...   |
[INFO] [stderr] 670 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetItemOptRef` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:684:1
[INFO] [stderr]     |
[INFO] [stderr] 684 | / py_class!(class DelItem |py| {
[INFO] [stderr] 685 | |     data key: Cell<i32>;
[INFO] [stderr] 686 | |
[INFO] [stderr] 687 | |     def __delitem__(&self, key: i32) -> PyResult<()> {
[INFO] [stderr] ...   |
[INFO] [stderr] 691 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `DelItem` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:684:1
[INFO] [stderr]     |
[INFO] [stderr] 684 | / py_class!(class DelItem |py| {
[INFO] [stderr] 685 | |     data key: Cell<i32>;
[INFO] [stderr] 686 | |
[INFO] [stderr] 687 | |     def __delitem__(&self, key: i32) -> PyResult<()> {
[INFO] [stderr] ...   |
[INFO] [stderr] 691 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `DelItem` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:704:1
[INFO] [stderr]     |
[INFO] [stderr] 704 | / py_class!(class SetDelItem |py| {
[INFO] [stderr] 705 | |     data val: Cell<Option<i32>>;
[INFO] [stderr] 706 | |
[INFO] [stderr] 707 | |     def __setitem__(&self, key: i32, val: i32) -> PyResult<()> {
[INFO] [stderr] ...   |
[INFO] [stderr] 716 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetDelItem` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:704:1
[INFO] [stderr]     |
[INFO] [stderr] 704 | / py_class!(class SetDelItem |py| {
[INFO] [stderr] 705 | |     data val: Cell<Option<i32>>;
[INFO] [stderr] 706 | |
[INFO] [stderr] 707 | |     def __setitem__(&self, key: i32, val: i32) -> PyResult<()> {
[INFO] [stderr] ...   |
[INFO] [stderr] 716 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `SetDelItem` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:730:1
[INFO] [stderr]     |
[INFO] [stderr] 730 | / py_class!(class Reversed |py| {
[INFO] [stderr] 731 | |     def __reversed__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 732 | |         Ok("I am reversed")
[INFO] [stderr] 733 | |     }
[INFO] [stderr] 734 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Reversed` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:730:1
[INFO] [stderr]     |
[INFO] [stderr] 730 | / py_class!(class Reversed |py| {
[INFO] [stderr] 731 | |     def __reversed__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 732 | |         Ok("I am reversed")
[INFO] [stderr] 733 | |     }
[INFO] [stderr] 734 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Reversed` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:745:1
[INFO] [stderr]     |
[INFO] [stderr] 745 | / py_class!(class Contains |py| {
[INFO] [stderr] 746 | |     def __contains__(&self, item: i32) -> PyResult<bool> {
[INFO] [stderr] 747 | |         Ok(item >= 0)
[INFO] [stderr] 748 | |     }
[INFO] [stderr] 749 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Contains` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:745:1
[INFO] [stderr]     |
[INFO] [stderr] 745 | / py_class!(class Contains |py| {
[INFO] [stderr] 746 | |     def __contains__(&self, item: i32) -> PyResult<bool> {
[INFO] [stderr] 747 | |         Ok(item >= 0)
[INFO] [stderr] 748 | |     }
[INFO] [stderr] 749 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `Contains` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:762:1
[INFO] [stderr]     |
[INFO] [stderr] 762 | / py_class!(class ContainsRef |py| {
[INFO] [stderr] 763 | |     def __contains__(&self, item: &str) -> PyResult<bool> {
[INFO] [stderr] 764 | |         Ok(item.is_empty())
[INFO] [stderr] 765 | |     }
[INFO] [stderr] 766 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ContainsRef` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:762:1
[INFO] [stderr]     |
[INFO] [stderr] 762 | / py_class!(class ContainsRef |py| {
[INFO] [stderr] 763 | |     def __contains__(&self, item: &str) -> PyResult<bool> {
[INFO] [stderr] 764 | |         Ok(item.is_empty())
[INFO] [stderr] 765 | |     }
[INFO] [stderr] 766 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ContainsRef` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:779:1
[INFO] [stderr]     |
[INFO] [stderr] 779 | / py_class!(class ContainsOptRef |py| {
[INFO] [stderr] 780 | |     def __contains__(&self, item: Option<&str>) -> PyResult<bool> {
[INFO] [stderr] 781 | |         Ok(item.map_or(false, str::is_empty))
[INFO] [stderr] 782 | |     }
[INFO] [stderr] 783 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ContainsOptRef` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:779:1
[INFO] [stderr]     |
[INFO] [stderr] 779 | / py_class!(class ContainsOptRef |py| {
[INFO] [stderr] 780 | |     def __contains__(&self, item: Option<&str>) -> PyResult<bool> {
[INFO] [stderr] 781 | |         Ok(item.map_or(false, str::is_empty))
[INFO] [stderr] 782 | |     }
[INFO] [stderr] 783 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `ContainsOptRef` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:797:1
[INFO] [stderr]     |
[INFO] [stderr] 797 | / py_class!(class UnaryArithmetic |py| {
[INFO] [stderr] 798 | |     def __neg__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 799 | |         Ok("neg")
[INFO] [stderr] ...   |
[INFO] [stderr] 813 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `UnaryArithmetic` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:797:1
[INFO] [stderr]     |
[INFO] [stderr] 797 | / py_class!(class UnaryArithmetic |py| {
[INFO] [stderr] 798 | |     def __neg__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 799 | |         Ok("neg")
[INFO] [stderr] ...   |
[INFO] [stderr] 813 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `UnaryArithmetic` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:827:1
[INFO] [stderr]     |
[INFO] [stderr] 827 | / py_class!(class BinaryArithmetic |py| {
[INFO] [stderr] 828 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 829 | |         Ok("BA")
[INFO] [stderr] ...   |
[INFO] [stderr] 863 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `BinaryArithmetic` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:827:1
[INFO] [stderr]     |
[INFO] [stderr] 827 | / py_class!(class BinaryArithmetic |py| {
[INFO] [stderr] 828 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 829 | |         Ok("BA")
[INFO] [stderr] ...   |
[INFO] [stderr] 863 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `BinaryArithmetic` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:891:1
[INFO] [stderr]     |
[INFO] [stderr] 891 | / py_class!(class RichComparisons |py| {
[INFO] [stderr] 892 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 893 | |         Ok("RC")
[INFO] [stderr] ...   |
[INFO] [stderr] 906 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `RichComparisons` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:891:1
[INFO] [stderr]     |
[INFO] [stderr] 891 | / py_class!(class RichComparisons |py| {
[INFO] [stderr] 892 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 893 | |         Ok("RC")
[INFO] [stderr] ...   |
[INFO] [stderr] 906 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `RichComparisons` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:908:1
[INFO] [stderr]     |
[INFO] [stderr] 908 | / py_class!(class RichComparisons2 |py| {
[INFO] [stderr] 909 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 910 | |         Ok("RC2")
[INFO] [stderr] ...   |
[INFO] [stderr] 920 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `RichComparisons2` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:908:1
[INFO] [stderr]     |
[INFO] [stderr] 908 | / py_class!(class RichComparisons2 |py| {
[INFO] [stderr] 909 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 910 | |         Ok("RC2")
[INFO] [stderr] ...   |
[INFO] [stderr] 920 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `RichComparisons2` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:975:1
[INFO] [stderr]     |
[INFO] [stderr] 975 | / py_class!(class RichComparisonsRef |py| {
[INFO] [stderr] 976 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 977 | |         Ok("RCR")
[INFO] [stderr] ...   |
[INFO] [stderr] 990 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `RichComparisonsRef` is not local
[INFO] [stderr]     | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]    --> tests/test_class.rs:975:1
[INFO] [stderr]     |
[INFO] [stderr] 975 | / py_class!(class RichComparisonsRef |py| {
[INFO] [stderr] 976 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 977 | |         Ok("RCR")
[INFO] [stderr] ...   |
[INFO] [stderr] 990 | | });
[INFO] [stderr]     | |  ^
[INFO] [stderr]     | |  |
[INFO] [stderr]     | |  `RichComparisonsRef` is not local
[INFO] [stderr]     | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]     |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]     |
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]     = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]     = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1008:1
[INFO] [stderr]      |
[INFO] [stderr] 1008 | / py_class!(class RichComparisonsOptRef |py| {
[INFO] [stderr] 1009 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 1010 | |         Ok("RCR")
[INFO] [stderr] ...    |
[INFO] [stderr] 1029 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `RichComparisonsOptRef` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1008:1
[INFO] [stderr]      |
[INFO] [stderr] 1008 | / py_class!(class RichComparisonsOptRef |py| {
[INFO] [stderr] 1009 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 1010 | |         Ok("RCR")
[INFO] [stderr] ...    |
[INFO] [stderr] 1029 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `RichComparisonsOptRef` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1043:1
[INFO] [stderr]      |
[INFO] [stderr] 1043 | / py_class!(class InPlaceOperations |py| {
[INFO] [stderr] 1044 | |     data value: Cell<u32>;
[INFO] [stderr] 1045 | |
[INFO] [stderr] 1046 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stderr] ...    |
[INFO] [stderr] 1089 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `InPlaceOperations` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1043:1
[INFO] [stderr]      |
[INFO] [stderr] 1043 | / py_class!(class InPlaceOperations |py| {
[INFO] [stderr] 1044 | |     data value: Cell<u32>;
[INFO] [stderr] 1045 | |
[INFO] [stderr] 1046 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stderr] ...    |
[INFO] [stderr] 1089 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `InPlaceOperations` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1153:1
[INFO] [stderr]      |
[INFO] [stderr] 1153 | / py_class!(class InPlaceOperationsRef |py| {
[INFO] [stderr] 1154 | |     data value: RefCell<String>;
[INFO] [stderr] 1155 | |
[INFO] [stderr] 1156 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stderr] ...    |
[INFO] [stderr] 1165 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `InPlaceOperationsRef` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1153:1
[INFO] [stderr]      |
[INFO] [stderr] 1153 | / py_class!(class InPlaceOperationsRef |py| {
[INFO] [stderr] 1154 | |     data value: RefCell<String>;
[INFO] [stderr] 1155 | |
[INFO] [stderr] 1156 | |     def __repr__(&self) -> PyResult<String> {
[INFO] [stderr] ...    |
[INFO] [stderr] 1165 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `InPlaceOperationsRef` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1180:1
[INFO] [stderr]      |
[INFO] [stderr] 1180 | / py_class!(class ContextManager |py| {
[INFO] [stderr] 1181 | |     data exit_called : Cell<bool>;
[INFO] [stderr] 1182 | |
[INFO] [stderr] 1183 | |     def __enter__(&self) -> PyResult<i32> {
[INFO] [stderr] ...    |
[INFO] [stderr] 1195 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `ContextManager` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1180:1
[INFO] [stderr]      |
[INFO] [stderr] 1180 | / py_class!(class ContextManager |py| {
[INFO] [stderr] 1181 | |     data exit_called : Cell<bool>;
[INFO] [stderr] 1182 | |
[INFO] [stderr] 1183 | |     def __enter__(&self) -> PyResult<i32> {
[INFO] [stderr] ...    |
[INFO] [stderr] 1195 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `ContextManager` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1220:1
[INFO] [stderr]      |
[INFO] [stderr] 1220 | / py_class!(class Properties |py| {
[INFO] [stderr] 1221 | |     data value: Cell<i32>;
[INFO] [stderr] 1222 | |     data value_by_ref: RefCell<String>;
[INFO] [stderr] 1223 | |     data value_by_opt_ref: RefCell<String>;
[INFO] [stderr] ...    |
[INFO] [stderr] 1264 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `Properties` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1220:1
[INFO] [stderr]      |
[INFO] [stderr] 1220 | / py_class!(class Properties |py| {
[INFO] [stderr] 1221 | |     data value: Cell<i32>;
[INFO] [stderr] 1222 | |     data value_by_ref: RefCell<String>;
[INFO] [stderr] 1223 | |     data value_by_opt_ref: RefCell<String>;
[INFO] [stderr] ...    |
[INFO] [stderr] 1264 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `Properties` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1308:1
[INFO] [stderr]      |
[INFO] [stderr] 1308 | / py_class!(pub(crate) class ClassWithVisibility |py| {
[INFO] [stderr] 1309 | |   pub(crate) def __new__(_cls) -> PyResult<Self> {
[INFO] [stderr] 1310 | |     Self::create_instance(py)
[INFO] [stderr] ...    |
[INFO] [stderr] 1326 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `ClassWithVisibility` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1308:1
[INFO] [stderr]      |
[INFO] [stderr] 1308 | / py_class!(pub(crate) class ClassWithVisibility |py| {
[INFO] [stderr] 1309 | |   pub(crate) def __new__(_cls) -> PyResult<Self> {
[INFO] [stderr] 1310 | |     Self::create_instance(py)
[INFO] [stderr] ...    |
[INFO] [stderr] 1326 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `ClassWithVisibility` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1383:1
[INFO] [stderr]      |
[INFO] [stderr] 1383 | / py_class!(class NumberExt |py| {
[INFO] [stderr] 1384 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 1385 | |         Ok("BA")
[INFO] [stderr] ...    |
[INFO] [stderr] 1403 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `NumberExt` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1383:1
[INFO] [stderr]      |
[INFO] [stderr] 1383 | / py_class!(class NumberExt |py| {
[INFO] [stderr] 1384 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 1385 | |         Ok("BA")
[INFO] [stderr] ...    |
[INFO] [stderr] 1403 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `NumberExt` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1427:1
[INFO] [stderr]      |
[INFO] [stderr] 1427 | / py_class!(class Py3Number |py| {
[INFO] [stderr] 1428 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 1429 | |         Ok("BA")
[INFO] [stderr] ...    |
[INFO] [stderr] 1443 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `Py3Number` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1427:1
[INFO] [stderr]      |
[INFO] [stderr] 1427 | / py_class!(class Py3Number |py| {
[INFO] [stderr] 1428 | |     def __repr__(&self) -> PyResult<&'static str> {
[INFO] [stderr] 1429 | |         Ok("BA")
[INFO] [stderr] ...    |
[INFO] [stderr] 1443 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `Py3Number` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1464:1
[INFO] [stderr]      |
[INFO] [stderr] 1464 | / py_class!(class DummyMatMul |py| {
[INFO] [stderr] 1465 | |     data number: i32;
[INFO] [stderr] 1466 | |     def __new__(_cls, arg: i32) -> PyResult<DummyMatMul> {
[INFO] [stderr] 1467 | |         DummyMatMul::create_instance(py, arg)
[INFO] [stderr] ...    |
[INFO] [stderr] 1477 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `DummyMatMul` is not local
[INFO] [stderr]      | |__`PythonObjectWithTypeObject` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]     --> tests/test_class.rs:1464:1
[INFO] [stderr]      |
[INFO] [stderr] 1464 | / py_class!(class DummyMatMul |py| {
[INFO] [stderr] 1465 | |     data number: i32;
[INFO] [stderr] 1466 | |     def __new__(_cls, arg: i32) -> PyResult<DummyMatMul> {
[INFO] [stderr] 1467 | |         DummyMatMul::create_instance(py, arg)
[INFO] [stderr] ...    |
[INFO] [stderr] 1477 | | });
[INFO] [stderr]      | |  ^
[INFO] [stderr]      | |  |
[INFO] [stderr]      | |  `DummyMatMul` is not local
[INFO] [stderr]      | |__`PythonObjectFromPyClassMacro` is not local
[INFO] [stderr]      |    move the `impl` block outside of this associated function `create_instance`
[INFO] [stderr]      |
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]      = note: the macro `$crate::py_class_impl` may come from an old version of the `cpython` crate, try updating your dependency with `cargo update -p cpython`
[INFO] [stderr]      = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]      = note: this warning originates in the macro `$crate::py_class_impl` which comes from the expansion of the macro `py_class` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `cpython` (test "test_sharedref") generated 2 warnings
[INFO] [stderr] warning: `cpython` (test "test_function") generated 2 warnings
[INFO] [stderr] warning: `cpython` (test "test_class") generated 92 warnings
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/cpython-1a9aba65d4a077c6)
[INFO] [stdout] 
[INFO] [stdout] running 96 tests
[INFO] [stdout] test buffer::test::test_compatible_size ... ok
[INFO] [stdout] test err::tests::set_typeerror ... ok
[INFO] [stdout] test objectprotocol::test::test_compare ... ok
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/target/release/deps/cpython-1a9aba65d4a077c6` (signal: 11, SIGSEGV: invalid memory reference)
[INFO] running `Command { std: "docker" "inspect" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c", kill_on_drop: false }`
[INFO] [stdout] 0dfae769622813f8aa65ec6f0816e3fcaf22a1cb8d37072cc04fb5a29aba853c
