[INFO] fetching crate gemachain-program 1.8.2...
[INFO] testing gemachain-program-1.8.2 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate gemachain-program 1.8.2 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate gemachain-program 1.8.2
[INFO] finished tweaking crates.io crate gemachain-program 1.8.2
[INFO] tweaked toml for crates.io crate gemachain-program 1.8.2 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate gemachain-program 1.8.2 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 115 packages to highest compatible versions
[INFO] [stderr]       Adding base64 v0.13.1 (available: v0.23.1)
[INFO] [stderr]       Adding bincode v1.3.3 (available: v3.0.0)
[INFO] [stderr]       Adding bitflags v1.3.2 (available: v2.13.2)
[INFO] [stderr]       Adding borsh v0.9.3 (available: v1.8.1)
[INFO] [stderr]       Adding borsh-derive v0.9.3 (available: v1.8.1)
[INFO] [stderr]       Adding bs58 v0.4.0 (available: v0.5.1)
[INFO] [stderr]       Adding curve25519-dalek v3.2.1 (available: v5.0.0)
[INFO] [stderr]       Adding itertools v0.10.5 (available: v0.15.0)
[INFO] [stderr]       Adding libsecp256k1 v0.6.0 (available: v0.7.2)
[INFO] [stderr]       Adding num-derive v0.3.3 (available: v0.5.1)
[INFO] [stderr]       Adding rand v0.7.3 (available: v0.10.3)
[INFO] [stderr]       Adding sha2 v0.9.9 (available: v0.11.1)
[INFO] [stderr]       Adding sha3 v0.9.1 (available: v0.12.0)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.21)
[INFO] [stderr]       Adding zeroize v1.3.0 (available: v1.9.1)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67
[INFO] running `Command { std: "docker" "start" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling getrandom v0.1.16
[INFO] [stderr]    Compiling generic-array v0.14.9
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling block-padding v0.2.1
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling gemachain-frozen-abi-macro v1.8.2
[INFO] [stderr]    Compiling humantime v2.4.0
[INFO] [stderr]    Compiling cmov v0.5.4
[INFO] [stderr]    Compiling blake3 v1.8.7
[INFO] [stderr]    Compiling gemachain-frozen-abi v1.8.2
[INFO] [stderr]    Compiling bv v0.11.1
[INFO] [stderr]    Compiling memmap2 v0.5.10
[INFO] [stderr]    Compiling gemachain-program v1.8.2 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling either v1.19.0
[INFO] [stderr]    Compiling bs58 v0.4.0
[INFO] [stderr]    Compiling arrayvec v0.7.8
[INFO] [stderr]    Compiling ctutils v0.4.3
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling cpufeatures v0.3.1
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling zeroize v1.3.0
[INFO] [stderr]    Compiling arrayref v0.3.9
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stderr]    Compiling keccak v0.1.6
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling hybrid-array v0.4.15
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling crypto-mac v0.8.0
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling sha2 v0.9.9
[INFO] [stderr]    Compiling hmac v0.8.1
[INFO] [stderr]    Compiling sha3 v0.9.1
[INFO] [stderr]    Compiling hmac-drbg v0.3.0
[INFO] [stderr]    Compiling curve25519-dalek v3.2.1
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling borsh-schema-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-derive-internal v0.9.3
[INFO] [stderr]    Compiling borsh-derive v0.9.3
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]    Compiling gemachain-sdk-macro v1.8.2
[INFO] [stderr]    Compiling borsh v0.9.3
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling env_logger v0.9.3
[INFO] [stderr]    Compiling gemachain-logger v1.8.2
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]  --> src/lib.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_WITH_SPECIALIZATION)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_WITH_SPECIALIZATION)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_NEEDS_PROC_MACRO_HYGIENE`
[INFO] [stdout]  --> src/lib.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![cfg_attr(RUSTC_NEEDS_PROC_MACRO_HYGIENE, feature(proc_macro_hygiene))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::*`
[INFO] [stdout]   --> src/stake/instruction.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     log::*,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/entrypoint.rs:161:33
[INFO] [stdout]     |
[INFO] [stdout] 161 |         if dup_info == std::u8::MAX {
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/entrypoint_deprecated.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 |         if dup_info == std::u8::MAX {
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/fee_calculator.rs:127:83
[INFO] [stdout]     |
[INFO] [stdout] 127 | ...                   * std::cmp::min(latest_signatures_per_slot, std::u32::MAX as u64)
[INFO] [stdout]     |                                                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/pubkey.rs:298:43
[INFO] [stdout]     |
[INFO] [stdout] 298 |             let mut bump_seed = [std::u8::MAX];
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/pubkey.rs:299:34
[INFO] [stdout]     |
[INFO] [stdout] 299 |             for _ in 0..std::u8::MAX {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:102:30
[INFO] [stdout]     |
[INFO] [stdout] 102 |         .unwrap_or(std::u32::MAX)
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:104:68
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let elem_val = elem_val.checked_shl(shift).unwrap_or(std::u32::MAX);
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:171:24
[INFO] [stdout]     |
[INFO] [stdout] 171 |     if len > std::u16::MAX as usize {
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:228:48
[INFO] [stdout]     |
[INFO] [stdout] 228 |     deserializer.deserialize_tuple(std::usize::MAX, visitor)
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/stake/config.rs:11:54
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const DEFAULT_SLASH_PENALTY: u8 = ((5 * std::u8::MAX as usize) / 100) as u8;
[INFO] [stdout]    |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:319:43
[INFO] [stdout]     |
[INFO] [stdout] 319 |             deactivation_epoch: std::u64::MAX,
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:341:44
[INFO] [stdout]     |
[INFO] [stdout] 341 |         self.activation_epoch == std::u64::MAX
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:561:60
[INFO] [stdout]     |
[INFO] [stdout] 561 |         if self.delegation.deactivation_epoch != std::u64::MAX {
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/hash.rs:48:66
[INFO] [stdout]    |
[INFO] [stdout] 48 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stdout]    |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/keccak.rs:46:66
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stdout]    |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/account_info.rs:93:30
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<&mut u64>, ProgramError> {
[INFO] [stdout]    |                              ^^^^^            ^^^^^^^^^^^^^
[INFO] [stdout]    |                              |                |   |
[INFO] [stdout]    |                              |                |   the same lifetime is elided here
[INFO] [stdout]    |                              |                the same lifetime is hidden here
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<'_, &mut u64>, ProgramError> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/account_info.rs:99:34
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<&'a mut u64>, ProgramError> {
[INFO] [stdout]    |                                  ^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<'_, &'a mut u64>, ProgramError> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/account_info.rs:105:28
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<&mut [u8]>, ProgramError> {
[INFO] [stdout]     |                            ^^^^^            ^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |                |   |
[INFO] [stdout]     |                            |                |   the same lifetime is elided here
[INFO] [stdout]     |                            |                the same lifetime is hidden here
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<'_, &mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/account_info.rs:111:32
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<&'a mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<'_, &'a mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:24:53
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError`
[INFO] [stdout] 25 | pub enum PubkeyError {
[INFO] [stdout]    |          ----------- `PubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:24:68
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PubkeyError`
[INFO] [stdout] 25 | pub enum PubkeyError {
[INFO] [stdout]    |          ----------- `PubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:70:53
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_ParsePubkeyError`
[INFO] [stdout] 71 | pub enum ParsePubkeyError {
[INFO] [stdout]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_ParsePubkeyError`
[INFO] [stdout] 71 | pub enum ParsePubkeyError {
[INFO] [stdout]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/stake/instruction.rs:21:42
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StakeError`
[INFO] [stdout] 22 | pub enum StakeError {
[INFO] [stdout]    |          ---------- `StakeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/stake/instruction.rs:21:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StakeError`
[INFO] [stdout] 22 | pub enum StakeError {
[INFO] [stdout]    |          ---------- `StakeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:14:53
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SystemError`
[INFO] [stdout] 15 | pub enum SystemError {
[INFO] [stdout]    |          ----------- `SystemError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:14:68
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SystemError`
[INFO] [stdout] 15 | pub enum SystemError {
[INFO] [stdout]    |          ----------- `SystemError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:42:42
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceError`
[INFO] [stdout] 43 | pub enum NonceError {
[INFO] [stdout]    |          ---------- `NonceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:42:57
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceError`
[INFO] [stdout] 43 | pub enum NonceError {
[INFO] [stdout]    |          ---------- `NonceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:60:42
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceErrorAdapter`
[INFO] [stdout] 61 | enum NonceErrorAdapter {
[INFO] [stdout]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:60:57
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceErrorAdapter`
[INFO] [stdout] 61 | enum NonceErrorAdapter {
[INFO] [stdout]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `gemachain-frozen-abi`
[INFO] [stderr]   --> Cargo.toml:24:15
[INFO] [stderr]    |
[INFO] [stderr] 24 | [dependencies.gemachain-frozen-abi]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `gemachain-frozen-abi`
[INFO] [stderr] warning: `gemachain-program` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 41.05s
[INFO] running `Command { std: "docker" "inspect" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling assert_matches v1.5.0
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]  --> src/lib.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_WITH_SPECIALIZATION)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_WITH_SPECIALIZATION)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_NEEDS_PROC_MACRO_HYGIENE`
[INFO] [stdout]  --> src/lib.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![cfg_attr(RUSTC_NEEDS_PROC_MACRO_HYGIENE, feature(proc_macro_hygiene))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::*`
[INFO] [stdout]   --> src/stake/instruction.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     log::*,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/entrypoint.rs:161:33
[INFO] [stdout]     |
[INFO] [stdout] 161 |         if dup_info == std::u8::MAX {
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/entrypoint_deprecated.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 |         if dup_info == std::u8::MAX {
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/fee_calculator.rs:127:83
[INFO] [stdout]     |
[INFO] [stdout] 127 | ...                   * std::cmp::min(latest_signatures_per_slot, std::u32::MAX as u64)
[INFO] [stdout]     |                                                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/pubkey.rs:298:43
[INFO] [stdout]     |
[INFO] [stdout] 298 |             let mut bump_seed = [std::u8::MAX];
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/pubkey.rs:299:34
[INFO] [stdout]     |
[INFO] [stdout] 299 |             for _ in 0..std::u8::MAX {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:102:30
[INFO] [stdout]     |
[INFO] [stdout] 102 |         .unwrap_or(std::u32::MAX)
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:104:68
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let elem_val = elem_val.checked_shl(shift).unwrap_or(std::u32::MAX);
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:171:24
[INFO] [stdout]     |
[INFO] [stdout] 171 |     if len > std::u16::MAX as usize {
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:228:48
[INFO] [stdout]     |
[INFO] [stdout] 228 |     deserializer.deserialize_tuple(std::usize::MAX, visitor)
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/stake/config.rs:11:54
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const DEFAULT_SLASH_PENALTY: u8 = ((5 * std::u8::MAX as usize) / 100) as u8;
[INFO] [stdout]    |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:319:43
[INFO] [stdout]     |
[INFO] [stdout] 319 |             deactivation_epoch: std::u64::MAX,
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:341:44
[INFO] [stdout]     |
[INFO] [stdout] 341 |         self.activation_epoch == std::u64::MAX
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:561:60
[INFO] [stdout]     |
[INFO] [stdout] 561 |         if self.delegation.deactivation_epoch != std::u64::MAX {
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/hash.rs:48:66
[INFO] [stdout]    |
[INFO] [stdout] 48 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stdout]    |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/keccak.rs:46:66
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stdout]    |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/account_info.rs:93:30
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<&mut u64>, ProgramError> {
[INFO] [stdout]    |                              ^^^^^            ^^^^^^^^^^^^^
[INFO] [stdout]    |                              |                |   |
[INFO] [stdout]    |                              |                |   the same lifetime is elided here
[INFO] [stdout]    |                              |                the same lifetime is hidden here
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<'_, &mut u64>, ProgramError> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/account_info.rs:99:34
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<&'a mut u64>, ProgramError> {
[INFO] [stdout]    |                                  ^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<'_, &'a mut u64>, ProgramError> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/account_info.rs:105:28
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<&mut [u8]>, ProgramError> {
[INFO] [stdout]     |                            ^^^^^            ^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |                |   |
[INFO] [stdout]     |                            |                |   the same lifetime is elided here
[INFO] [stdout]     |                            |                the same lifetime is hidden here
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<'_, &mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/account_info.rs:111:32
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<&'a mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<'_, &'a mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:24:53
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError`
[INFO] [stdout] 25 | pub enum PubkeyError {
[INFO] [stdout]    |          ----------- `PubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:24:68
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PubkeyError`
[INFO] [stdout] 25 | pub enum PubkeyError {
[INFO] [stdout]    |          ----------- `PubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:70:53
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_ParsePubkeyError`
[INFO] [stdout] 71 | pub enum ParsePubkeyError {
[INFO] [stdout]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_ParsePubkeyError`
[INFO] [stdout] 71 | pub enum ParsePubkeyError {
[INFO] [stdout]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/stake/instruction.rs:21:42
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StakeError`
[INFO] [stdout] 22 | pub enum StakeError {
[INFO] [stdout]    |          ---------- `StakeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/stake/instruction.rs:21:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StakeError`
[INFO] [stdout] 22 | pub enum StakeError {
[INFO] [stdout]    |          ---------- `StakeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:14:53
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SystemError`
[INFO] [stdout] 15 | pub enum SystemError {
[INFO] [stdout]    |          ----------- `SystemError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:14:68
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SystemError`
[INFO] [stdout] 15 | pub enum SystemError {
[INFO] [stdout]    |          ----------- `SystemError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:42:42
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceError`
[INFO] [stdout] 43 | pub enum NonceError {
[INFO] [stdout]    |          ---------- `NonceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:42:57
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceError`
[INFO] [stdout] 43 | pub enum NonceError {
[INFO] [stdout]    |          ---------- `NonceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:60:42
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceErrorAdapter`
[INFO] [stdout] 61 | enum NonceErrorAdapter {
[INFO] [stdout]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:60:57
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceErrorAdapter`
[INFO] [stdout] 61 | enum NonceErrorAdapter {
[INFO] [stdout]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gemachain-program v1.8.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stdout]  --> src/lib.rs:2:13
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_WITH_SPECIALIZATION)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_WITH_SPECIALIZATION)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `RUSTC_NEEDS_PROC_MACRO_HYGIENE`
[INFO] [stdout]  --> src/lib.rs:3:13
[INFO] [stdout]   |
[INFO] [stdout] 3 | #![cfg_attr(RUSTC_NEEDS_PROC_MACRO_HYGIENE, feature(proc_macro_hygiene))]
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = help: consider using a Cargo feature instead
[INFO] [stdout]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]            [lints.rust]
[INFO] [stdout]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)'] }
[INFO] [stdout]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)");` to the top of the `build.rs`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `log::*`
[INFO] [stdout]   --> src/stake/instruction.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     log::*,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::unchecked_div_by_const`
[INFO] [stdout]    --> src/lib.rs:205:9
[INFO] [stdout]     |
[INFO] [stdout] 205 |     use super::unchecked_div_by_const;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/entrypoint.rs:161:33
[INFO] [stdout]     |
[INFO] [stdout] 161 |         if dup_info == std::u8::MAX {
[INFO] [stdout]     |                                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/entrypoint_deprecated.rs:72:33
[INFO] [stdout]    |
[INFO] [stdout] 72 |         if dup_info == std::u8::MAX {
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/fee_calculator.rs:127:83
[INFO] [stdout]     |
[INFO] [stdout] 127 | ...                   * std::cmp::min(latest_signatures_per_slot, std::u32::MAX as u64)
[INFO] [stdout]     |                                                                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/fee_calculator.rs:306:60
[INFO] [stdout]     |
[INFO] [stdout] 306 |             f = FeeRateGovernor::new_derived(&f, std::u64::MAX);
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/pubkey.rs:298:43
[INFO] [stdout]     |
[INFO] [stdout] 298 |             let mut bump_seed = [std::u8::MAX];
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/pubkey.rs:299:34
[INFO] [stdout]     |
[INFO] [stdout] 299 |             for _ in 0..std::u8::MAX {
[INFO] [stdout]     |                                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:102:30
[INFO] [stdout]     |
[INFO] [stdout] 102 |         .unwrap_or(std::u32::MAX)
[INFO] [stdout]     |                              ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:104:68
[INFO] [stdout]     |
[INFO] [stdout] 104 |     let elem_val = elem_val.checked_shl(shift).unwrap_or(std::u32::MAX);
[INFO] [stdout]     |                                                                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:171:24
[INFO] [stdout]     |
[INFO] [stdout] 171 |     if len > std::u16::MAX as usize {
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:228:48
[INFO] [stdout]     |
[INFO] [stdout] 228 |     deserializer.deserialize_tuple(std::usize::MAX, visitor)
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:361:48
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vec = ShortVec(vec![4u8; std::u16::MAX as usize]);
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/short_vec.rs:364:48
[INFO] [stdout]     |
[INFO] [stdout] 364 |         let vec = ShortVec(vec![4u8; std::u16::MAX as usize + 1]);
[INFO] [stdout]     |                                                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]   --> src/stake/config.rs:11:54
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub const DEFAULT_SLASH_PENALTY: u8 = ((5 * std::u8::MAX as usize) / 100) as u8;
[INFO] [stdout]    |                                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:319:43
[INFO] [stdout]     |
[INFO] [stdout] 319 |             deactivation_epoch: std::u64::MAX,
[INFO] [stdout]     |                                           ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:341:44
[INFO] [stdout]     |
[INFO] [stdout] 341 |         self.activation_epoch == std::u64::MAX
[INFO] [stdout]     |                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/stake/state.rs:561:60
[INFO] [stdout]     |
[INFO] [stdout] 561 |         if self.delegation.deactivation_epoch != std::u64::MAX {
[INFO] [stdout]     |                                                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/hash.rs:48:66
[INFO] [stdout]    |
[INFO] [stdout] 48 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stdout]    |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stdout]   --> src/keccak.rs:46:66
[INFO] [stdout]    |
[INFO] [stdout] 46 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stdout]    |                                                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> src/borsh.rs:123:15
[INFO] [stdout]     |
[INFO] [stdout] 120 |     #[derive(PartialEq, Clone, Debug, BorshSerialize, BorshDeserialize, BorshSchema)]
[INFO] [stdout]     |                                                                         ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 123 |         Value(u32),
[INFO] [stdout]     |               ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/account_info.rs:93:30
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<&mut u64>, ProgramError> {
[INFO] [stdout]    |                              ^^^^^            ^^^^^^^^^^^^^
[INFO] [stdout]    |                              |                |   |
[INFO] [stdout]    |                              |                |   the same lifetime is elided here
[INFO] [stdout]    |                              |                the same lifetime is hidden here
[INFO] [stdout]    |                              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<'_, &mut u64>, ProgramError> {
[INFO] [stdout]    |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/account_info.rs:99:34
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<&'a mut u64>, ProgramError> {
[INFO] [stdout]    |                                  ^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                                  |
[INFO] [stdout]    |                                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<'_, &'a mut u64>, ProgramError> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/account_info.rs:105:28
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<&mut [u8]>, ProgramError> {
[INFO] [stdout]     |                            ^^^^^            ^^^^^^^^^^^^^^
[INFO] [stdout]     |                            |                |   |
[INFO] [stdout]     |                            |                |   the same lifetime is elided here
[INFO] [stdout]     |                            |                the same lifetime is hidden here
[INFO] [stdout]     |                            the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<'_, &mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/account_info.rs:111:32
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<&'a mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                |
[INFO] [stdout]     |                                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<'_, &'a mut [u8]>, ProgramError> {
[INFO] [stdout]     |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/decode_error.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |         #[derive(Debug, FromPrimitive, PartialEq)]
[INFO] [stdout]    |                         ^------------
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         `FromPrimitive` is not local
[INFO] [stdout]    |                         move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_TestEnum` and up 2 bodies
[INFO] [stdout] 22 |         enum TestEnum {
[INFO] [stdout]    |              -------- `TestEnum` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:24:53
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError`
[INFO] [stdout] 25 | pub enum PubkeyError {
[INFO] [stdout]    |          ----------- `PubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:24:68
[INFO] [stdout]    |
[INFO] [stdout] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PubkeyError`
[INFO] [stdout] 25 | pub enum PubkeyError {
[INFO] [stdout]    |          ----------- `PubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:70:53
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_ParsePubkeyError`
[INFO] [stdout] 71 | pub enum ParsePubkeyError {
[INFO] [stdout]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/pubkey.rs:70:68
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_ParsePubkeyError`
[INFO] [stdout] 71 | pub enum ParsePubkeyError {
[INFO] [stdout]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/stake/instruction.rs:21:42
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StakeError`
[INFO] [stdout] 22 | pub enum StakeError {
[INFO] [stdout]    |          ---------- `StakeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/stake/instruction.rs:21:57
[INFO] [stdout]    |
[INFO] [stdout] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StakeError`
[INFO] [stdout] 22 | pub enum StakeError {
[INFO] [stdout]    |          ---------- `StakeError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:14:53
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                     ^------------
[INFO] [stdout]    |                                                     |
[INFO] [stdout]    |                                                     `FromPrimitive` is not local
[INFO] [stdout]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SystemError`
[INFO] [stdout] 15 | pub enum SystemError {
[INFO] [stdout]    |          ----------- `SystemError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:14:68
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                                    ^----------
[INFO] [stdout]    |                                                                    |
[INFO] [stdout]    |                                                                    `ToPrimitive` is not local
[INFO] [stdout]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SystemError`
[INFO] [stdout] 15 | pub enum SystemError {
[INFO] [stdout]    |          ----------- `SystemError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:42:42
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceError`
[INFO] [stdout] 43 | pub enum NonceError {
[INFO] [stdout]    |          ---------- `NonceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:42:57
[INFO] [stdout]    |
[INFO] [stdout] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceError`
[INFO] [stdout] 43 | pub enum NonceError {
[INFO] [stdout]    |          ---------- `NonceError` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:60:42
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                          ^------------
[INFO] [stdout]    |                                          |
[INFO] [stdout]    |                                          `FromPrimitive` is not local
[INFO] [stdout]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceErrorAdapter`
[INFO] [stdout] 61 | enum NonceErrorAdapter {
[INFO] [stdout]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]   --> src/system_instruction.rs:60:57
[INFO] [stdout]    |
[INFO] [stdout] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stdout]    |                                                         ^----------
[INFO] [stdout]    |                                                         |
[INFO] [stdout]    |                                                         `ToPrimitive` is not local
[INFO] [stdout]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceErrorAdapter`
[INFO] [stdout] 61 | enum NonceErrorAdapter {
[INFO] [stdout]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stdout]    |
[INFO] [stdout]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stdout]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `gemachain-frozen-abi`
[INFO] [stderr]   --> Cargo.toml:24:15
[INFO] [stderr]    |
[INFO] [stderr] 24 | [dependencies.gemachain-frozen-abi]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `gemachain-frozen-abi`
[INFO] [stderr] warning: `gemachain-program` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 9.06s
[INFO] running `Command { std: "docker" "inspect" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition name: `RUSTC_WITH_SPECIALIZATION`
[INFO] [stderr]  --> src/lib.rs:2:13
[INFO] [stderr]   |
[INFO] [stderr] 2 | #![cfg_attr(RUSTC_WITH_SPECIALIZATION, feature(specialization))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: expected names are: `docsrs`, `feature`, and `test` and 34 more
[INFO] [stderr]   = help: consider using a Cargo feature instead
[INFO] [stderr]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]            [lints.rust]
[INFO] [stderr]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_WITH_SPECIALIZATION)'] }
[INFO] [stderr]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_WITH_SPECIALIZATION)");` to the top of the `build.rs`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unexpected `cfg` condition name: `RUSTC_NEEDS_PROC_MACRO_HYGIENE`
[INFO] [stderr]  --> src/lib.rs:3:13
[INFO] [stderr]   |
[INFO] [stderr] 3 | #![cfg_attr(RUSTC_NEEDS_PROC_MACRO_HYGIENE, feature(proc_macro_hygiene))]
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = help: consider using a Cargo feature instead
[INFO] [stderr]   = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stderr]            [lints.rust]
[INFO] [stderr]            unexpected_cfgs = { level = "warn", check-cfg = ['cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)'] }
[INFO] [stderr]   = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(RUSTC_NEEDS_PROC_MACRO_HYGIENE)");` to the top of the `build.rs`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `log::*`
[INFO] [stderr]   --> src/stake/instruction.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     log::*,
[INFO] [stderr]    |     ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/entrypoint.rs:161:33
[INFO] [stderr]     |
[INFO] [stderr] 161 |         if dup_info == std::u8::MAX {
[INFO] [stderr]     |                                 ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]   --> src/entrypoint_deprecated.rs:72:33
[INFO] [stderr]    |
[INFO] [stderr] 72 |         if dup_info == std::u8::MAX {
[INFO] [stderr]    |                                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/fee_calculator.rs:127:83
[INFO] [stderr]     |
[INFO] [stderr] 127 | ...                   * std::cmp::min(latest_signatures_per_slot, std::u32::MAX as u64)
[INFO] [stderr]     |                                                                             ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/pubkey.rs:298:43
[INFO] [stderr]     |
[INFO] [stderr] 298 |             let mut bump_seed = [std::u8::MAX];
[INFO] [stderr]     |                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/pubkey.rs:299:34
[INFO] [stderr]     |
[INFO] [stderr] 299 |             for _ in 0..std::u8::MAX {
[INFO] [stderr]     |                                  ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/short_vec.rs:102:30
[INFO] [stderr]     |
[INFO] [stderr] 102 |         .unwrap_or(std::u32::MAX)
[INFO] [stderr]     |                              ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/short_vec.rs:104:68
[INFO] [stderr]     |
[INFO] [stderr] 104 |     let elem_val = elem_val.checked_shl(shift).unwrap_or(std::u32::MAX);
[INFO] [stderr]     |                                                                    ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/short_vec.rs:171:24
[INFO] [stderr]     |
[INFO] [stderr] 171 |     if len > std::u16::MAX as usize {
[INFO] [stderr]     |                        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::usize::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/short_vec.rs:228:48
[INFO] [stderr]     |
[INFO] [stderr] 228 |     deserializer.deserialize_tuple(std::usize::MAX, visitor)
[INFO] [stderr]     |                                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u8::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]   --> src/stake/config.rs:11:54
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub const DEFAULT_SLASH_PENALTY: u8 = ((5 * std::u8::MAX as usize) / 100) as u8;
[INFO] [stderr]    |                                                      ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/stake/state.rs:319:43
[INFO] [stderr]     |
[INFO] [stderr] 319 |             deactivation_epoch: std::u64::MAX,
[INFO] [stderr]     |                                           ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/stake/state.rs:341:44
[INFO] [stderr]     |
[INFO] [stderr] 341 |         self.activation_epoch == std::u64::MAX
[INFO] [stderr]     |                                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/stake/state.rs:561:60
[INFO] [stderr]     |
[INFO] [stderr] 561 |         if self.delegation.deactivation_epoch != std::u64::MAX {
[INFO] [stderr]     |                                                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/hash.rs:48:66
[INFO] [stderr]    |
[INFO] [stderr] 48 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stderr]    |                                                                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `sha2::digest::generic_array::GenericArray::<T, N>::as_slice`: please upgrade to generic-array 1.x
[INFO] [stderr]   --> src/keccak.rs:46:66
[INFO] [stderr]    |
[INFO] [stderr] 46 |         Hash(<[u8; HASH_BYTES]>::try_from(self.hasher.finalize().as_slice()).unwrap())
[INFO] [stderr]    |                                                                  ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/account_info.rs:93:30
[INFO] [stderr]    |
[INFO] [stderr] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<&mut u64>, ProgramError> {
[INFO] [stderr]    |                              ^^^^^            ^^^^^^^^^^^^^
[INFO] [stderr]    |                              |                |   |
[INFO] [stderr]    |                              |                |   the same lifetime is elided here
[INFO] [stderr]    |                              |                the same lifetime is hidden here
[INFO] [stderr]    |                              the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 93 |     pub fn try_borrow_carats(&self) -> Result<Ref<'_, &mut u64>, ProgramError> {
[INFO] [stderr]    |                                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/account_info.rs:99:34
[INFO] [stderr]    |
[INFO] [stderr] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<&'a mut u64>, ProgramError> {
[INFO] [stderr]    |                                  ^^^^^            ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                                  |
[INFO] [stderr]    |                                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 99 |     pub fn try_borrow_mut_carats(&self) -> Result<RefMut<'_, &'a mut u64>, ProgramError> {
[INFO] [stderr]    |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/account_info.rs:105:28
[INFO] [stderr]     |
[INFO] [stderr] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<&mut [u8]>, ProgramError> {
[INFO] [stderr]     |                            ^^^^^            ^^^^^^^^^^^^^^
[INFO] [stderr]     |                            |                |   |
[INFO] [stderr]     |                            |                |   the same lifetime is elided here
[INFO] [stderr]     |                            |                the same lifetime is hidden here
[INFO] [stderr]     |                            the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 105 |     pub fn try_borrow_data(&self) -> Result<Ref<'_, &mut [u8]>, ProgramError> {
[INFO] [stderr]     |                                                 +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/account_info.rs:111:32
[INFO] [stderr]     |
[INFO] [stderr] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<&'a mut [u8]>, ProgramError> {
[INFO] [stderr]     |                                ^^^^^            ^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                                |
[INFO] [stderr]     |                                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 111 |     pub fn try_borrow_mut_data(&self) -> Result<RefMut<'_, &'a mut [u8]>, ProgramError> {
[INFO] [stderr]     |                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/pubkey.rs:24:53
[INFO] [stderr]    |
[INFO] [stderr] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                     ^------------
[INFO] [stderr]    |                                                     |
[INFO] [stderr]    |                                                     `FromPrimitive` is not local
[INFO] [stderr]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError`
[INFO] [stderr] 25 | pub enum PubkeyError {
[INFO] [stderr]    |          ----------- `PubkeyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/pubkey.rs:24:68
[INFO] [stderr]    |
[INFO] [stderr] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                                    ^----------
[INFO] [stderr]    |                                                                    |
[INFO] [stderr]    |                                                                    `ToPrimitive` is not local
[INFO] [stderr]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_PubkeyError`
[INFO] [stderr] 25 | pub enum PubkeyError {
[INFO] [stderr]    |          ----------- `PubkeyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/pubkey.rs:70:53
[INFO] [stderr]    |
[INFO] [stderr] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                     ^------------
[INFO] [stderr]    |                                                     |
[INFO] [stderr]    |                                                     `FromPrimitive` is not local
[INFO] [stderr]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_ParsePubkeyError`
[INFO] [stderr] 71 | pub enum ParsePubkeyError {
[INFO] [stderr]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/pubkey.rs:70:68
[INFO] [stderr]    |
[INFO] [stderr] 70 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                                    ^----------
[INFO] [stderr]    |                                                                    |
[INFO] [stderr]    |                                                                    `ToPrimitive` is not local
[INFO] [stderr]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_ParsePubkeyError`
[INFO] [stderr] 71 | pub enum ParsePubkeyError {
[INFO] [stderr]    |          ---------------- `ParsePubkeyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/stake/instruction.rs:21:42
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                          ^------------
[INFO] [stderr]    |                                          |
[INFO] [stderr]    |                                          `FromPrimitive` is not local
[INFO] [stderr]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_StakeError`
[INFO] [stderr] 22 | pub enum StakeError {
[INFO] [stderr]    |          ---------- `StakeError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/stake/instruction.rs:21:57
[INFO] [stderr]    |
[INFO] [stderr] 21 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                         ^----------
[INFO] [stderr]    |                                                         |
[INFO] [stderr]    |                                                         `ToPrimitive` is not local
[INFO] [stderr]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_StakeError`
[INFO] [stderr] 22 | pub enum StakeError {
[INFO] [stderr]    |          ---------- `StakeError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/system_instruction.rs:14:53
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                     ^------------
[INFO] [stderr]    |                                                     |
[INFO] [stderr]    |                                                     `FromPrimitive` is not local
[INFO] [stderr]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_SystemError`
[INFO] [stderr] 15 | pub enum SystemError {
[INFO] [stderr]    |          ----------- `SystemError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/system_instruction.rs:14:68
[INFO] [stderr]    |
[INFO] [stderr] 14 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                                    ^----------
[INFO] [stderr]    |                                                                    |
[INFO] [stderr]    |                                                                    `ToPrimitive` is not local
[INFO] [stderr]    |                                                                    move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_SystemError`
[INFO] [stderr] 15 | pub enum SystemError {
[INFO] [stderr]    |          ----------- `SystemError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/system_instruction.rs:42:42
[INFO] [stderr]    |
[INFO] [stderr] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                          ^------------
[INFO] [stderr]    |                                          |
[INFO] [stderr]    |                                          `FromPrimitive` is not local
[INFO] [stderr]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceError`
[INFO] [stderr] 43 | pub enum NonceError {
[INFO] [stderr]    |          ---------- `NonceError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/system_instruction.rs:42:57
[INFO] [stderr]    |
[INFO] [stderr] 42 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                         ^----------
[INFO] [stderr]    |                                                         |
[INFO] [stderr]    |                                                         `ToPrimitive` is not local
[INFO] [stderr]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceError`
[INFO] [stderr] 43 | pub enum NonceError {
[INFO] [stderr]    |          ---------- `NonceError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/system_instruction.rs:60:42
[INFO] [stderr]    |
[INFO] [stderr] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                          ^------------
[INFO] [stderr]    |                                          |
[INFO] [stderr]    |                                          `FromPrimitive` is not local
[INFO] [stderr]    |                                          move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_NonceErrorAdapter`
[INFO] [stderr] 61 | enum NonceErrorAdapter {
[INFO] [stderr]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/system_instruction.rs:60:57
[INFO] [stderr]    |
[INFO] [stderr] 60 | #[derive(Error, Debug, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                         ^----------
[INFO] [stderr]    |                                                         |
[INFO] [stderr]    |                                                         `ToPrimitive` is not local
[INFO] [stderr]    |                                                         move the `impl` block outside of this constant `_IMPL_NUM_ToPrimitive_FOR_NonceErrorAdapter`
[INFO] [stderr] 61 | enum NonceErrorAdapter {
[INFO] [stderr]    |      ----------------- `NonceErrorAdapter` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `ToPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `ToPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `ToPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `super::unchecked_div_by_const`
[INFO] [stderr]    --> src/lib.rs:205:9
[INFO] [stderr]     |
[INFO] [stderr] 205 |     use super::unchecked_div_by_const;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u64::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/fee_calculator.rs:306:60
[INFO] [stderr]     |
[INFO] [stderr] 306 |             f = FeeRateGovernor::new_derived(&f, std::u64::MAX);
[INFO] [stderr]     |                                                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/short_vec.rs:361:48
[INFO] [stderr]     |
[INFO] [stderr] 361 |         let vec = ShortVec(vec![4u8; std::u16::MAX as usize]);
[INFO] [stderr]     |                                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::u16::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/short_vec.rs:364:48
[INFO] [stderr]     |
[INFO] [stderr] 364 |         let vec = ShortVec(vec![4u8; std::u16::MAX as usize + 1]);
[INFO] [stderr]     |                                                ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> src/borsh.rs:123:15
[INFO] [stderr]     |
[INFO] [stderr] 120 |     #[derive(PartialEq, Clone, Debug, BorshSerialize, BorshDeserialize, BorshSchema)]
[INFO] [stderr]     |                                                                         ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 123 |         Value(u32),
[INFO] [stderr]     |               ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/decode_error.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |         #[derive(Debug, FromPrimitive, PartialEq)]
[INFO] [stderr]    |                         ^------------
[INFO] [stderr]    |                         |
[INFO] [stderr]    |                         `FromPrimitive` is not local
[INFO] [stderr]    |                         move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_TestEnum` and up 2 bodies
[INFO] [stderr] 22 |         enum TestEnum {
[INFO] [stderr]    |              -------- `TestEnum` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stderr]   --> src/pubkey.rs:24:53
[INFO] [stderr]    |
[INFO] [stderr] 24 | #[derive(Error, Debug, Serialize, Clone, PartialEq, FromPrimitive, ToPrimitive)]
[INFO] [stderr]    |                                                     ^------------
[INFO] [stderr]    |                                                     |
[INFO] [stderr]    |                                                     `FromPrimitive` is not local
[INFO] [stderr]    |                                                     move the `impl` block outside of this constant `_IMPL_NUM_FromPrimitive_FOR_PubkeyError`
[INFO] [stderr] 25 | pub enum PubkeyError {
[INFO] [stderr]    |          ----------- `PubkeyError` is not local
[INFO] [stderr]    |
[INFO] [stderr]    = note: the derive macro `FromPrimitive` defines the non-local `impl`, and may need to be changed
[INFO] [stderr]    = note: the derive macro `FromPrimitive` may come from an old version of the `num_derive` crate, try updating your dependency with `cargo update -p num_derive`
[INFO] [stderr]    = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stderr]    = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stderr]    = note: this warning originates in the derive macro `FromPrimitive` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: `gemachain-program` (lib) generated 34 warnings (run `cargo fix --lib -p gemachain-program` to apply 5 suggestions)
[INFO] [stderr] warning: `gemachain-program` (lib test) generated 40 warnings (33 duplicates) (run `cargo fix --lib -p gemachain-program --tests` to apply 1 suggestion)
[INFO] [stderr] warning: unused dependency `gemachain-frozen-abi`
[INFO] [stderr]   --> Cargo.toml:24:15
[INFO] [stderr]    |
[INFO] [stderr] 24 | [dependencies.gemachain-frozen-abi]
[INFO] [stderr]    |               ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `gemachain-frozen-abi`
[INFO] [stderr] warning: `gemachain-program` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/gemachain-program/ea9f5dfd30d27385/out/gemachain_program-ea9f5dfd30d27385)
[INFO] [stdout] 
[INFO] [stdout] running 153 tests
[INFO] [stdout] test account_info::tests::test_next_account_infos ... ok
[INFO] [stdout] test account_info::tests::test_account_info_as_ref ... ok
[INFO] [stdout] test blake3::tests::test_extend_and_hash ... ok
[INFO] [stdout] test borsh::tests::instance_packed_len_with_vec ... ok
[INFO] [stdout] test borsh::tests::instance_packed_len_with_varying_sizes_in_hashmap ... ok
[INFO] [stdout] test bpf_loader::test_id ... ok
[INFO] [stdout] test bpf_loader_upgradeable::test_id ... ok
[INFO] [stdout] test bpf_loader_upgradeable::tests::test_is_set_authority_instruction ... ok
[INFO] [stdout] test entrypoint::test::test_bump_allocator ... ok
[INFO] [stdout] test ed25519_program::test_id ... ok
[INFO] [stdout] test bpf_loader_upgradeable::tests::test_is_upgrade_instruction ... ok
[INFO] [stdout] test borsh::tests::unchecked_deserialization ... ok
[INFO] [stdout] test borsh::tests::packed_len ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_calculator_calculate_fee ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_calculator_calculate_fee_secp256k1 ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_rate_governor_burn ... ok
[INFO] [stdout] test blake3::tests::test_hash_fromstr ... ok
[INFO] [stdout] test hash::tests::test_new_unique ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_rate_governor_derived_adjust ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_rate_governor_derived_default ... ok
[INFO] [stdout] test incinerator::test_id ... ok
[INFO] [stdout] test hash::tests::test_hash_fromstr ... ok
[INFO] [stdout] test message::legacy::tests::test_is_key_passed_to_program ... ok
[INFO] [stdout] test config::program::test_id ... ok
[INFO] [stdout] test blake3::tests::test_new_unique ... ok
[INFO] [stdout] test message::legacy::tests::test_decompile_instructions_out_of_bounds ... ok
[INFO] [stdout] test message::legacy::tests::test_decompile_instructions ... ok
[INFO] [stdout] test message::legacy::tests::test_builtin_program_keys ... ok
[INFO] [stdout] test decode_error::tests::test_decode_custom_error_to_enum ... ok
[INFO] [stdout] test bpf_loader_deprecated::test_id ... ok
[INFO] [stdout] test instruction::test::test_visit_each_account ... ok
[INFO] [stdout] test bpf_loader_upgradeable::tests::test_account_lengths ... ok
[INFO] [stdout] test message::legacy::tests::test_is_writable ... ok
[INFO] [stdout] test message::legacy::tests::test_message_kitchen_sink ... ok
[INFO] [stdout] test message::legacy::tests::test_message_payer_first ... ok
[INFO] [stdout] test message::legacy::tests::test_message_program_last ... ok
[INFO] [stdout] test message::legacy::tests::test_message_readonly_keys_last ... ok
[INFO] [stdout] test message::legacy::tests::test_message_signed_keys_first ... ok
[INFO] [stdout] test message::legacy::tests::test_message_signed_keys_len ... ok
[INFO] [stdout] test message::legacy::tests::test_is_non_loader_key ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_one_readonly_unsigned ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_one_signed ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_order_preserved ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_unsigned_and_payer ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_not_adjacent ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_both_signed ... ok
[INFO] [stdout] test epoch_schedule::tests::test_epoch_schedule ... ok
[INFO] [stdout] test feature::test::feature_sizeof ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_one_readonly_signed ... ok
[INFO] [stdout] test feature::test_id ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_signed_and_payer ... ok
[INFO] [stdout] test message::legacy::tests::test_message_hash ... FAILED
[INFO] [stdout] test message::legacy::tests::test_message_header_len_constant ... ok
[INFO] [stdout] test message::legacy::tests::test_builtin_program_keys_abi_freeze ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_program_ids ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_program_ids_order_preserved ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_account_keys_len ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_account_keys_segment_iter ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_program_ids_not_adjacent ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_get_account_key ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_demote_writable_program ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_num_readonly_accounts ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_has_duplicates ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_serialize_instructions ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_sanitize_excessive_loaded_accounts ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_sanitize_excessive_maps ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_serialize ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_has_duplicates_with_dupe_keys ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_is_writable ... ok
[INFO] [stdout] test message::non_bpf_modules::versions::tests::test_legacy_message_serialization ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_is_writable_index ... ok
[INFO] [stdout] test message::non_bpf_modules::versions::tests::test_versioned_message_serialization ... ok
[INFO] [stdout] test message::legacy::tests::test_program_ids ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_is_non_loader_key ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_sanitize_address_map ... ok
[INFO] [stdout] test message::legacy::tests::test_program_position ... ok
[INFO] [stdout] test message::legacy::tests::test_get_account_keys_by_lock_type ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_calculate_fee_secp256k1 ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_account_keys_iter ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_calculate_fee ... ok
[INFO] [stdout] test rent::tests::show_rent_model ... ignored
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_try_compile_instruction ... ok
[INFO] [stdout] test pubkey::tests::test_new_unique ... ok
[INFO] [stdout] test program_option::test::test_from_rust_option ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_try_from_message ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_encode_len ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_json ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_u8 ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_u8_too_long ... ok
[INFO] [stdout] test pubkey::tests::pubkey_fromstr ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_sanitize_account_indices ... ok
[INFO] [stdout] test nonce::state::current::test::default_is_uninitialized ... ok
[INFO] [stdout] test pubkey::tests::test_create_program_address ... ok
[INFO] [stdout] test slot_hashes::tests::test ... ok
[INFO] [stdout] test pubkey::tests::test_create_with_seed ... ok
[INFO] [stdout] test pubkey::tests::test_create_with_seed_rejects_illegal_owner ... ok
[INFO] [stdout] test short_vec::tests::test_deserialize ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_aliased_length ... ok
[INFO] [stdout] test secp256k1_program::test_id ... ok
[INFO] [stdout] test stake::state::test::bincode_vs_borsh ... ok
[INFO] [stdout] test stake::config::test_id ... ok
[INFO] [stdout] test slot_history::tests::test_older_slot ... ok
[INFO] [stdout] test stake::state::test::borsh_deserialization_live_data ... ok
[INFO] [stdout] test stake_history::tests::test_stake_history ... ok
[INFO] [stdout] test stake::program::test_id ... ok
[INFO] [stdout] test slot_history::tests::slot_history_test_same_index ... ok
[INFO] [stdout] test system_instruction::tests::test_nonce_to_instruction_error ... ok
[INFO] [stdout] test system_instruction::tests::test_move_many ... ok
[INFO] [stdout] test sysvar::clock::test_id ... ok
[INFO] [stdout] test system_instruction::tests::test_nonce_error_adapter_compat ... ok
[INFO] [stdout] test stake::instruction::tests::test_custom_error_decode ... ok
[INFO] [stdout] test system_instruction::tests::test_instruction_to_nonce_error ... ok
[INFO] [stdout] test system_instruction::tests::test_create_nonce_account ... ok
[INFO] [stdout] test system_instruction::tests::test_nonce_error_decode ... ok
[INFO] [stdout] test system_program::test_id ... ok
[INFO] [stdout] test sysvar::clock::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::fees::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::instructions::test_id ... ok
[INFO] [stdout] test sysvar::epoch_schedule::test_id ... ok
[INFO] [stdout] test sysvar::epoch_schedule::test_sysvar_id ... ok
[INFO] [stdout] test slot_history::tests::test_oldest ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::instructions::test_sysvar_id ... ok
[INFO] [stdout] test slot_history::tests::slot_history_test_wrap ... ok
[INFO] [stdout] test sysvar::slot_hashes::test_id ... ok
[INFO] [stdout] test sysvar::rent::test_id ... ok
[INFO] [stdout] test sysvar::rewards::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::fees::test_id ... ok
[INFO] [stdout] test sysvar::instructions::tests::test_load_store_instruction ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::tests::test_size_of ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::test_id ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::tests::test_sysvar_can_hold_all_active_blockhashes ... ok
[INFO] [stdout] test slot_history::tests::slot_history_test1 ... ok
[INFO] [stdout] test sysvar::rent::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::rewards::test_id ... ok
[INFO] [stdout] test sysvar::stake_history::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::stake_history::tests::test_create_account ... ok
[INFO] [stdout] test tests::test_unchecked_div_by_const ... ok
[INFO] [stdout] test vote::program::test_id ... ok
[INFO] [stdout] test sysvar::slot_hashes::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::test_id ... ok
[INFO] [stdout] test sysvar::slot_history::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::tests::test_id ... ok
[INFO] [stdout] test sysvar::slot_history::test_id ... ok
[INFO] [stdout] test sysvar::tests::test_sysvar_account_info_to_from ... ok
[INFO] [stdout] test sysvar::slot_hashes::tests::test_size_of ... ok
[INFO] [stdout] test pubkey::tests::test_pubkey_off_curve ... ok
[INFO] [stdout] test rent::tests::test_due ... ok
[INFO] [stdout] test sysvar::slot_history::tests::test_size_of ... ok
[INFO] [stdout] test sysvar::stake_history::test_id ... ok
[INFO] [stdout] test sysvar::stake_history::tests::test_size_of ... ok
[INFO] [stdout] test borsh::tests::instance_packed_len_matches_packed_len ... ok
[INFO] [stdout] test pubkey::tests::test_find_program_address ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- message::legacy::tests::test_message_hash stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'message::legacy::tests::test_message_hash' (1448) panicked at src/message/legacy.rs:1053:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: EZgunxLN1npfFVcSHEm7DL4cfvUj6WgaBUjpmafJWWfL
[INFO] [stdout]  right: CXRH7GHLieaQZRUjH1mpnNnUZQtU4V4RpJpAFgy77i3z
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x59082758f671 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5908275a540a - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x590827593bec - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x59082756bad6 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x590827587d09 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x59082750caa0 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x590827587ec2 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x59082756bb82 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x590827564869 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x59082756c78d - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x5908275a5bec - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5908275a5b03 - core[a373ad73a504971]::panicking::assert_failed_inner
[INFO] [stdout]   12:     0x590827412c9d - core[a373ad73a504971]::panicking::assert_failed::<gemachain_program[a033708cd8c69ec8]::hash::Hash, gemachain_program[a033708cd8c69ec8]::hash::Hash>
[INFO] [stdout]   13:     0x590827414a92 - <gemachain_program[a033708cd8c69ec8]::message::legacy::tests::test_message_hash::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x5908274ffeeb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   15:     0x59082750d0c5 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   16:     0x5908275069b4 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x590827510152 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x59082758eecf - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x7b94b0062dfa - <unknown>
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] [stdout]   20:     0x7b94b00f63d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     message::legacy::tests::test_message_hash
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 151 passed; 1 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67", kill_on_drop: false }`
[INFO] [stdout] b63353c4f1b753f91e76ee0bbbedea171a2448fe8ff74dc5a22b0c2e0b3efd67
