[INFO] fetching crate gemachain-program 1.8.2...
[INFO] testing gemachain-program-1.8.2 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate gemachain-program 1.8.2 into /workspace/builds/worker-6-tc1/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-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate gemachain-program 1.8.2 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]   Downloaded libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]   Downloaded libsecp256k1-core v0.2.2
[INFO] [stderr]   Downloaded libsecp256k1 v0.6.0
[INFO] [stderr]   Downloaded hmac-drbg v0.3.0
[INFO] [stderr]   Downloaded gemachain-sdk-macro v1.8.2
[INFO] [stderr]   Downloaded gemachain-logger v1.8.2
[INFO] [stderr]   Downloaded gemachain-frozen-abi-macro v1.8.2
[INFO] [stderr]   Downloaded feature-probe v0.1.1
[INFO] [stderr]   Downloaded borsh-derive v0.9.3
[INFO] [stderr]   Downloaded gemachain-frozen-abi v1.8.2
[INFO] [stderr]   Downloaded borsh-schema-derive-internal v0.9.3
[INFO] [stderr]   Downloaded borsh-derive-internal v0.9.3
[INFO] [stderr]   Downloaded bs58 v0.4.0
[INFO] [stderr]   Downloaded env_logger v0.9.3
[INFO] [stderr]   Downloaded bv v0.11.1
[INFO] [stderr]   Downloaded borsh v0.9.3
[INFO] [stderr]   Downloaded sha3 v0.9.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a
[INFO] running `Command { std: "docker" "start" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", 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" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", 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" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "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 regex-syntax v0.8.11
[INFO] [stderr]    Compiling block-padding v0.2.1
[INFO] [stderr]    Compiling ahash v0.7.8
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling feature-probe v0.1.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling gemachain-frozen-abi-macro v1.8.2
[INFO] [stderr]    Compiling cmov v0.5.4
[INFO] [stderr]    Compiling humantime v2.4.0
[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 bs58 v0.4.0
[INFO] [stderr]    Compiling constant_time_eq v0.4.2
[INFO] [stderr]    Compiling zeroize v1.3.0
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling cpufeatures v0.3.1
[INFO] [stderr]    Compiling base64 v0.12.3
[INFO] [stderr]    Compiling ctutils v0.4.3
[INFO] [stderr]    Compiling keccak v0.1.6
[INFO] [stderr]    Compiling arrayref v0.3.9
[INFO] [stderr]    Compiling arrayvec v0.7.8
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling hashbrown v0.11.2
[INFO] [stderr]    Compiling either v1.19.0
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling serde_bytes v0.11.19
[INFO] [stderr]    Compiling digest v0.9.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling libsecp256k1-core v0.2.2
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling toml v0.5.11
[INFO] [stderr]    Compiling hybrid-array v0.4.15
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling libsecp256k1-gen-genmult v0.2.1
[INFO] [stderr]    Compiling libsecp256k1-gen-ecmult v0.2.1
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling block-buffer v0.12.1
[INFO] [stderr]    Compiling libsecp256k1 v0.6.0
[INFO] [stderr]    Compiling proc-macro-crate v0.1.5
[INFO] [stderr]    Compiling block-buffer v0.9.0
[INFO] [stderr]    Compiling crypto-mac v0.8.0
[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 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 regex v1.13.1
[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 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]     Finished `release` profile [optimized] target(s) in 34.65s
[INFO] running `Command { std: "docker" "inspect" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", 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" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[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] [stderr]    Compiling assert_matches v1.5.0
[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]     Finished `release` profile [optimized] target(s) in 8.38s
[INFO] running `Command { std: "docker" "inspect" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", 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" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "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: `gemachain-program` (lib) generated 34 warnings (run `cargo fix --lib -p gemachain-program` to apply 5 suggestions)
[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 test) generated 40 warnings (33 duplicates) (run `cargo fix --lib -p gemachain-program --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.15s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/gemachain_program-ea9f5dfd30d27385)
[INFO] [stdout] 
[INFO] [stdout] running 153 tests
[INFO] [stdout] test account_info::tests::test_next_account_infos ... ok
[INFO] [stdout] test blake3::tests::test_hash_fromstr ... ok
[INFO] [stdout] test borsh::tests::instance_packed_len_matches_packed_len ... ok
[INFO] [stdout] test borsh::tests::instance_packed_len_with_varying_sizes_in_hashmap ... ok
[INFO] [stdout] test borsh::tests::unchecked_deserialization ... ok
[INFO] [stdout] test bpf_loader::test_id ... ok
[INFO] [stdout] test ed25519_program::test_id ... ok
[INFO] [stdout] test entrypoint::test::test_bump_allocator ... ok
[INFO] [stdout] test borsh::tests::instance_packed_len_with_vec ... ok
[INFO] [stdout] test blake3::tests::test_extend_and_hash ... ok
[INFO] [stdout] test borsh::tests::packed_len ... ok
[INFO] [stdout] test bpf_loader_upgradeable::test_id ... ok
[INFO] [stdout] test bpf_loader_deprecated::test_id ... ok
[INFO] [stdout] test feature::test_id ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_calculator_calculate_fee ... ok
[INFO] [stdout] test blake3::tests::test_new_unique ... ok
[INFO] [stdout] test config::program::test_id ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_calculator_calculate_fee_secp256k1 ... ok
[INFO] [stdout] test decode_error::tests::test_decode_custom_error_to_enum ... ok
[INFO] [stdout] test epoch_schedule::tests::test_epoch_schedule ... ok
[INFO] [stdout] test feature::test::feature_sizeof ... ok
[INFO] [stdout] test account_info::tests::test_account_info_as_ref ... ok
[INFO] [stdout] test bpf_loader_upgradeable::tests::test_account_lengths ... ok
[INFO] [stdout] test bpf_loader_upgradeable::tests::test_is_set_authority_instruction ... ok
[INFO] [stdout] test hash::tests::test_hash_fromstr ... 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 message::legacy::tests::test_builtin_program_keys_abi_freeze ... ok
[INFO] [stdout] test instruction::test::test_visit_each_account ... ok
[INFO] [stdout] test hash::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_builtin_program_keys ... ok
[INFO] [stdout] test message::legacy::tests::test_get_account_keys_by_lock_type ... ok
[INFO] [stdout] test message::legacy::tests::test_is_key_passed_to_program ... ok
[INFO] [stdout] test message::legacy::tests::test_decompile_instructions ... ok
[INFO] [stdout] test fee_calculator::tests::test_fee_rate_governor_burn ... ok
[INFO] [stdout] test message::legacy::tests::test_is_non_loader_key ... ok
[INFO] [stdout] test message::legacy::tests::test_message_signed_keys_first ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_both_signed ... ok
[INFO] [stdout] test message::legacy::tests::test_message_signed_keys_len ... ok
[INFO] [stdout] test message::legacy::tests::test_message_kitchen_sink ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_one_readonly_signed ... 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_not_adjacent ... ok
[INFO] [stdout] test message::legacy::tests::test_message_program_last ... ok
[INFO] [stdout] test incinerator::test_id ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_one_signed ... ok
[INFO] [stdout] test message::legacy::tests::test_message_readonly_keys_last ... ok
[INFO] [stdout] test message::legacy::tests::test_is_writable ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_order_preserved ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_signed_and_payer ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_keys_unsigned_and_payer ... ok
[INFO] [stdout] test bpf_loader_upgradeable::tests::test_is_upgrade_instruction ... ok
[INFO] [stdout] test message::legacy::tests::test_message_header_len_constant ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_program_ids_order_preserved ... ok
[INFO] [stdout] test message::legacy::tests::test_message_payer_first ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_program_ids_not_adjacent ... ok
[INFO] [stdout] test message::legacy::tests::test_message_unique_program_ids ... ok
[INFO] [stdout] test message::legacy::tests::test_program_ids ... ok
[INFO] [stdout] test message::legacy::tests::test_program_position ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_account_keys_segment_iter ... 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::mapped::tests::test_has_duplicates ... ok
[INFO] [stdout] test message::legacy::tests::test_message_hash ... FAILED
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_account_keys_len ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_try_from_message ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_has_duplicates_with_dupe_keys ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_serialize_instructions ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_serialize ... ok
[INFO] [stdout] test message::non_bpf_modules::versions::tests::test_legacy_message_serialization ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_sanitize_account_indices ... ok
[INFO] [stdout] test message::non_bpf_modules::v0::tests::test_sanitize_address_map ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_num_readonly_accounts ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_is_non_loader_key ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_try_compile_instruction ... 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_sanitize_excessive_loaded_accounts ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_is_writable ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_is_writable_index ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_calculate_fee_secp256k1 ... ok
[INFO] [stdout] test message::non_bpf_modules::sanitized::tests::test_calculate_fee ... ok
[INFO] [stdout] test message::non_bpf_modules::versions::tests::test_versioned_message_serialization ... ok
[INFO] [stdout] test program_option::test::test_from_rust_option ... ok
[INFO] [stdout] test rent::tests::show_rent_model ... ignored
[INFO] [stdout] test rent::tests::test_due ... ok
[INFO] [stdout] test secp256k1_program::test_id ... ok
[INFO] [stdout] test short_vec::tests::test_deserialize ... 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_aliased_length ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_u8_too_long ... ok
[INFO] [stdout] test pubkey::tests::test_create_program_address ... ok
[INFO] [stdout] test short_vec::tests::test_short_vec_encode_len ... ok
[INFO] [stdout] test slot_hashes::tests::test ... ok
[INFO] [stdout] test pubkey::tests::test_new_unique ... ok
[INFO] [stdout] test pubkey::tests::test_create_with_seed ... ok
[INFO] [stdout] test nonce::state::current::test::default_is_uninitialized ... ok
[INFO] [stdout] test pubkey::tests::pubkey_fromstr ... ok
[INFO] [stdout] test pubkey::tests::test_create_with_seed_rejects_illegal_owner ... ok
[INFO] [stdout] test slot_history::tests::slot_history_test1 ... ok
[INFO] [stdout] test message::non_bpf_modules::mapped::tests::test_account_keys_iter ... ok
[INFO] [stdout] test slot_history::tests::slot_history_test_wrap ... ok
[INFO] [stdout] test stake::config::test_id ... ok
[INFO] [stdout] test stake::instruction::tests::test_custom_error_decode ... ok
[INFO] [stdout] test slot_history::tests::slot_history_test_same_index ... ok
[INFO] [stdout] test system_instruction::tests::test_move_many ... ok
[INFO] [stdout] test stake_history::tests::test_stake_history ... ok
[INFO] [stdout] test sysvar::epoch_schedule::test_id ... ok
[INFO] [stdout] test stake::program::test_id ... ok
[INFO] [stdout] test slot_history::tests::test_oldest ... ok
[INFO] [stdout] test sysvar::fees::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::instructions::test_id ... ok
[INFO] [stdout] test sysvar::instructions::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::test_id ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::tests::test_size_of ... ok
[INFO] [stdout] test sysvar::recent_blockhashes::tests::test_sysvar_can_hold_all_active_blockhashes ... ok
[INFO] [stdout] test stake::state::test::borsh_deserialization_live_data ... ok
[INFO] [stdout] test sysvar::rent::test_id ... ok
[INFO] [stdout] test sysvar::rent::test_sysvar_id ... ok
[INFO] [stdout] test slot_history::tests::test_older_slot ... ok
[INFO] [stdout] test sysvar::rewards::test_id ... ok
[INFO] [stdout] test sysvar::rewards::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::slot_hashes::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::slot_history::test_id ... ok
[INFO] [stdout] test sysvar::slot_history::test_sysvar_id ... 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::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::slot_hashes::test_id ... ok
[INFO] [stdout] test stake::state::test::bincode_vs_borsh ... ok
[INFO] [stdout] test sysvar::stake_history::tests::test_create_account ... ok
[INFO] [stdout] test system_instruction::tests::test_nonce_error_adapter_compat ... ok
[INFO] [stdout] test system_instruction::tests::test_instruction_to_nonce_error ... ok
[INFO] [stdout] test system_instruction::tests::test_nonce_error_decode ... ok
[INFO] [stdout] test sysvar::clock::test_id ... ok
[INFO] [stdout] test sysvar::tests::test_id ... ok
[INFO] [stdout] test tests::test_unchecked_div_by_const ... ok
[INFO] [stdout] test vote::program::test_id ... ok
[INFO] [stdout] test sysvar::tests::test_sysvar_account_info_to_from ... ok
[INFO] [stdout] test sysvar::stake_history::tests::test_size_of ... ok
[INFO] [stdout] test sysvar::clock::test_sysvar_id ... ok
[INFO] [stdout] test system_instruction::tests::test_nonce_to_instruction_error ... ok
[INFO] [stdout] test pubkey::tests::test_pubkey_off_curve ... ok
[INFO] [stdout] test system_program::test_id ... ok
[INFO] [stdout] test sysvar::epoch_schedule::test_sysvar_id ... ok
[INFO] [stdout] test sysvar::slot_hashes::tests::test_size_of ... ok
[INFO] [stdout] test sysvar::test_id ... ok
[INFO] [stdout] test system_instruction::tests::test_create_nonce_account ... 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:     0x5b0fd94ee8d1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x5b0fd950493a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    2:     0x5b0fd94f30cc - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x5b0fd94caec6 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x5b0fd94e7039 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]    5:     0x5b0fd946bbb0 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]    6:     0x5b0fd94e71f2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x5b0fd94caf72 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x5b0fd94c3cc9 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x5b0fd94cbb6d - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]   10:     0x5b0fd950511c - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]   11:     0x5b0fd9505033 - core[df12db4294e9bfd3]::panicking::assert_failed_inner
[INFO] [stdout]   12:     0x5b0fd935ad49 - core[df12db4294e9bfd3]::panicking::assert_failed::<gemachain_program[460787a66178e1f8]::hash::Hash, gemachain_program[460787a66178e1f8]::hash::Hash>
[INFO] [stdout]   13:     0x5b0fd9376527 - gemachain_program[460787a66178e1f8]::message::legacy::tests::test_message_hash
[INFO] [stdout]   14:     0x5b0fd934a6f9 - <gemachain_program[460787a66178e1f8]::message::legacy::tests::test_message_hash::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   15:     0x5b0fd945ee9b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]   16:     0x5b0fd946c505 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]   17:     0x5b0fd9465dc4 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]   18:     0x5b0fd946f662 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   19:     0x5b0fd94ee1a9 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   20:     0x7e4f980c1dfa - <unknown>
[INFO] [stdout]   21:     0x7e4f981553d4 - clone
[INFO] [stdout]   22:                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.10s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a", kill_on_drop: false }`
[INFO] [stdout] 4693bfa064b37bb1e583b27d0d33a4e8385ac9f6e7ccc809f7b1bb85a05f531a
