[INFO] cloning repository https://github.com/etesync/etebase-py [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/etesync/etebase-py" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetesync%2Fetebase-py", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetesync%2Fetebase-py'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 75691618a1378f2a24c8eebec003f8cbe98fe080 [INFO] checking etesync/etebase-py against master#5557f8c9d08d7f3f680943dcf97b6d4a7eb13aea for pr-124336 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetesync%2Fetebase-py" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/etesync/etebase-py on toolchain 5557f8c9d08d7f3f680943dcf97b6d4a7eb13aea [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+5557f8c9d08d7f3f680943dcf97b6d4a7eb13aea" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/etesync/etebase-py [INFO] finished tweaking git repo https://github.com/etesync/etebase-py [INFO] tweaked toml for git repo https://github.com/etesync/etebase-py written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/etesync/etebase-py 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" "+5557f8c9d08d7f3f680943dcf97b6d4a7eb13aea" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [ERROR] this task or one of its parent failed! [ERROR] no output for 300 seconds [ERROR] note: run with `RUST_BACKTRACE=1` to display a backtrace. [INFO] checking etesync/etebase-py against try#311f8b6ca41358db8ae08490a9ca0916f11e9de3 for pr-124336 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fetesync%2Fetebase-py" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/etesync/etebase-py on toolchain 311f8b6ca41358db8ae08490a9ca0916f11e9de3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+311f8b6ca41358db8ae08490a9ca0916f11e9de3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/etesync/etebase-py [INFO] finished tweaking git repo https://github.com/etesync/etebase-py [INFO] tweaked toml for git repo https://github.com/etesync/etebase-py written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/etesync/etebase-py 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" "+311f8b6ca41358db8ae08490a9ca0916f11e9de3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/Dushistov/flapigen-rs` [INFO] [stderr] Updating git submodule `https://github.com/google/googletest.git` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded etebase v0.6.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+311f8b6ca41358db8ae08490a9ca0916f11e9de3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 1d188d02cdc74af8f9c54360f889116025ddf9019804c40206eb819ac25f3235 [INFO] running `Command { std: "docker" "start" "-a" "1d188d02cdc74af8f9c54360f889116025ddf9019804c40206eb819ac25f3235", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "1d188d02cdc74af8f9c54360f889116025ddf9019804c40206eb819ac25f3235", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d188d02cdc74af8f9c54360f889116025ddf9019804c40206eb819ac25f3235", kill_on_drop: false }` [INFO] [stdout] 1d188d02cdc74af8f9c54360f889116025ddf9019804c40206eb819ac25f3235 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:99613afd962a8cfa530ec1899472a458bd015a1ab0af876cf7eb06f6006d81ea" "/opt/rustwide/cargo-home/bin/cargo" "+311f8b6ca41358db8ae08490a9ca0916f11e9de3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3198e5addcf4334accd8843e42d9dd279492003102593f2052294d124063e1d0 [INFO] running `Command { std: "docker" "start" "-a" "3198e5addcf4334accd8843e42d9dd279492003102593f2052294d124063e1d0", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.151 [INFO] [stderr] Compiling proc-macro2 v1.0.71 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling pkg-config v0.3.28 [INFO] [stderr] Compiling serde v1.0.193 [INFO] [stderr] Compiling memchr v2.6.4 [INFO] [stderr] Checking pin-project-lite v0.2.13 [INFO] [stderr] Compiling vcpkg v0.2.15 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling regex-syntax v0.8.2 [INFO] [stderr] Checking bytes v1.5.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling aho-corasick v1.1.2 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling syn v2.0.43 [INFO] [stderr] Checking itoa v1.0.10 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Compiling openssl v0.10.62 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking http v0.2.11 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling regex-automata v0.4.3 [INFO] [stderr] Checking mio v0.8.10 [INFO] [stderr] Checking socket2 v0.5.5 [INFO] [stderr] Compiling openssl-src v300.2.1+3.2.0 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Checking tokio v1.35.1 [INFO] [stderr] Checking tinyvec_macros v0.1.1 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling httparse v1.8.0 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Compiling openssl-sys v0.9.98 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Compiling unicode-segmentation v1.10.1 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Compiling paste v1.0.14 [INFO] [stderr] Checking bitflags v2.4.1 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Checking indexmap v2.1.0 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Compiling regex v1.10.2 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking openssl-probe v0.1.5 [INFO] [stderr] Checking log v0.4.20 [INFO] [stderr] Checking try-lock v0.2.5 [INFO] [stderr] Compiling hashbrown v0.12.3 [INFO] [stderr] Checking want v0.3.1 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Compiling serde_derive v1.0.193 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Compiling python3-sys v0.7.1 [INFO] [stderr] Checking unicode-normalization v0.1.22 [INFO] [stderr] Checking h2 v0.3.22 [INFO] [stderr] Compiling libsodium-sys v0.2.7 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Checking tower-service v0.3.2 [INFO] [stderr] Checking unicode-bidi v0.3.14 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Compiling fixedbitset v0.2.0 [INFO] [stderr] Checking httpdate v1.0.3 [INFO] [stderr] Compiling petgraph v0.5.1 [INFO] [stderr] Checking nix v0.26.4 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling strum_macros v0.18.0 [INFO] [stderr] Compiling flapigen v0.6.0-pre8 (https://github.com/Dushistov/flapigen-rs?rev=2bf1533140ff54239cbc659d70b071ac8ed5cd2a#2bf15331) [INFO] [stderr] Compiling which v3.1.1 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Checking cvt v0.1.2 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling rustc-hash v1.1.0 [INFO] [stderr] Compiling smallvec v1.11.2 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling termcolor v1.4.0 [INFO] [stderr] Checking hyper v0.14.28 [INFO] [stderr] Checking signature v1.6.4 [INFO] [stderr] Checking ryu v1.0.16 [INFO] [stderr] Checking ed25519 v1.5.3 [INFO] [stderr] Compiling env_logger v0.7.1 [INFO] [stderr] Checking rmp v0.8.12 [INFO] [stderr] Checking fs_at v0.1.10 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Compiling strum v0.18.0 [INFO] [stderr] Checking encoding_rs v0.8.33 [INFO] [stderr] Checking normpath v1.1.1 [INFO] [stderr] Compiling cpython v0.7.1 [INFO] [stderr] Checking ipnet v2.9.0 [INFO] [stderr] Checking base64 v0.21.5 [INFO] [stderr] Checking mime v0.3.17 [INFO] [stderr] Checking remove_dir_all v0.8.2 [INFO] [stderr] Compiling serde_repr v0.1.17 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking serde_bytes v0.11.12 [INFO] [stderr] Checking rmp-serde v1.1.2 [INFO] [stderr] Compiling smol_str v0.1.24 [INFO] [stderr] Compiling etebase-python v0.31.7 (/opt/rustwide/workdir) [INFO] [stderr] warning: etebase-python@0.31.7: Internal rustfmt error [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.23 [INFO] [stderr] Checking sodiumoxide v0.2.7 [INFO] [stderr] Checking etebase v0.6.0 [INFO] [stdout] warning: use of deprecated associated function `etebase::Account::is_etebase_server`: Use `Client::is_server_valid` instead [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:32:364 [INFO] [stdout] | [INFO] [stdout] 32 | ... # [allow (unused)] use super :: * ; Ok (match Account :: is_etebase_server ((& * super :: py_client :: rust_instance (client , py) . ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `etebase::Account::is_etebase_server`: Use `Client::is_server_valid` instead [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:32:364 [INFO] [stdout] | [INFO] [stdout] 32 | ... # [allow (unused)] use super :: * ; Ok (match Account :: is_etebase_server ((& * super :: py_client :: rust_instance (client , py) . ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `etebase::SignedInvitation::from_pubkey`: This method has been renamed to sender_pubkey() to avoid potential confusion regarding its name [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:48:1308 [INFO] [stdout] | [INFO] [stdout] 48 | ... # [allow (unused)] use super :: * ; Ok (SignedInvitation :: from_pubkey ((& * super :: py_signed_invitation :: rust_instance (self , ... [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `etebase::SignedInvitation::from_pubkey`: This method has been renamed to sender_pubkey() to avoid potential confusion regarding its name [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:48:1308 [INFO] [stdout] | [INFO] [stdout] 48 | ... # [allow (unused)] use super :: * ; Ok (SignedInvitation :: from_pubkey ((& * super :: py_signed_invitation :: rust_instance (self , ... [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:29:52 [INFO] [stdout] | [INFO] [stdout] 29 | ...)] py_class ! (pub class Utils | py | { static __doc__ = "" ; # [doc = " "] @ staticmethod def from_base64 (content : & str) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match from_base64 (content) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def to_base64 (bytes : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match to_base64 (& bytes . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def randombytes (size : usize) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (randombytes (size) . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] @ staticmethod def pretty_fingerprint (content : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (pretty_fingerprint (& content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?)) } }) ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: `#[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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:29:52 [INFO] [stdout] | [INFO] [stdout] 29 | ...)] py_class ! (pub class Utils | py | { static __doc__ = "" ; # [doc = " "] @ staticmethod def from_base64 (content : & str) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match from_base64 (content) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def to_base64 (bytes : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match to_base64 (& bytes . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def randombytes (size : usize) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (randombytes (size) . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] @ staticmethod def pretty_fingerprint (content : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (pretty_fingerprint (& content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?)) } }) ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:30:53 [INFO] [stdout] | [INFO] [stdout] 30 | ...)] py_class ! (pub class Client | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Client > ; # [doc = " "] @ staticmethod def new (client_name : & str , server_url : & str) -> cpython :: PyResult < super :: py_client :: Client > { # [allow (unused)] use super :: * ; Ok (match Client :: new (client_name , server_url) { Ok (ok_inner) => super :: py_client :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_server_url (& self , server_url : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Client :: set_server_url ((& mut * super :: py_client :: rust_instance (self , py) . lock () . unwrap ()) , server_url) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def get_default_server_url () -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (get_default_server_url ()) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:30:53 [INFO] [stdout] | [INFO] [stdout] 30 | ...)] py_class ! (pub class Client | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Client > ; # [doc = " "] @ staticmethod def new (client_name : & str , server_url : & str) -> cpython :: PyResult < super :: py_client :: Client > { # [allow (unused)] use super :: * ; Ok (match Client :: new (client_name , server_url) { Ok (ok_inner) => super :: py_client :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_server_url (& self , server_url : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Client :: set_server_url ((& mut * super :: py_client :: rust_instance (self , py) . lock () . unwrap ()) , server_url) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def get_default_server_url () -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (get_default_server_url ()) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:31:51 [INFO] [stdout] | [INFO] [stdout] 31 | ...)] py_class ! (pub class User | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: User > ; def __new__ (_cls , username : & str , email : & str) -> cpython :: PyResult < super :: py_user :: User > { # [allow (unused)] use super :: * ; Ok (super :: py_user :: create_instance (py , std :: sync :: Mutex :: new (User :: new (username , email))) ?) } # [doc = " "] def set_username (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_username ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , username) ; py . None () }) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_username ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_email (& self , email : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_email ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , email) ; py . None () }) } # [doc = " "] def get_email (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_email ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:29:52 [INFO] [stdout] | [INFO] [stdout] 29 | ...)] py_class ! (pub class Utils | py | { static __doc__ = "" ; # [doc = " "] @ staticmethod def from_base64 (content : & str) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match from_base64 (content) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def to_base64 (bytes : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match to_base64 (& bytes . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def randombytes (size : usize) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (randombytes (size) . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] @ staticmethod def pretty_fingerprint (content : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (pretty_fingerprint (& content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?)) } }) ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: `#[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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:31:51 [INFO] [stdout] | [INFO] [stdout] 31 | ...)] py_class ! (pub class User | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: User > ; def __new__ (_cls , username : & str , email : & str) -> cpython :: PyResult < super :: py_user :: User > { # [allow (unused)] use super :: * ; Ok (super :: py_user :: create_instance (py , std :: sync :: Mutex :: new (User :: new (username , email))) ?) } # [doc = " "] def set_username (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_username ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , username) ; py . None () }) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_username ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_email (& self , email : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_email ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , email) ; py . None () }) } # [doc = " "] def get_email (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_email ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:29:52 [INFO] [stdout] | [INFO] [stdout] 29 | ...)] py_class ! (pub class Utils | py | { static __doc__ = "" ; # [doc = " "] @ staticmethod def from_base64 (content : & str) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match from_base64 (content) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def to_base64 (bytes : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match to_base64 (& bytes . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def randombytes (size : usize) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (randombytes (size) . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] @ staticmethod def pretty_fingerprint (content : Vec < u8 >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (pretty_fingerprint (& content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?)) } }) ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:32:54 [INFO] [stdout] | [INFO] [stdout] 32 | ...)] py_class ! (pub class Account | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Account > ; # [doc = " "] @ staticmethod def is_etebase_server (client : & super :: py_client :: Client) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (match Account :: is_etebase_server ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login (client : & super :: py_client :: Client , username : & str , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login_key (client : & super :: py_client :: Client , username : & str , main_key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , main_key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup (client : & super :: py_client :: Client , user : & super :: py_user :: User , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup_key (client : & super :: py_client :: Client , user : & super :: py_user :: User , main_Key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , main_Key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_token (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: fetch_token ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def force_server_url (& self , api_base : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: force_server_url ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , api_base) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def change_password (& self , password : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: change_password ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def logout (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: logout ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_manager (& self) -> cpython :: PyResult < super :: py_collection_manager :: CollectionManager > { # [allow (unused)] use super :: * ; Ok (match Account :: collection_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_invitation_manager (& self) -> cpython :: PyResult < super :: py_collection_invitation_manager :: CollectionInvitationManager > { # [allow (unused)] use super :: * ; Ok (match Account :: invitation_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_invitation_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def save (& self , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Account_ :: save ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def restore (client : & super :: py_client :: Client , account_data_stored : & str , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: restore ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , account_data_stored , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:30:53 [INFO] [stdout] | [INFO] [stdout] 30 | ...)] py_class ! (pub class Client | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Client > ; # [doc = " "] @ staticmethod def new (client_name : & str , server_url : & str) -> cpython :: PyResult < super :: py_client :: Client > { # [allow (unused)] use super :: * ; Ok (match Client :: new (client_name , server_url) { Ok (ok_inner) => super :: py_client :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_server_url (& self , server_url : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Client :: set_server_url ((& mut * super :: py_client :: rust_instance (self , py) . lock () . unwrap ()) , server_url) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def get_default_server_url () -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (get_default_server_url ()) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:30:53 [INFO] [stdout] | [INFO] [stdout] 30 | ...)] py_class ! (pub class Client | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Client > ; # [doc = " "] @ staticmethod def new (client_name : & str , server_url : & str) -> cpython :: PyResult < super :: py_client :: Client > { # [allow (unused)] use super :: * ; Ok (match Client :: new (client_name , server_url) { Ok (ok_inner) => super :: py_client :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_server_url (& self , server_url : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Client :: set_server_url ((& mut * super :: py_client :: rust_instance (self , py) . lock () . unwrap ()) , server_url) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def get_default_server_url () -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (get_default_server_url ()) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:32:54 [INFO] [stdout] | [INFO] [stdout] 32 | ...)] py_class ! (pub class Account | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Account > ; # [doc = " "] @ staticmethod def is_etebase_server (client : & super :: py_client :: Client) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (match Account :: is_etebase_server ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login (client : & super :: py_client :: Client , username : & str , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login_key (client : & super :: py_client :: Client , username : & str , main_key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , main_key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup (client : & super :: py_client :: Client , user : & super :: py_user :: User , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup_key (client : & super :: py_client :: Client , user : & super :: py_user :: User , main_Key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , main_Key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_token (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: fetch_token ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def force_server_url (& self , api_base : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: force_server_url ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , api_base) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def change_password (& self , password : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: change_password ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def logout (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: logout ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_manager (& self) -> cpython :: PyResult < super :: py_collection_manager :: CollectionManager > { # [allow (unused)] use super :: * ; Ok (match Account :: collection_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_invitation_manager (& self) -> cpython :: PyResult < super :: py_collection_invitation_manager :: CollectionInvitationManager > { # [allow (unused)] use super :: * ; Ok (match Account :: invitation_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_invitation_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def save (& self , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Account_ :: save ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def restore (client : & super :: py_client :: Client , account_data_stored : & str , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: restore ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , account_data_stored , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:31:51 [INFO] [stdout] | [INFO] [stdout] 31 | ...)] py_class ! (pub class User | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: User > ; def __new__ (_cls , username : & str , email : & str) -> cpython :: PyResult < super :: py_user :: User > { # [allow (unused)] use super :: * ; Ok (super :: py_user :: create_instance (py , std :: sync :: Mutex :: new (User :: new (username , email))) ?) } # [doc = " "] def set_username (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_username ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , username) ; py . None () }) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_username ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_email (& self , email : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_email ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , email) ; py . None () }) } # [doc = " "] def get_email (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_email ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:33:65 [INFO] [stdout] | [INFO] [stdout] 33 | ...)] py_class ! (pub class RemovedCollection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: RemovedCollection > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (RemovedCollection_ :: uid ((& * super :: py_removed_collection :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:31:51 [INFO] [stdout] | [INFO] [stdout] 31 | ...)] py_class ! (pub class User | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: User > ; def __new__ (_cls , username : & str , email : & str) -> cpython :: PyResult < super :: py_user :: User > { # [allow (unused)] use super :: * ; Ok (super :: py_user :: create_instance (py , std :: sync :: Mutex :: new (User :: new (username , email))) ?) } # [doc = " "] def set_username (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_username ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , username) ; py . None () }) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_username ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_email (& self , email : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ User_ :: set_email ((& mut * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()) , email) ; py . None () }) } # [doc = " "] def get_email (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (User_ :: get_email ((& * super :: py_user :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:33:65 [INFO] [stdout] | [INFO] [stdout] 33 | ...)] py_class ! (pub class RemovedCollection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: RemovedCollection > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (RemovedCollection_ :: uid ((& * super :: py_removed_collection :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:34:71 [INFO] [stdout] | [INFO] [stdout] 34 | ...)] py_class ! (pub class CollectionListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match CollectionListResponse_ :: stoken ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection :: Collection > > { # [allow (unused)] use super :: * ; Ok ((CollectionListResponse :: data ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse :: done ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_removed_memberships (& self) -> cpython :: PyResult < Vec < super :: py_removed_collection :: RemovedCollection > > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse_ :: get_removed_memberships ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_removed_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:34:71 [INFO] [stdout] | [INFO] [stdout] 34 | ...)] py_class ! (pub class CollectionListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match CollectionListResponse_ :: stoken ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection :: Collection > > { # [allow (unused)] use super :: * ; Ok ((CollectionListResponse :: data ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse :: done ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_removed_memberships (& self) -> cpython :: PyResult < Vec < super :: py_removed_collection :: RemovedCollection > > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse_ :: get_removed_memberships ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_removed_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:32:54 [INFO] [stdout] | [INFO] [stdout] 32 | ...)] py_class ! (pub class Account | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Account > ; # [doc = " "] @ staticmethod def is_etebase_server (client : & super :: py_client :: Client) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (match Account :: is_etebase_server ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login (client : & super :: py_client :: Client , username : & str , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login_key (client : & super :: py_client :: Client , username : & str , main_key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , main_key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup (client : & super :: py_client :: Client , user : & super :: py_user :: User , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup_key (client : & super :: py_client :: Client , user : & super :: py_user :: User , main_Key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , main_Key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_token (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: fetch_token ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def force_server_url (& self , api_base : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: force_server_url ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , api_base) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def change_password (& self , password : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: change_password ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def logout (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: logout ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_manager (& self) -> cpython :: PyResult < super :: py_collection_manager :: CollectionManager > { # [allow (unused)] use super :: * ; Ok (match Account :: collection_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_invitation_manager (& self) -> cpython :: PyResult < super :: py_collection_invitation_manager :: CollectionInvitationManager > { # [allow (unused)] use super :: * ; Ok (match Account :: invitation_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_invitation_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def save (& self , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Account_ :: save ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def restore (client : & super :: py_client :: Client , account_data_stored : & str , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: restore ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , account_data_stored , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:35:65 [INFO] [stdout] | [INFO] [stdout] 35 | ...)] py_class ! (pub class ItemListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemListResponse_ :: stoken ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemListResponse_ :: data ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemListResponse :: done ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:35:65 [INFO] [stdout] | [INFO] [stdout] 35 | ...)] py_class ! (pub class ItemListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemListResponse_ :: stoken ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemListResponse_ :: data ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemListResponse :: done ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:36:75 [INFO] [stdout] | [INFO] [stdout] 36 | ...)] py_class ! (pub class ItemRevisionsListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemRevisionsListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemRevisionsListResponse_ :: iterator ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse_ :: data ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse :: done ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:32:54 [INFO] [stdout] | [INFO] [stdout] 32 | ...)] py_class ! (pub class Account | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Account > ; # [doc = " "] @ staticmethod def is_etebase_server (client : & super :: py_client :: Client) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (match Account :: is_etebase_server ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login (client : & super :: py_client :: Client , username : & str , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def login_key (client : & super :: py_client :: Client , username : & str , main_key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: login_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , username , main_key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup (client : & super :: py_client :: Client , user : & super :: py_user :: User , password : & str) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def signup_key (client : & super :: py_client :: Client , user : & super :: py_user :: User , main_Key : Vec < u8 >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: signup_key ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , (& * super :: py_user :: rust_instance (user , py) . lock () . unwrap ()) , main_Key . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_token (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: fetch_token ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def force_server_url (& self , api_base : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: force_server_url ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , api_base) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def change_password (& self , password : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: change_password ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , password) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def logout (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Account :: logout ((& mut * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_manager (& self) -> cpython :: PyResult < super :: py_collection_manager :: CollectionManager > { # [allow (unused)] use super :: * ; Ok (match Account :: collection_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_invitation_manager (& self) -> cpython :: PyResult < super :: py_collection_invitation_manager :: CollectionInvitationManager > { # [allow (unused)] use super :: * ; Ok (match Account :: invitation_manager ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_invitation_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def save (& self , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Account_ :: save ((& * super :: py_account :: rust_instance (self , py) . lock () . unwrap ()) , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] @ staticmethod def restore (client : & super :: py_client :: Client , account_data_stored : & str , encryption_key : Option < Vec < u8 > >) -> cpython :: PyResult < super :: py_account :: Account > { # [allow (unused)] use super :: * ; Ok (match Account_ :: restore ((& * super :: py_client :: rust_instance (client , py) . lock () . unwrap ()) , account_data_stored , match encryption_key { Some (inner) => Some (inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , }) { Ok (ok_inner) => super :: py_account :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:36:75 [INFO] [stdout] | [INFO] [stdout] 36 | ...)] py_class ! (pub class ItemRevisionsListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemRevisionsListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemRevisionsListResponse_ :: iterator ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse_ :: data ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse :: done ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:33:65 [INFO] [stdout] | [INFO] [stdout] 33 | ...)] py_class ! (pub class RemovedCollection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: RemovedCollection > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (RemovedCollection_ :: uid ((& * super :: py_removed_collection :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:33:65 [INFO] [stdout] | [INFO] [stdout] 33 | ...)] py_class ! (pub class RemovedCollection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: RemovedCollection > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (RemovedCollection_ :: uid ((& * super :: py_removed_collection :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:34:71 [INFO] [stdout] | [INFO] [stdout] 34 | ...)] py_class ! (pub class CollectionListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match CollectionListResponse_ :: stoken ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection :: Collection > > { # [allow (unused)] use super :: * ; Ok ((CollectionListResponse :: data ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse :: done ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_removed_memberships (& self) -> cpython :: PyResult < Vec < super :: py_removed_collection :: RemovedCollection > > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse_ :: get_removed_memberships ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_removed_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:37:26 [INFO] [stdout] | [INFO] [stdout] 37 | ... { py_class ! (pub class PrefetchOption | py | { static __doc__ = "" ; static Auto = super :: PrefetchOption :: Auto as u32 ; static Medium = super :: PrefetchOption :: Medium as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:37:26 [INFO] [stdout] | [INFO] [stdout] 37 | ... { py_class ! (pub class PrefetchOption | py | { static __doc__ = "" ; static Auto = super :: PrefetchOption :: Auto as u32 ; static Medium = super :: PrefetchOption :: Medium as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:34:71 [INFO] [stdout] | [INFO] [stdout] 34 | ...)] py_class ! (pub class CollectionListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match CollectionListResponse_ :: stoken ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection :: Collection > > { # [allow (unused)] use super :: * ; Ok ((CollectionListResponse :: data ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse :: done ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_removed_memberships (& self) -> cpython :: PyResult < Vec < super :: py_removed_collection :: RemovedCollection > > { # [allow (unused)] use super :: * ; Ok (CollectionListResponse_ :: get_removed_memberships ((& * super :: py_collection_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_removed_collection :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:38:60 [INFO] [stdout] | [INFO] [stdout] 38 | ...)] py_class ! (pub class FetchOptions | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: FetchOptions > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_fetch_options :: FetchOptions > { # [allow (unused)] use super :: * ; Ok (super :: py_fetch_options :: create_instance (py , std :: sync :: Mutex :: new (FetchOptions :: new ())) ?) } # [doc = " "] def limit (& self , limit : usize) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: limit ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , limit) ; py . None () }) } # [doc = " "] def prefetch (& self , prefetch : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: prefetch ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , super :: py_prefetch_option :: from_u32 (py , prefetch) ?) ; py . None () }) } # [doc = " "] def with_collection (& self , with_collection : bool) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: with_collection ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , with_collection) ; py . None () }) } # [doc = " "] def iterator (& self , iterator : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: iterator ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match iterator { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def stoken (& self , stoken : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: stoken ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match stoken { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:35:65 [INFO] [stdout] | [INFO] [stdout] 35 | ...)] py_class ! (pub class ItemListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemListResponse_ :: stoken ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemListResponse_ :: data ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemListResponse :: done ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:35:65 [INFO] [stdout] | [INFO] [stdout] 35 | ...)] py_class ! (pub class ItemListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemListResponse > ; # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemListResponse_ :: stoken ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemListResponse_ :: data ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemListResponse :: done ((& * super :: py_item_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:36:75 [INFO] [stdout] | [INFO] [stdout] 36 | ...)] py_class ! (pub class ItemRevisionsListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemRevisionsListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemRevisionsListResponse_ :: iterator ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse_ :: data ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse :: done ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:38:60 [INFO] [stdout] | [INFO] [stdout] 38 | ...)] py_class ! (pub class FetchOptions | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: FetchOptions > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_fetch_options :: FetchOptions > { # [allow (unused)] use super :: * ; Ok (super :: py_fetch_options :: create_instance (py , std :: sync :: Mutex :: new (FetchOptions :: new ())) ?) } # [doc = " "] def limit (& self , limit : usize) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: limit ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , limit) ; py . None () }) } # [doc = " "] def prefetch (& self , prefetch : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: prefetch ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , super :: py_prefetch_option :: from_u32 (py , prefetch) ?) ; py . None () }) } # [doc = " "] def with_collection (& self , with_collection : bool) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: with_collection ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , with_collection) ; py . None () }) } # [doc = " "] def iterator (& self , iterator : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: iterator ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match iterator { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def stoken (& self , stoken : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: stoken ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match stoken { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:36:75 [INFO] [stdout] | [INFO] [stdout] 36 | ...)] py_class ! (pub class ItemRevisionsListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemRevisionsListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemRevisionsListResponse_ :: iterator ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_item :: Item > > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse_ :: data ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ())) . into_iter () . map (| inner | Ok (super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (ItemRevisionsListResponse :: done ((& * super :: py_item_revisions_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:37:26 [INFO] [stdout] | [INFO] [stdout] 37 | ... { py_class ! (pub class PrefetchOption | py | { static __doc__ = "" ; static Auto = super :: PrefetchOption :: Auto as u32 ; static Medium = super :: PrefetchOption :: Medium as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:37:26 [INFO] [stdout] | [INFO] [stdout] 37 | ... { py_class ! (pub class PrefetchOption | py | { static __doc__ = "" ; static Auto = super :: PrefetchOption :: Auto as u32 ; static Medium = super :: PrefetchOption :: Medium as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:38:60 [INFO] [stdout] | [INFO] [stdout] 38 | ...)] py_class ! (pub class FetchOptions | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: FetchOptions > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_fetch_options :: FetchOptions > { # [allow (unused)] use super :: * ; Ok (super :: py_fetch_options :: create_instance (py , std :: sync :: Mutex :: new (FetchOptions :: new ())) ?) } # [doc = " "] def limit (& self , limit : usize) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: limit ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , limit) ; py . None () }) } # [doc = " "] def prefetch (& self , prefetch : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: prefetch ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , super :: py_prefetch_option :: from_u32 (py , prefetch) ?) ; py . None () }) } # [doc = " "] def with_collection (& self , with_collection : bool) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: with_collection ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , with_collection) ; py . None () }) } # [doc = " "] def iterator (& self , iterator : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: iterator ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match iterator { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def stoken (& self , stoken : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: stoken ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match stoken { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:38:60 [INFO] [stdout] | [INFO] [stdout] 38 | ...)] py_class ! (pub class FetchOptions | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: FetchOptions > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_fetch_options :: FetchOptions > { # [allow (unused)] use super :: * ; Ok (super :: py_fetch_options :: create_instance (py , std :: sync :: Mutex :: new (FetchOptions :: new ())) ?) } # [doc = " "] def limit (& self , limit : usize) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: limit ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , limit) ; py . None () }) } # [doc = " "] def prefetch (& self , prefetch : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: prefetch ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , super :: py_prefetch_option :: from_u32 (py , prefetch) ?) ; py . None () }) } # [doc = " "] def with_collection (& self , with_collection : bool) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions :: with_collection ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , with_collection) ; py . None () }) } # [doc = " "] def iterator (& self , iterator : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: iterator ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match iterator { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def stoken (& self , stoken : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ FetchOptions_ :: stoken ((& mut * super :: py_fetch_options :: rust_instance (self , py) . lock () . unwrap ()) , match stoken { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | ...)] py_class ! (pub class ItemMetadata | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemMetadata > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ItemMetadata :: new ())) ?) } # [doc = " "] def set_item_type (& self , type_ : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_item_type ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match type_ { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_name (& self , name : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_name ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match name { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_mtime (& self , mtime : Option < i64 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_mtime ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match mtime { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_item_type (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_item_type ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_name (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_name ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_mtime (& self) -> cpython :: PyResult < Option < i64 > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata :: mtime ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def set_description (& self , description : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_description ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match description { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_color (& self , color : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_color ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match color { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_description (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_description ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_color (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_color ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | ...)] py_class ! (pub class ItemMetadata | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemMetadata > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ItemMetadata :: new ())) ?) } # [doc = " "] def set_item_type (& self , type_ : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_item_type ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match type_ { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_name (& self , name : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_name ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match name { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_mtime (& self , mtime : Option < i64 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_mtime ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match mtime { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_item_type (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_item_type ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_name (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_name ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_mtime (& self) -> cpython :: PyResult < Option < i64 > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata :: mtime ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def set_description (& self , description : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_description ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match description { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_color (& self , color : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_color ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match color { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_description (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_description ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_color (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_color ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:40:65 [INFO] [stdout] | [INFO] [stdout] 40 | ...)] py_class ! (pub class CollectionManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionManager > ; # [doc = " "] def fetch (& self , col_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: fetch ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , col_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , collection_type : & str , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , collection_type : & str , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create_raw ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_item_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_item_manager :: ItemManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: item_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , collection_type : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_multi (& self , collection_types : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list_multi ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_types . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: upload ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: transaction ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_load ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save_with_content ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_member_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_collection_member_manager :: CollectionMemberManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: member_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_member_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | ...)] py_class ! (pub class ItemMetadata | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemMetadata > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ItemMetadata :: new ())) ?) } # [doc = " "] def set_item_type (& self , type_ : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_item_type ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match type_ { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_name (& self , name : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_name ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match name { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_mtime (& self , mtime : Option < i64 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_mtime ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match mtime { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_item_type (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_item_type ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_name (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_name ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_mtime (& self) -> cpython :: PyResult < Option < i64 > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata :: mtime ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def set_description (& self , description : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_description ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match description { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_color (& self , color : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_color ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match color { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_description (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_description ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_color (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_color ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:40:65 [INFO] [stdout] | [INFO] [stdout] 40 | ...)] py_class ! (pub class CollectionManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionManager > ; # [doc = " "] def fetch (& self , col_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: fetch ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , col_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , collection_type : & str , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , collection_type : & str , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create_raw ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_item_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_item_manager :: ItemManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: item_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , collection_type : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_multi (& self , collection_types : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list_multi ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_types . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: upload ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: transaction ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_load ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save_with_content ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_member_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_collection_member_manager :: CollectionMemberManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: member_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_member_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:41:59 [INFO] [stdout] | [INFO] [stdout] 41 | ...)] py_class ! (pub class ItemManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemManager > ; # [doc = " "] def fetch (& self , item_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , item_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create_raw ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: list ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def item_revisions (& self , item : & super :: py_item :: Item , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_revisions_list_response :: ItemRevisionsListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: item_revisions ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (* super :: py_item :: rust_instance (item , py) . lock () . unwrap ()) . clone () , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_revisions_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_updates (& self , items : Vec < super :: py_item :: Item > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_updates ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_multi (& self , items : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_multi ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def batch (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: batch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: transaction ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def download_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: download_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& mut * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: upload_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_load ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save_with_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:39:60 [INFO] [stdout] | [INFO] [stdout] 39 | ...)] py_class ! (pub class ItemMetadata | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemMetadata > ; def __new__ (_cls) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ItemMetadata :: new ())) ?) } # [doc = " "] def set_item_type (& self , type_ : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_item_type ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match type_ { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_name (& self , name : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_name ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match name { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_mtime (& self , mtime : Option < i64 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_mtime ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match mtime { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_item_type (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_item_type ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_name (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_name ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_mtime (& self) -> cpython :: PyResult < Option < i64 > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata :: mtime ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def set_description (& self , description : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_description ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match description { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def set_color (& self , color : Option < String >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok ({ ItemMetadata_ :: set_color ((& mut * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ()) , match color { Some (inner) => Some (inner) , None => None , }) ; py . None () }) } # [doc = " "] def get_description (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_description ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_color (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match ItemMetadata_ :: get_color ((& * super :: py_item_metadata :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:40:65 [INFO] [stdout] | [INFO] [stdout] 40 | ...)] py_class ! (pub class CollectionManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionManager > ; # [doc = " "] def fetch (& self , col_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: fetch ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , col_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , collection_type : & str , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , collection_type : & str , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create_raw ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_item_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_item_manager :: ItemManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: item_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , collection_type : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_multi (& self , collection_types : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list_multi ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_types . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: upload ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: transaction ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_load ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save_with_content ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_member_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_collection_member_manager :: CollectionMemberManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: member_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_member_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:41:59 [INFO] [stdout] | [INFO] [stdout] 41 | ...)] py_class ! (pub class ItemManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemManager > ; # [doc = " "] def fetch (& self , item_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , item_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create_raw ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: list ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def item_revisions (& self , item : & super :: py_item :: Item , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_revisions_list_response :: ItemRevisionsListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: item_revisions ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (* super :: py_item :: rust_instance (item , py) . lock () . unwrap ()) . clone () , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_revisions_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_updates (& self , items : Vec < super :: py_item :: Item > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_updates ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_multi (& self , items : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_multi ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def batch (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: batch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: transaction ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def download_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: download_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& mut * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: upload_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_load ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save_with_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | ... { py_class ! (pub class CollectionAccessLevel | py | { static __doc__ = "" ; static ReadOnly = super :: CollectionAccessLevel :: ReadOnly as u32 ; static Admin = super :: CollectionAccessLevel :: Admin as u32 ; static ReadWrite = super :: CollectionAccessLevel :: ReadWrite as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:40:65 [INFO] [stdout] | [INFO] [stdout] 40 | ...)] py_class ! (pub class CollectionManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionManager > ; # [doc = " "] def fetch (& self , col_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: fetch ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , col_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , collection_type : & str , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , collection_type : & str , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: create_raw ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_item_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_item_manager :: ItemManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: item_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , collection_type : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_type , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_multi (& self , collection_types : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_collection_list_response :: CollectionListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: list_multi ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , collection_types . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_collection_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: upload ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , collection : & super :: py_collection :: Collection , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionManager_ :: transaction ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_collection :: Collection > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_load ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_collection :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , collection : & super :: py_collection :: Collection) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: cache_save_with_content ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_member_manager (& self , col : & super :: py_collection :: Collection) -> cpython :: PyResult < super :: py_collection_member_manager :: CollectionMemberManager > { # [allow (unused)] use super :: * ; Ok (match CollectionManager :: member_manager ((& * super :: py_collection_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (col , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_collection_member_manager :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | ... { py_class ! (pub class CollectionAccessLevel | py | { static __doc__ = "" ; static ReadOnly = super :: CollectionAccessLevel :: ReadOnly as u32 ; static Admin = super :: CollectionAccessLevel :: Admin as u32 ; static ReadWrite = super :: CollectionAccessLevel :: ReadWrite as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:43:57 [INFO] [stdout] | [INFO] [stdout] 43 | ...)] py_class ! (pub class Collection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Collection > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection_ :: verify ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta_raw ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta_raw ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_content ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: content ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: delete ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection :: is_deleted ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: uid ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: etag ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: stoken ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (Collection :: access_level ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_item (& self) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: item ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_type (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Collection :: collection_type ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:41:59 [INFO] [stdout] | [INFO] [stdout] 41 | ...)] py_class ! (pub class ItemManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemManager > ; # [doc = " "] def fetch (& self , item_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , item_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create_raw ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: list ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def item_revisions (& self , item : & super :: py_item :: Item , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_revisions_list_response :: ItemRevisionsListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: item_revisions ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (* super :: py_item :: rust_instance (item , py) . lock () . unwrap ()) . clone () , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_revisions_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_updates (& self , items : Vec < super :: py_item :: Item > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_updates ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_multi (& self , items : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_multi ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def batch (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: batch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: transaction ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def download_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: download_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& mut * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: upload_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_load ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save_with_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:43:57 [INFO] [stdout] | [INFO] [stdout] 43 | ...)] py_class ! (pub class Collection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Collection > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection_ :: verify ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta_raw ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta_raw ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_content ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: content ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: delete ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection :: is_deleted ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: uid ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: etag ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: stoken ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (Collection :: access_level ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_item (& self) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: item ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_type (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Collection :: collection_type ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:44:51 [INFO] [stdout] | [INFO] [stdout] 44 | ...)] py_class ! (pub class Item | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Item > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: verify ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Item :: meta ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta_raw ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: meta_raw ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_content ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: delete ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_deleted ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def is_missing_content (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_missing_content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: uid ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: etag ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:41:59 [INFO] [stdout] | [INFO] [stdout] 41 | ...)] py_class ! (pub class ItemManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: ItemManager > ; # [doc = " "] def fetch (& self , item_uid : & str , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , item_uid , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create (& self , meta : & super :: py_item_metadata :: ItemMetadata , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def create_raw (& self , meta : Vec < u8 > , content : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: create_raw ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: list ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def item_revisions (& self , item : & super :: py_item :: Item , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_revisions_list_response :: ItemRevisionsListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: item_revisions ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (* super :: py_item :: rust_instance (item , py) . lock () . unwrap ()) . clone () , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_revisions_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_updates (& self , items : Vec < super :: py_item :: Item > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_updates ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_multi (& self , items : Vec < String > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_item_list_response :: ItemListResponse > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: fetch_multi ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_item_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def batch (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: batch ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def transaction (& self , items : Vec < super :: py_item :: Item > , deps : Option < Vec < super :: py_item :: Item > > , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: transaction ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , items . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , match deps { Some (inner) => Some (inner . into_iter () . map (| inner | Ok ((* super :: py_item :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ())) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) , None => None , } , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def download_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: download_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& mut * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def upload_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: upload_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_load (& self , cached : Vec < u8 >) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_load ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , & cached . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def cache_save_with_content (& self , item : & super :: py_item :: Item) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match ItemManager_ :: cache_save_with_content ((& * super :: py_item_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item :: rust_instance (item , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | ... { py_class ! (pub class CollectionAccessLevel | py | { static __doc__ = "" ; static ReadOnly = super :: CollectionAccessLevel :: ReadOnly as u32 ; static Admin = super :: CollectionAccessLevel :: Admin as u32 ; static ReadWrite = super :: CollectionAccessLevel :: ReadWrite as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:42:34 [INFO] [stdout] | [INFO] [stdout] 42 | ... { py_class ! (pub class CollectionAccessLevel | py | { static __doc__ = "" ; static ReadOnly = super :: CollectionAccessLevel :: ReadOnly as u32 ; static Admin = super :: CollectionAccessLevel :: Admin as u32 ; static ReadWrite = super :: CollectionAccessLevel :: ReadWrite as u32 ; }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:44:51 [INFO] [stdout] | [INFO] [stdout] 44 | ...)] py_class ! (pub class Item | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Item > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: verify ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Item :: meta ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta_raw ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: meta_raw ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_content ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: delete ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_deleted ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def is_missing_content (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_missing_content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: uid ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: etag ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:45:59 [INFO] [stdout] | [INFO] [stdout] 45 | ...)] py_class ! (pub class UserProfile | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: UserProfile > ; # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (UserProfile :: pubkey ((& * super :: py_user_profile :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:43:57 [INFO] [stdout] | [INFO] [stdout] 43 | ...)] py_class ! (pub class Collection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Collection > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection_ :: verify ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta_raw ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta_raw ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_content ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: content ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: delete ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection :: is_deleted ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: uid ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: etag ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: stoken ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (Collection :: access_level ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_item (& self) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: item ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_type (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Collection :: collection_type ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:45:59 [INFO] [stdout] | [INFO] [stdout] 45 | ...)] py_class ! (pub class UserProfile | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: UserProfile > ; # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (UserProfile :: pubkey ((& * super :: py_user_profile :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:43:57 [INFO] [stdout] | [INFO] [stdout] 43 | ...)] py_class ! (pub class Collection | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Collection > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection_ :: verify ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_meta_raw ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: meta_raw ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: set_content ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Collection :: content ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Collection :: delete ((& mut * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Collection :: is_deleted ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: uid ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Collection_ :: etag ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_stoken (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: stoken ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (Collection :: access_level ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_item (& self) -> cpython :: PyResult < super :: py_item :: Item > { # [allow (unused)] use super :: * ; Ok (match Collection_ :: item ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_collection_type (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (match Collection :: collection_type ((& * super :: py_collection :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:46:71 [INFO] [stdout] | [INFO] [stdout] 46 | ...)] py_class ! (pub class InvitationListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: InvitationListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match InvitationListResponse_ :: iterator ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_signed_invitation :: SignedInvitation > > { # [allow (unused)] use super :: * ; Ok ((InvitationListResponse :: data ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_signed_invitation :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (InvitationListResponse :: done ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:46:71 [INFO] [stdout] | [INFO] [stdout] 46 | ...)] py_class ! (pub class InvitationListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: InvitationListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match InvitationListResponse_ :: iterator ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_signed_invitation :: SignedInvitation > > { # [allow (unused)] use super :: * ; Ok ((InvitationListResponse :: data ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_signed_invitation :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (InvitationListResponse :: done ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:44:51 [INFO] [stdout] | [INFO] [stdout] 44 | ...)] py_class ! (pub class Item | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Item > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: verify ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Item :: meta ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta_raw ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: meta_raw ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_content ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: delete ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_deleted ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def is_missing_content (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_missing_content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: uid ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: etag ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:47:76 [INFO] [stdout] | [INFO] [stdout] 47 | ...)] py_class ! (pub class CollectionInvitationManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionInvitationManager > ; # [doc = " "] def list_incoming (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_incoming ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_outgoing (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_outgoing ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def accept (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: accept ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def reject (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: reject ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_user_profile (& self , username : & str) -> cpython :: PyResult < super :: py_user_profile :: UserProfile > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: fetch_user_profile ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => super :: py_user_profile :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def invite (& self , collection : & super :: py_collection :: Collection , username : & str , pubkey : Vec < u8 > , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: invite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , username , & pubkey . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def disinvite (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: disinvite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (CollectionInvitationManager :: pubkey ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:44:51 [INFO] [stdout] | [INFO] [stdout] 44 | ...)] py_class ! (pub class Item | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: Item > ; # [doc = " "] def verify (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: verify ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def set_meta (& self , meta : & super :: py_item_metadata :: ItemMetadata) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_item_metadata :: rust_instance (meta , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta (& self) -> cpython :: PyResult < super :: py_item_metadata :: ItemMetadata > { # [allow (unused)] use super :: * ; Ok (match Item :: meta ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => super :: py_item_metadata :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_meta_raw (& self , meta : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_meta_raw ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & meta . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_meta_raw (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: meta_raw ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def set_content (& self , content : Vec < u8 >) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: set_content ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()) , & content . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_content (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (match Item :: content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => ok_inner . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def delete (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match Item :: delete ((& mut * super :: py_item :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def is_deleted (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_deleted ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def is_missing_content (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (Item :: is_missing_content ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: uid ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_etag (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (Item :: etag ((& * super :: py_item :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:47:76 [INFO] [stdout] | [INFO] [stdout] 47 | ...)] py_class ! (pub class CollectionInvitationManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionInvitationManager > ; # [doc = " "] def list_incoming (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_incoming ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_outgoing (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_outgoing ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def accept (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: accept ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def reject (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: reject ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_user_profile (& self , username : & str) -> cpython :: PyResult < super :: py_user_profile :: UserProfile > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: fetch_user_profile ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => super :: py_user_profile :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def invite (& self , collection : & super :: py_collection :: Collection , username : & str , pubkey : Vec < u8 > , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: invite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , username , & pubkey . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def disinvite (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: disinvite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (CollectionInvitationManager :: pubkey ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:48:64 [INFO] [stdout] | [INFO] [stdout] 48 | ...)] py_class ! (pub class SignedInvitation | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: SignedInvitation > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: uid ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: username ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_collection (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: collection ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: access_level ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_from_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: from_pubkey ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:45:59 [INFO] [stdout] | [INFO] [stdout] 45 | ...)] py_class ! (pub class UserProfile | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: UserProfile > ; # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (UserProfile :: pubkey ((& * super :: py_user_profile :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:48:64 [INFO] [stdout] | [INFO] [stdout] 48 | ...)] py_class ! (pub class SignedInvitation | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: SignedInvitation > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: uid ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: username ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_collection (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: collection ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: access_level ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_from_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: from_pubkey ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:45:59 [INFO] [stdout] | [INFO] [stdout] 45 | ...)] py_class ! (pub class UserProfile | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: UserProfile > ; # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (UserProfile :: pubkey ((& * super :: py_user_profile :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:49:64 [INFO] [stdout] | [INFO] [stdout] 49 | ...)] py_class ! (pub class CollectionMember | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMember > ; # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (CollectionMember_ :: username ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (CollectionMember :: access_level ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ())) as u32) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:49:64 [INFO] [stdout] | [INFO] [stdout] 49 | ...)] py_class ! (pub class CollectionMember | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMember > ; # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (CollectionMember_ :: username ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (CollectionMember :: access_level ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ())) as u32) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:46:71 [INFO] [stdout] | [INFO] [stdout] 46 | ...)] py_class ! (pub class InvitationListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: InvitationListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match InvitationListResponse_ :: iterator ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_signed_invitation :: SignedInvitation > > { # [allow (unused)] use super :: * ; Ok ((InvitationListResponse :: data ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_signed_invitation :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (InvitationListResponse :: done ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | ...)] py_class ! (pub class MemberListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: MemberListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match MemberListResponse_ :: iterator ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection_member :: CollectionMember > > { # [allow (unused)] use super :: * ; Ok ((MemberListResponse :: data ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection_member :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (MemberListResponse :: done ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:46:71 [INFO] [stdout] | [INFO] [stdout] 46 | ...)] py_class ! (pub class InvitationListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: InvitationListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match InvitationListResponse_ :: iterator ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_signed_invitation :: SignedInvitation > > { # [allow (unused)] use super :: * ; Ok ((InvitationListResponse :: data ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_signed_invitation :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (InvitationListResponse :: done ((& * super :: py_invitation_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | ...)] py_class ! (pub class MemberListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: MemberListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match MemberListResponse_ :: iterator ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection_member :: CollectionMember > > { # [allow (unused)] use super :: * ; Ok ((MemberListResponse :: data ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection_member :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (MemberListResponse :: done ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:51:72 [INFO] [stdout] | [INFO] [stdout] 51 | ...)] py_class ! (pub class CollectionMemberManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMemberManager > ; # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_member_list_response :: MemberListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager_ :: list ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_member_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def remove (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: remove ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def leave (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: leave ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def modify_access_level (& self , username : & str , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: modify_access_level ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:47:76 [INFO] [stdout] | [INFO] [stdout] 47 | ...)] py_class ! (pub class CollectionInvitationManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionInvitationManager > ; # [doc = " "] def list_incoming (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_incoming ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_outgoing (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_outgoing ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def accept (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: accept ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def reject (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: reject ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_user_profile (& self , username : & str) -> cpython :: PyResult < super :: py_user_profile :: UserProfile > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: fetch_user_profile ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => super :: py_user_profile :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def invite (& self , collection : & super :: py_collection :: Collection , username : & str , pubkey : Vec < u8 > , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: invite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , username , & pubkey . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def disinvite (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: disinvite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (CollectionInvitationManager :: pubkey ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:47:76 [INFO] [stdout] | [INFO] [stdout] 47 | ...)] py_class ! (pub class CollectionInvitationManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionInvitationManager > ; # [doc = " "] def list_incoming (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_incoming ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def list_outgoing (& self , options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_invitation_list_response :: InvitationListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager_ :: list_outgoing ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , match options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_invitation_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def accept (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: accept ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def reject (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: reject ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def fetch_user_profile (& self , username : & str) -> cpython :: PyResult < super :: py_user_profile :: UserProfile > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: fetch_user_profile ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => super :: py_user_profile :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def invite (& self , collection : & super :: py_collection :: Collection , username : & str , pubkey : Vec < u8 > , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: invite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_collection :: rust_instance (collection , py) . lock () . unwrap ()) , username , & pubkey . into_iter () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ? , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def disinvite (& self , invitation : & super :: py_signed_invitation :: SignedInvitation) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionInvitationManager :: disinvite ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ()) , (& * super :: py_signed_invitation :: rust_instance (invitation , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def get_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (CollectionInvitationManager :: pubkey ((& * super :: py_collection_invitation_manager :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:51:72 [INFO] [stdout] | [INFO] [stdout] 51 | ...)] py_class ! (pub class CollectionMemberManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMemberManager > ; # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_member_list_response :: MemberListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager_ :: list ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_member_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def remove (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: remove ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def leave (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: leave ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def modify_access_level (& self , username : & str , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: modify_access_level ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:48:64 [INFO] [stdout] | [INFO] [stdout] 48 | ...)] py_class ! (pub class SignedInvitation | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: SignedInvitation > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: uid ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: username ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_collection (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: collection ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: access_level ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_from_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: from_pubkey ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:48:64 [INFO] [stdout] | [INFO] [stdout] 48 | ...)] py_class ! (pub class SignedInvitation | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: SignedInvitation > ; # [doc = " "] def get_uid (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: uid ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: username ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_collection (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (SignedInvitation_ :: collection ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: access_level ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) as u32) } # [doc = " "] def get_from_pubkey (& self) -> cpython :: PyResult < Vec < u8 > > { # [allow (unused)] use super :: * ; Ok (SignedInvitation :: from_pubkey ((& * super :: py_signed_invitation :: rust_instance (self , py) . lock () . unwrap ())) . iter () . cloned () . map (| inner | Ok (inner)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:49:64 [INFO] [stdout] | [INFO] [stdout] 49 | ...)] py_class ! (pub class CollectionMember | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMember > ; # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (CollectionMember_ :: username ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (CollectionMember :: access_level ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ())) as u32) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:49:64 [INFO] [stdout] | [INFO] [stdout] 49 | ...)] py_class ! (pub class CollectionMember | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMember > ; # [doc = " "] def get_username (& self) -> cpython :: PyResult < String > { # [allow (unused)] use super :: * ; Ok (CollectionMember_ :: username ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ()))) } # [doc = " "] def get_access_level (& self) -> cpython :: PyResult < u32 > { # [allow (unused)] use super :: * ; Ok (CollectionMember :: access_level ((& * super :: py_collection_member :: rust_instance (self , py) . lock () . unwrap ())) as u32) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | ...)] py_class ! (pub class MemberListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: MemberListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match MemberListResponse_ :: iterator ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection_member :: CollectionMember > > { # [allow (unused)] use super :: * ; Ok ((MemberListResponse :: data ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection_member :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (MemberListResponse :: done ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:50:67 [INFO] [stdout] | [INFO] [stdout] 50 | ...)] py_class ! (pub class MemberListResponse | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: MemberListResponse > ; # [doc = " "] def get_iterator (& self) -> cpython :: PyResult < Option < String > > { # [allow (unused)] use super :: * ; Ok (match MemberListResponse_ :: iterator ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ())) { Some (inner) => Some (inner) , None => None }) } # [doc = " "] def get_data (& self) -> cpython :: PyResult < Vec < super :: py_collection_member :: CollectionMember > > { # [allow (unused)] use super :: * ; Ok ((MemberListResponse :: data ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) . clone () . into_iter () . map (| inner | Ok (super :: py_collection_member :: create_instance (py , std :: sync :: Mutex :: new (inner)) ?)) . collect :: < cpython :: PyResult < Vec < _ >> > () ?) } # [doc = " "] def is_done (& self) -> cpython :: PyResult < bool > { # [allow (unused)] use super :: * ; Ok (MemberListResponse :: done ((& * super :: py_member_list_response :: rust_instance (self , py) . lock () . unwrap ()))) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:51:72 [INFO] [stdout] | [INFO] [stdout] 51 | ...)] py_class ! (pub class CollectionMemberManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMemberManager > ; # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_member_list_response :: MemberListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager_ :: list ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_member_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def remove (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: remove ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def leave (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: leave ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def modify_access_level (& self , username : & str , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: modify_access_level ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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, they should be avoided as they go against expectation [INFO] [stdout] --> /opt/rustwide/target/debug/build/etebase-python-de10ba6b187f0292/out/glue.rs:51:72 [INFO] [stdout] | [INFO] [stdout] 51 | ...)] py_class ! (pub class CollectionMemberManager | py | { static __doc__ = "" ; data rust_instance : std :: sync :: Mutex < super :: CollectionMemberManager > ; # [doc = " "] def list (& self , fetch_options : Option < super :: py_fetch_options :: FetchOptions >) -> cpython :: PyResult < super :: py_member_list_response :: MemberListResponse > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager_ :: list ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , match fetch_options { Some (inner) => Some ((* super :: py_fetch_options :: rust_instance (& inner , py) . lock () . unwrap ()) . clone ()) , None => None , }) { Ok (ok_inner) => super :: py_member_list_response :: create_instance (py , std :: sync :: Mutex :: new (ok_inner)) ? , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def remove (& self , username : & str) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: remove ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def leave (& self) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: leave ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ())) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } # [doc = " "] def modify_access_level (& self , username : & str , access_level : u32) -> cpython :: PyResult < cpython :: PyObject > { # [allow (unused)] use super :: * ; Ok (match CollectionMemberManager :: modify_access_level ((& * super :: py_collection_member_manager :: rust_instance (self , py) . lock () . unwrap ()) , username , super :: py_collection_access_level :: from_u32 (py , access_level) ?) { Ok (ok_inner) => { ok_inner ; py . None () } , Err (err_inner) => return Err (cpython :: PyErr :: new :: < super :: py_error :: Error , _ > (py , swig_collect_error_message (& err_inner))) , }) } }) ; ... [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: move this `impl` block outside the of the current associated function `create_instance` [INFO] [stdout] = note: an `impl` definition is non-local if it is nested inside an item and may impact type checking outside of that item. This can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: one exception to the rule are anon-const (`const _: () = { ... }`) at top-level module and anon-const at the same nesting as the trait or type [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [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: 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: 48 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 48 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 50s [INFO] running `Command { std: "docker" "inspect" "3198e5addcf4334accd8843e42d9dd279492003102593f2052294d124063e1d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3198e5addcf4334accd8843e42d9dd279492003102593f2052294d124063e1d0", kill_on_drop: false }` [INFO] [stdout] 3198e5addcf4334accd8843e42d9dd279492003102593f2052294d124063e1d0