[INFO] cloning repository https://github.com/popula-io/community [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/popula-io/community" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpopula-io%2Fcommunity", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpopula-io%2Fcommunity'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] aa44d4ecf8bca26d80810ce5deeafea350bff00d [INFO] testing popula-io/community against 1.84.0 for beta-1.85-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fpopula-io%2Fcommunity" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/popula-io/community on toolchain 1.84.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.84.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/popula-io/community [INFO] finished tweaking git repo https://github.com/popula-io/community [INFO] tweaked toml for git repo https://github.com/popula-io/community written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/popula-io/community already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.84.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded schemars_derive v0.8.15 [INFO] [stderr] Downloaded zeropool-bn v0.5.11 [INFO] [stderr] Downloaded near-abi v0.3.0 [INFO] [stderr] Downloaded near-contract-standards v4.1.1 [INFO] [stderr] Downloaded near-non-transferable-token v0.0.7 [INFO] [stderr] Downloaded dyn-clone v1.0.14 [INFO] [stderr] Downloaded schemars v0.8.15 [INFO] [stderr] Downloaded near-sdk-macros v4.1.1 [INFO] [stderr] Downloaded near-vm-logic v0.14.0 [INFO] [stderr] Downloaded near-sdk v4.1.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+1.84.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a497d6e0c6d7b6bf050881d5c80f96295b379a8c5c6f3e92b6e418046fac411f [INFO] running `Command { std: "docker" "start" "-a" "a497d6e0c6d7b6bf050881d5c80f96295b379a8c5c6f3e92b6e418046fac411f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a497d6e0c6d7b6bf050881d5c80f96295b379a8c5c6f3e92b6e418046fac411f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a497d6e0c6d7b6bf050881d5c80f96295b379a8c5c6f3e92b6e418046fac411f", kill_on_drop: false }` [INFO] [stdout] a497d6e0c6d7b6bf050881d5c80f96295b379a8c5c6f3e92b6e418046fac411f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+1.84.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d4095ea25a1716c6f7cf97b8fea36e6228db341bd3112eebd990b925f6c6a863 [INFO] running `Command { std: "docker" "start" "-a" "d4095ea25a1716c6f7cf97b8fea36e6228db341bd3112eebd990b925f6c6a863", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.69 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling libc v0.2.149 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling serde v1.0.189 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling once_cell v1.18.0 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling ppv-lite86 v0.2.17 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling ahash v0.7.6 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling hashbrown v0.14.2 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling winnow v0.5.17 [INFO] [stderr] Compiling toml_datetime v0.6.3 [INFO] [stderr] Compiling getrandom v0.2.10 [INFO] [stderr] Compiling radium v0.6.2 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling indexmap v2.0.2 [INFO] [stderr] Compiling hashbrown v0.11.2 [INFO] [stderr] Compiling syn v2.0.38 [INFO] [stderr] Compiling rand_core v0.5.1 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling num-integer v0.1.45 [INFO] [stderr] Compiling wyz v0.2.0 [INFO] [stderr] Compiling cpufeatures v0.2.10 [INFO] [stderr] Compiling serde_json v1.0.107 [INFO] [stderr] Compiling rustversion v1.0.14 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling funty v1.1.0 [INFO] [stderr] Compiling subtle v2.5.0 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling rand_chacha v0.2.2 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling num-bigint v0.3.3 [INFO] [stderr] Compiling bitvec v0.20.4 [INFO] [stderr] Compiling toml_edit v0.19.15 [INFO] [stderr] Compiling arrayvec v0.7.4 [INFO] [stderr] Compiling itoa v1.0.9 [INFO] [stderr] Compiling ryu v1.0.15 [INFO] [stderr] Compiling rustc-hex v2.1.0 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling opaque-debug v0.3.0 [INFO] [stderr] Compiling byte-slice-cast v1.2.2 [INFO] [stderr] Compiling rand v0.7.3 [INFO] [stderr] Compiling parity-secp256k1 v0.7.0 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling num-rational v0.3.2 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Compiling thiserror v1.0.50 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Compiling signature v1.6.4 [INFO] [stderr] Compiling heck v0.4.1 [INFO] [stderr] Compiling ed25519 v1.5.3 [INFO] [stderr] Compiling uint v0.9.5 [INFO] [stderr] Compiling sha2 v0.9.9 [INFO] [stderr] Compiling fixed-hash v0.7.0 [INFO] [stderr] Compiling crypto-mac v0.8.0 [INFO] [stderr] Compiling proc-macro-crate v1.3.1 [INFO] [stderr] Compiling cipher v0.2.5 [INFO] [stderr] Compiling arrayvec v0.5.2 [INFO] [stderr] Compiling reed-solomon-erasure v4.0.2 [INFO] [stderr] Compiling bs58 v0.4.0 [INFO] [stderr] Compiling c2-chacha v0.3.3 [INFO] [stderr] Compiling blake2 v0.9.2 [INFO] [stderr] Compiling borsh-schema-derive-internal v0.9.3 [INFO] [stderr] Compiling borsh-derive-internal v0.9.3 [INFO] [stderr] Compiling serde_derive_internals v0.26.0 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling schemars v0.8.15 [INFO] [stderr] Compiling spin v0.5.2 [INFO] [stderr] Compiling arrayref v0.3.7 [INFO] [stderr] Compiling base64 v0.11.0 [INFO] [stderr] Compiling iana-time-zone v0.1.58 [INFO] [stderr] Compiling semver v1.0.20 [INFO] [stderr] Compiling smallvec v1.11.1 [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling keccak v0.1.4 [INFO] [stderr] Compiling dyn-clone v1.0.14 [INFO] [stderr] Compiling bytesize v1.3.0 [INFO] [stderr] Compiling easy-ext v0.2.9 [INFO] [stderr] Compiling wee_alloc v0.4.5 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling ripemd v0.1.3 [INFO] [stderr] Compiling memory_units v0.4.0 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Compiling base64 v0.13.1 [INFO] [stderr] Compiling near-sys v0.2.0 [INFO] [stderr] Compiling serde_derive v1.0.189 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling thiserror-impl v1.0.50 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [INFO] [stderr] Compiling parity-scale-codec-derive v2.3.1 [INFO] [stderr] Compiling strum_macros v0.24.3 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Compiling smart-default v0.6.0 [INFO] [stderr] Compiling zeroize v1.3.0 [INFO] [stderr] Compiling curve25519-dalek v3.2.1 [INFO] [stderr] Compiling schemars_derive v0.8.15 [INFO] [stderr] Compiling near-sdk-macros v4.1.1 [INFO] [stderr] Compiling strum v0.24.1 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling parity-scale-codec v2.3.1 [INFO] [stderr] Compiling near-rpc-error-core v0.14.0 [INFO] [stderr] Compiling ed25519-dalek v1.0.1 [INFO] [stderr] Compiling chrono v0.4.31 [INFO] [stderr] Compiling near-rpc-error-macro v0.14.0 [INFO] [stderr] Compiling proc-macro-crate v0.1.5 [INFO] [stderr] Compiling impl-codec v0.5.1 [INFO] [stderr] Compiling primitive-types v0.10.1 [INFO] [stderr] Compiling borsh-derive v0.9.3 [INFO] [stderr] Compiling borsh v0.9.3 [INFO] [stderr] Compiling near-account-id v0.14.0 [INFO] [stderr] Compiling zeropool-bn v0.5.11 [INFO] [stderr] Compiling near-crypto v0.14.0 [INFO] [stderr] Compiling near-vm-errors v0.14.0 [INFO] [stderr] Compiling near-primitives-core v0.14.0 [INFO] [stderr] Compiling near-abi v0.3.0 [INFO] [stderr] Compiling near-primitives v0.14.0 [INFO] [stderr] Compiling near-vm-logic v0.14.0 [INFO] [stderr] Compiling near-sdk v4.1.1 [INFO] [stderr] Compiling near-contract-standards v4.1.1 [INFO] [stderr] Compiling near-non-transferable-token v0.0.7 [INFO] [stderr] Compiling community v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Value` and `to_string` [INFO] [stdout] --> src/lib.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | use near_sdk::serde_json::{json, self, to_string, Value}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockHeight` and `sys` [INFO] [stdout] --> src/lib.rs:14:77 [INFO] [stdout] | [INFO] [stdout] 14 | ...PanicOnDefault, Promise, BlockHeight, CryptoHash, assert_one_yocto, BorshStorageKey, env, PromiseOrValue, sys, PromiseResult}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LazyOption`, `UnorderedSet`, and `Vector` [INFO] [stdout] --> src/lib.rs:15:54 [INFO] [stdout] | [INFO] [stdout] 15 | use near_sdk::collections::{LookupMap, UnorderedMap, Vector, LazyOption, UnorderedSet}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActionCall` and `FunctionCall` [INFO] [stdout] --> src/lib.rs:17:26 [INFO] [stdout] | [INFO] [stdout] 17 | use proposal::{Proposal, FunctionCall, ActionCall}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `refund_extra_storage_deposit` [INFO] [stdout] --> src/lib.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | use utils::{refund_extra_storage_deposit, set, remove, set_storage_usage, get_account, set_account, get_account_id, init_callback}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::proposal::ProposalInput` [INFO] [stdout] --> src/lib.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use crate::proposal::ProposalInput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::role::Role` [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::role::Role; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `from_rpc_sig` and `get_access_limit` [INFO] [stdout] --> src/lib.rs:24:29 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::utils::{get_arg, get_access_limit, verify, from_rpc_sig, get_predecessor_id}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log` [INFO] [stdout] --> src/utils.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use near_sdk::{Balance, StorageUsage, Promise, log}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/post.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{convert::TryInto, str::FromStr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `check` [INFO] [stdout] --> src/post.rs:5:44 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{*, utils::{get, check_and_set, check, init_callback}, drip::get_map_value}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ops::Deref` [INFO] [stdout] --> src/drip.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, ops::Deref}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashMap`, `hash::Hash`, and `str::FromStr` [INFO] [stdout] --> src/drip.rs:280:15 [INFO] [stdout] | [INFO] [stdout] 280 | use std::{collections::HashMap, str::FromStr, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AccountId`, `env`, `json_types::U128`, `serde_json::json`, and `serde_json` [INFO] [stdout] --> src/drip.rs:282:20 [INFO] [stdout] | [INFO] [stdout] 282 | use near_sdk::{json_types::U128, AccountId, serde_json::json, serde_json, env}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Account` and `self` [INFO] [stdout] --> src/drip.rs:284:26 [INFO] [stdout] | [INFO] [stdout] 284 | use crate::account::{self, Account}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Drip`, `U256`, and `get_map_value` [INFO] [stdout] --> src/drip.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | use super::{U256, get_map_value, Drip}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_sdk::Balance` [INFO] [stdout] --> src/view.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use near_sdk::Balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::account::AssetKey` [INFO] [stdout] --> src/role.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::account::AssetKey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/role.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `U128` and `U64` [INFO] [stdout] --> src/role.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use near_sdk::json_types::{U128, U64}; [INFO] [stdout] | ^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Balance` [INFO] [stdout] --> src/role.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | use near_sdk::{env, AccountId, Balance}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Pending` [INFO] [stdout] --> src/account.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::future::Pending; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get` [INFO] [stdout] --> src/account.rs:3:60 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{*, utils::{get_access_limit, verify_secp256k1, get}}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/account.rs:397:9 [INFO] [stdout] | [INFO] [stdout] 397 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `json_types::U64`, `json`, and `self` [INFO] [stdout] --> src/account.rs:399:20 [INFO] [stdout] | [INFO] [stdout] 399 | use near_sdk::{json_types::U64, serde_json::{json, self}}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `verify_secp256k1` and `verify` [INFO] [stdout] --> src/account.rs:401:24 [INFO] [stdout] | [INFO] [stdout] 401 | use crate::utils::{verify_secp256k1, verify}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_parent_contract_id` [INFO] [stdout] --> src/resolver.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::utils::{get_parent_contract_id, get_content_hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/proposal.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ExpandedSecretKey` [INFO] [stdout] --> src/proposal.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use ed25519_dalek::{ExpandedSecretKey, SecretKey}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_contract_standards::fungible_token` [INFO] [stdout] --> src/proposal.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use near_contract_standards::fungible_token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Base64VecU8` [INFO] [stdout] --> src/proposal.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | use near_sdk::json_types::{Base64VecU8, U128, U64}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Balance`, `ext_contract`, and `log` [INFO] [stdout] --> src/proposal.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use near_sdk::{log, AccountId, Balance, Gas, PromiseOrValue, ext_contract, PromiseResult, PublicKey}; [INFO] [stdout] | ^^^ ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/drip.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut this = Self { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_total_drip` [INFO] [stdout] --> src/drip.rs:96:21 [INFO] [stdout] | [INFO] [stdout] 96 | if let Some(new_total_drip) = total_drip.checked_add(drip) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_total_drip` [INFO] [stdout] --> src/drip.rs:244:21 [INFO] [stdout] | [INFO] [stdout] 244 | if let Some(new_total_drip) = total_drip.checked_add(balance) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/role.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/role.rs:167:18 [INFO] [stdout] | [INFO] [stdout] 167 | Some(v) => panic!("role already exist"), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/role.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:297:14 [INFO] [stdout] | [INFO] [stdout] 297 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:305:14 [INFO] [stdout] | [INFO] [stdout] 305 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:320:14 [INFO] [stdout] | [INFO] [stdout] 320 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:433:41 [INFO] [stdout] | [INFO] [stdout] 433 | Permission::SetRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:439:41 [INFO] [stdout] | [INFO] [stdout] 439 | Permission::DelRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:445:43 [INFO] [stdout] | [INFO] [stdout] 445 | Permission::AddMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:451:46 [INFO] [stdout] | [INFO] [stdout] 451 | Permission::RemoveMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/role.rs:470:29 [INFO] [stdout] | [INFO] [stdout] 470 | if let Some(mut access) = option.clone() { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/role.rs:481:29 [INFO] [stdout] | [INFO] [stdout] 481 | if let Some(mut access) = option.clone() { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expire_duration` [INFO] [stdout] --> src/account.rs:350:33 [INFO] [stdout] | [INFO] [stdout] 350 | if let Some(expire_duration) = access.expire_duration{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expire_duration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner_id` [INFO] [stdout] --> src/resolver.rs:130:30 [INFO] [stdout] | [INFO] [stdout] 130 | fn ft_on_burn(&mut self, owner_id: AccountId, contract_id: AccountId ,amount: U128, msg: String) -> PromiseOrValue { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_owner_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/metadata.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/proposal.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | let mut option = self.options.get_mut(vote as usize).unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contract_id` [INFO] [stdout] --> src/proposal.rs:287:35 [INFO] [stdout] | [INFO] [stdout] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contract_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/proposal.rs:287:48 [INFO] [stdout] | [INFO] [stdout] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `refund_extra_storage_deposit` is never used [INFO] [stdout] --> src/utils.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub(crate) fn refund_extra_storage_deposit(storage_used: StorageUsage, used_balance: Balance) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `getSeed` is never used [INFO] [stdout] --> src/utils.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub(crate) fn getSeed() -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EVENT` is never used [INFO] [stdout] --> src/account.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const EVENT: &str = "event"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `getSeed` should have a snake case name [INFO] [stdout] --> src/utils.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub(crate) fn getSeed() -> String { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `get_seed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 06s [INFO] running `Command { std: "docker" "inspect" "d4095ea25a1716c6f7cf97b8fea36e6228db341bd3112eebd990b925f6c6a863", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d4095ea25a1716c6f7cf97b8fea36e6228db341bd3112eebd990b925f6c6a863", kill_on_drop: false }` [INFO] [stdout] d4095ea25a1716c6f7cf97b8fea36e6228db341bd3112eebd990b925f6c6a863 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+1.84.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e227e17730aa3ccf3dc9fb86814dfa3df831ba33d8e6371d1785a69cf89c2341 [INFO] running `Command { std: "docker" "start" "-a" "e227e17730aa3ccf3dc9fb86814dfa3df831ba33d8e6371d1785a69cf89c2341", kill_on_drop: false }` [INFO] [stdout] warning: unused imports: `Value` and `to_string` [INFO] [stdout] --> src/lib.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | use near_sdk::serde_json::{json, self, to_string, Value}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockHeight` and `sys` [INFO] [stdout] --> src/lib.rs:14:77 [INFO] [stdout] | [INFO] [stdout] 14 | ...PanicOnDefault, Promise, BlockHeight, CryptoHash, assert_one_yocto, BorshStorageKey, env, PromiseOrValue, sys, PromiseResult}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LazyOption`, `UnorderedSet`, and `Vector` [INFO] [stdout] --> src/lib.rs:15:54 [INFO] [stdout] | [INFO] [stdout] 15 | use near_sdk::collections::{LookupMap, UnorderedMap, Vector, LazyOption, UnorderedSet}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActionCall` and `FunctionCall` [INFO] [stdout] --> src/lib.rs:17:26 [INFO] [stdout] | [INFO] [stdout] 17 | use proposal::{Proposal, FunctionCall, ActionCall}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `refund_extra_storage_deposit` [INFO] [stdout] --> src/lib.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | use utils::{refund_extra_storage_deposit, set, remove, set_storage_usage, get_account, set_account, get_account_id, init_callback}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::proposal::ProposalInput` [INFO] [stdout] --> src/lib.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use crate::proposal::ProposalInput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::role::Role` [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::role::Role; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `from_rpc_sig` and `get_access_limit` [INFO] [stdout] --> src/lib.rs:24:29 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::utils::{get_arg, get_access_limit, verify, from_rpc_sig, get_predecessor_id}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log` [INFO] [stdout] --> src/utils.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use near_sdk::{Balance, StorageUsage, Promise, log}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/post.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{convert::TryInto, str::FromStr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `check` [INFO] [stdout] --> src/post.rs:5:44 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{*, utils::{get, check_and_set, check, init_callback}, drip::get_map_value}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ops::Deref` [INFO] [stdout] --> src/drip.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, ops::Deref}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `collections::HashMap`, `hash::Hash`, and `str::FromStr` [INFO] [stdout] --> src/drip.rs:280:15 [INFO] [stdout] | [INFO] [stdout] 280 | use std::{collections::HashMap, str::FromStr, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AccountId`, `env`, `json_types::U128`, `serde_json::json`, and `serde_json` [INFO] [stdout] --> src/drip.rs:282:20 [INFO] [stdout] | [INFO] [stdout] 282 | use near_sdk::{json_types::U128, AccountId, serde_json::json, serde_json, env}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Account` and `self` [INFO] [stdout] --> src/drip.rs:284:26 [INFO] [stdout] | [INFO] [stdout] 284 | use crate::account::{self, Account}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Drip`, `U256`, and `get_map_value` [INFO] [stdout] --> src/drip.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | use super::{U256, get_map_value, Drip}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_sdk::Balance` [INFO] [stdout] --> src/view.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use near_sdk::Balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::account::AssetKey` [INFO] [stdout] --> src/role.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::account::AssetKey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/role.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `U128` and `U64` [INFO] [stdout] --> src/role.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use near_sdk::json_types::{U128, U64}; [INFO] [stdout] | ^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Balance` [INFO] [stdout] --> src/role.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | use near_sdk::{env, AccountId, Balance}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Pending` [INFO] [stdout] --> src/account.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::future::Pending; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get` [INFO] [stdout] --> src/account.rs:3:60 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{*, utils::{get_access_limit, verify_secp256k1, get}}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/account.rs:397:9 [INFO] [stdout] | [INFO] [stdout] 397 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `json_types::U64`, `json`, and `self` [INFO] [stdout] --> src/account.rs:399:20 [INFO] [stdout] | [INFO] [stdout] 399 | use near_sdk::{json_types::U64, serde_json::{json, self}}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `verify_secp256k1` and `verify` [INFO] [stdout] --> src/account.rs:401:24 [INFO] [stdout] | [INFO] [stdout] 401 | use crate::utils::{verify_secp256k1, verify}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_parent_contract_id` [INFO] [stdout] --> src/resolver.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::utils::{get_parent_contract_id, get_content_hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/proposal.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ExpandedSecretKey` [INFO] [stdout] --> src/proposal.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use ed25519_dalek::{ExpandedSecretKey, SecretKey}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_contract_standards::fungible_token` [INFO] [stdout] --> src/proposal.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use near_contract_standards::fungible_token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Base64VecU8` [INFO] [stdout] --> src/proposal.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | use near_sdk::json_types::{Base64VecU8, U128, U64}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Balance`, `ext_contract`, and `log` [INFO] [stdout] --> src/proposal.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use near_sdk::{log, AccountId, Balance, Gas, PromiseOrValue, ext_contract, PromiseResult, PublicKey}; [INFO] [stdout] | ^^^ ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/drip.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut this = Self { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_total_drip` [INFO] [stdout] --> src/drip.rs:96:21 [INFO] [stdout] | [INFO] [stdout] 96 | if let Some(new_total_drip) = total_drip.checked_add(drip) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_total_drip` [INFO] [stdout] --> src/drip.rs:244:21 [INFO] [stdout] | [INFO] [stdout] 244 | if let Some(new_total_drip) = total_drip.checked_add(balance) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/role.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/role.rs:167:18 [INFO] [stdout] | [INFO] [stdout] 167 | Some(v) => panic!("role already exist"), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/role.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:297:14 [INFO] [stdout] | [INFO] [stdout] 297 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:305:14 [INFO] [stdout] | [INFO] [stdout] 305 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:320:14 [INFO] [stdout] | [INFO] [stdout] 320 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:433:41 [INFO] [stdout] | [INFO] [stdout] 433 | Permission::SetRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:439:41 [INFO] [stdout] | [INFO] [stdout] 439 | Permission::DelRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:445:43 [INFO] [stdout] | [INFO] [stdout] 445 | Permission::AddMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:451:46 [INFO] [stdout] | [INFO] [stdout] 451 | Permission::RemoveMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling community v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/role.rs:470:29 [INFO] [stdout] | [INFO] [stdout] 470 | if let Some(mut access) = option.clone() { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/role.rs:481:29 [INFO] [stdout] | [INFO] [stdout] 481 | if let Some(mut access) = option.clone() { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expire_duration` [INFO] [stdout] --> src/account.rs:350:33 [INFO] [stdout] | [INFO] [stdout] 350 | if let Some(expire_duration) = access.expire_duration{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expire_duration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner_id` [INFO] [stdout] --> src/resolver.rs:130:30 [INFO] [stdout] | [INFO] [stdout] 130 | fn ft_on_burn(&mut self, owner_id: AccountId, contract_id: AccountId ,amount: U128, msg: String) -> PromiseOrValue { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_owner_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/metadata.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/proposal.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | let mut option = self.options.get_mut(vote as usize).unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contract_id` [INFO] [stdout] --> src/proposal.rs:287:35 [INFO] [stdout] | [INFO] [stdout] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contract_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/proposal.rs:287:48 [INFO] [stdout] | [INFO] [stdout] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `refund_extra_storage_deposit` is never used [INFO] [stdout] --> src/utils.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub(crate) fn refund_extra_storage_deposit(storage_used: StorageUsage, used_balance: Balance) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `getSeed` is never used [INFO] [stdout] --> src/utils.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub(crate) fn getSeed() -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EVENT` is never used [INFO] [stdout] --> src/account.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const EVENT: &str = "event"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `getSeed` should have a snake case name [INFO] [stdout] --> src/utils.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub(crate) fn getSeed() -> String { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `get_seed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Value` and `to_string` [INFO] [stdout] --> src/lib.rs:13:40 [INFO] [stdout] | [INFO] [stdout] 13 | use near_sdk::serde_json::{json, self, to_string, Value}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BlockHeight` and `sys` [INFO] [stdout] --> src/lib.rs:14:77 [INFO] [stdout] | [INFO] [stdout] 14 | ...PanicOnDefault, Promise, BlockHeight, CryptoHash, assert_one_yocto, BorshStorageKey, env, PromiseOrValue, sys, PromiseResult}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LazyOption`, `UnorderedSet`, and `Vector` [INFO] [stdout] --> src/lib.rs:15:54 [INFO] [stdout] | [INFO] [stdout] 15 | use near_sdk::collections::{LookupMap, UnorderedMap, Vector, LazyOption, UnorderedSet}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ActionCall` and `FunctionCall` [INFO] [stdout] --> src/lib.rs:17:26 [INFO] [stdout] | [INFO] [stdout] 17 | use proposal::{Proposal, FunctionCall, ActionCall}; [INFO] [stdout] | ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `refund_extra_storage_deposit` [INFO] [stdout] --> src/lib.rs:20:13 [INFO] [stdout] | [INFO] [stdout] 20 | use utils::{refund_extra_storage_deposit, set, remove, set_storage_usage, get_account, set_account, get_account_id, init_callback}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::proposal::ProposalInput` [INFO] [stdout] --> src/lib.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use crate::proposal::ProposalInput; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::role::Role` [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::role::Role; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `from_rpc_sig` and `get_access_limit` [INFO] [stdout] --> src/lib.rs:24:29 [INFO] [stdout] | [INFO] [stdout] 24 | use crate::utils::{get_arg, get_access_limit, verify, from_rpc_sig, get_predecessor_id}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `log` [INFO] [stdout] --> src/utils.rs:6:48 [INFO] [stdout] | [INFO] [stdout] 6 | use near_sdk::{Balance, StorageUsage, Promise, log}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/post.rs:1:29 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{convert::TryInto, str::FromStr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `check` [INFO] [stdout] --> src/post.rs:5:44 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::{*, utils::{get, check_and_set, check, init_callback}, drip::get_map_value}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ops::Deref` [INFO] [stdout] --> src/drip.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use std::{collections::HashMap, ops::Deref}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hash::Hash` [INFO] [stdout] --> src/drip.rs:280:51 [INFO] [stdout] | [INFO] [stdout] 280 | use std::{collections::HashMap, str::FromStr, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `json_types::U128` [INFO] [stdout] --> src/drip.rs:282:20 [INFO] [stdout] | [INFO] [stdout] 282 | use near_sdk::{json_types::U128, AccountId, serde_json::json, serde_json, env}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/drip.rs:284:26 [INFO] [stdout] | [INFO] [stdout] 284 | use crate::account::{self, Account}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_sdk::Balance` [INFO] [stdout] --> src/view.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use near_sdk::Balance; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::account::AssetKey` [INFO] [stdout] --> src/role.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::account::AssetKey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::marker::PhantomData` [INFO] [stdout] --> src/role.rs:4:5 [INFO] [stdout] | [INFO] [stdout] 4 | use std::marker::PhantomData; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `U128` and `U64` [INFO] [stdout] --> src/role.rs:7:28 [INFO] [stdout] | [INFO] [stdout] 7 | use near_sdk::json_types::{U128, U64}; [INFO] [stdout] | ^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Balance` [INFO] [stdout] --> src/role.rs:9:32 [INFO] [stdout] | [INFO] [stdout] 9 | use near_sdk::{env, AccountId, Balance}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `convert::TryInto` [INFO] [stdout] --> src/role.rs:540:15 [INFO] [stdout] | [INFO] [stdout] 540 | use std::{convert::TryInto, collections::{HashMap, HashSet}}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_sdk::AccountId` [INFO] [stdout] --> src/role.rs:542:9 [INFO] [stdout] | [INFO] [stdout] 542 | use near_sdk::AccountId; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `RoleManagement` [INFO] [stdout] --> src/role.rs:546:17 [INFO] [stdout] | [INFO] [stdout] 546 | use super::{RoleManagement, Permission}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::future::Pending` [INFO] [stdout] --> src/account.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::future::Pending; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get` [INFO] [stdout] --> src/account.rs:3:60 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::{*, utils::{get_access_limit, verify_secp256k1, get}}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/account.rs:397:9 [INFO] [stdout] | [INFO] [stdout] 397 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `json_types::U64`, `json`, and `self` [INFO] [stdout] --> src/account.rs:399:20 [INFO] [stdout] | [INFO] [stdout] 399 | use near_sdk::{json_types::U64, serde_json::{json, self}}; [INFO] [stdout] | ^^^^^^^^^^^^^^^ ^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `verify` [INFO] [stdout] --> src/account.rs:401:42 [INFO] [stdout] | [INFO] [stdout] 401 | use crate::utils::{verify_secp256k1, verify}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `get_parent_contract_id` [INFO] [stdout] --> src/resolver.rs:8:20 [INFO] [stdout] | [INFO] [stdout] 8 | use crate::utils::{get_parent_contract_id, get_content_hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `TryFrom` and `TryInto` [INFO] [stdout] --> src/resolver.rs:165:47 [INFO] [stdout] | [INFO] [stdout] 165 | use std::{collections::HashMap, convert::{TryInto, TryFrom}, str::FromStr}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Deserialize`, `de::IntoDeserializer`, and `self` [INFO] [stdout] --> src/resolver.rs:167:39 [INFO] [stdout] | [INFO] [stdout] 167 | use near_sdk::{serde_json::{json, self}, AccountId, serde::{Deserialize, de::IntoDeserializer}}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/proposal.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ExpandedSecretKey` [INFO] [stdout] --> src/proposal.rs:6:21 [INFO] [stdout] | [INFO] [stdout] 6 | use ed25519_dalek::{ExpandedSecretKey, SecretKey}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `near_contract_standards::fungible_token` [INFO] [stdout] --> src/proposal.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use near_contract_standards::fungible_token; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Base64VecU8` [INFO] [stdout] --> src/proposal.rs:10:28 [INFO] [stdout] | [INFO] [stdout] 10 | use near_sdk::json_types::{Base64VecU8, U128, U64}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Balance`, `ext_contract`, and `log` [INFO] [stdout] --> src/proposal.rs:11:16 [INFO] [stdout] | [INFO] [stdout] 11 | use near_sdk::{log, AccountId, Balance, Gas, PromiseOrValue, ext_contract, PromiseResult, PublicKey}; [INFO] [stdout] | ^^^ ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Sha512` [INFO] [stdout] --> src/proposal.rs:497:55 [INFO] [stdout] | [INFO] [stdout] 497 | use ed25519_dalek::{SecretKey, ExpandedSecretKey, Sha512}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Base64VecU8` and `Promise` [INFO] [stdout] --> src/proposal.rs:498:66 [INFO] [stdout] | [INFO] [stdout] 498 | use near_sdk::{bs58, env, PublicKey, json_types::{U64, U128, Base64VecU8}, serde_json::{json, self}, AccountId, Promise}; [INFO] [stdout] | ^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BorshSerialize` and `self` [INFO] [stdout] --> src/lib.rs:443:41 [INFO] [stdout] | [INFO] [stdout] 443 | use near_sdk::{base64, serde_json::{self, json}, borsh::{BorshDeserialize, BorshSerialize}, AccountId, env, json_types::{U64, U128}, ... [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Community` [INFO] [stdout] --> src/lib.rs:445:17 [INFO] [stdout] | [INFO] [stdout] 445 | use crate::{Community, OldCommunity, utils::{from_rpc_sig}, proposal::ActionCall, account::{Access, SignCondition, Condition, Account}}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around assigned value [INFO] [stdout] --> src/lib.rs:499:23 [INFO] [stdout] | [INFO] [stdout] 499 | let message = (json!(action).to_string() + ×tamp); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 499 - let message = (json!(action).to_string() + ×tamp); [INFO] [stdout] 499 + let message = json!(action).to_string() + ×tamp; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `str::FromStr` [INFO] [stdout] --> src/resolver.rs:165:66 [INFO] [stdout] | [INFO] [stdout] 165 | use std::{collections::HashMap, convert::{TryInto, TryFrom}, str::FromStr}; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `extra` [INFO] [stdout] --> src/post.rs:284:54 [INFO] [stdout] | [INFO] [stdout] 284 | fn get_content_hash(hierarchies: Vec, extra: Option) -> Option { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_extra` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/post.rs:287:17 [INFO] [stdout] | [INFO] [stdout] 287 | let mut hierarchy_str = hash_prefix + &hierarchy.account_id.to_string() + &String::from(&hierarchy.target_hash); [INFO] [stdout] | ----^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/drip.rs:57:13 [INFO] [stdout] | [INFO] [stdout] 57 | let mut this = Self { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_total_drip` [INFO] [stdout] --> src/drip.rs:96:21 [INFO] [stdout] | [INFO] [stdout] 96 | if let Some(new_total_drip) = total_drip.checked_add(drip) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `new_total_drip` [INFO] [stdout] --> src/drip.rs:244:21 [INFO] [stdout] | [INFO] [stdout] 244 | if let Some(new_total_drip) = total_drip.checked_add(balance) { [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `account_id` [INFO] [stdout] --> src/drip.rs:302:18 [INFO] [stdout] | [INFO] [stdout] 302 | for (account_id, royalty) in royalties { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/role.rs:153:13 [INFO] [stdout] | [INFO] [stdout] 153 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/role.rs:167:18 [INFO] [stdout] | [INFO] [stdout] 167 | Some(v) => panic!("role already exist"), [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/role.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:297:14 [INFO] [stdout] | [INFO] [stdout] 297 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:305:14 [INFO] [stdout] | [INFO] [stdout] 305 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:320:14 [INFO] [stdout] | [INFO] [stdout] 320 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:433:41 [INFO] [stdout] | [INFO] [stdout] 433 | Permission::SetRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:439:41 [INFO] [stdout] | [INFO] [stdout] 439 | Permission::DelRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:445:43 [INFO] [stdout] | [INFO] [stdout] 445 | Permission::AddMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:451:46 [INFO] [stdout] | [INFO] [stdout] 451 | Permission::RemoveMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/role.rs:470:29 [INFO] [stdout] | [INFO] [stdout] 470 | if let Some(mut access) = option.clone() { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/role.rs:481:29 [INFO] [stdout] | [INFO] [stdout] 481 | if let Some(mut access) = option.clone() { [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:550:33 [INFO] [stdout] | [INFO] [stdout] 550 | Permission::SetRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:559:33 [INFO] [stdout] | [INFO] [stdout] 559 | Permission::DelRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:568:35 [INFO] [stdout] | [INFO] [stdout] 568 | Permission::AddMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:577:38 [INFO] [stdout] | [INFO] [stdout] 577 | Permission::RemoveMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:586:31 [INFO] [stdout] | [INFO] [stdout] 586 | Permission::Other(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `access` [INFO] [stdout] --> src/role.rs:602:29 [INFO] [stdout] | [INFO] [stdout] 602 | if let Some(access) = &relationship.1 { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_access` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `access` [INFO] [stdout] --> src/role.rs:608:29 [INFO] [stdout] | [INFO] [stdout] 608 | if let Some(access) = &relationship.1 { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_access` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:621:33 [INFO] [stdout] | [INFO] [stdout] 621 | Permission::SetRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:624:33 [INFO] [stdout] | [INFO] [stdout] 624 | Permission::DelRole(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:627:35 [INFO] [stdout] | [INFO] [stdout] 627 | Permission::AddMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `hash` [INFO] [stdout] --> src/role.rs:630:38 [INFO] [stdout] | [INFO] [stdout] 630 | Permission::RemoveMember(hash) => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `expire_duration` [INFO] [stdout] --> src/account.rs:350:33 [INFO] [stdout] | [INFO] [stdout] 350 | if let Some(expire_duration) = access.expire_duration{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expire_duration` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/account.rs:418:13 [INFO] [stdout] | [INFO] [stdout] 418 | let mut pass = verify_secp256k1(message.as_bytes().to_vec(), sign.to_string(), public_key); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `owner_id` [INFO] [stdout] --> src/resolver.rs:130:30 [INFO] [stdout] | [INFO] [stdout] 130 | fn ft_on_burn(&mut self, owner_id: AccountId, contract_id: AccountId ,amount: U128, msg: String) -> PromiseOrValue { [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_owner_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sender_id` [INFO] [stdout] --> src/metadata.rs:7:13 [INFO] [stdout] | [INFO] [stdout] 7 | let sender_id = get_predecessor_id(); [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/proposal.rs:179:13 [INFO] [stdout] | [INFO] [stdout] 179 | let mut option = self.options.get_mut(vote as usize).unwrap(); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `contract_id` [INFO] [stdout] --> src/proposal.rs:287:35 [INFO] [stdout] | [INFO] [stdout] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contract_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/proposal.rs:287:48 [INFO] [stdout] | [INFO] [stdout] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `public_key` [INFO] [stdout] --> src/proposal.rs:515:13 [INFO] [stdout] | [INFO] [stdout] 515 | let public_key = PublicKey::try_from([vec![0], pk.as_bytes().to_vec()].concat()).unwrap(); [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `refund_extra_storage_deposit` is never used [INFO] [stdout] --> src/utils.rs:11:15 [INFO] [stdout] | [INFO] [stdout] 11 | pub(crate) fn refund_extra_storage_deposit(storage_used: StorageUsage, used_balance: Balance) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `getSeed` is never used [INFO] [stdout] --> src/utils.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub(crate) fn getSeed() -> String { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `EVENT` is never used [INFO] [stdout] --> src/account.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const EVENT: &str = "event"; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `getSeed` should have a snake case name [INFO] [stdout] --> src/utils.rs:45:15 [INFO] [stdout] | [INFO] [stdout] 45 | pub(crate) fn getSeed() -> String { [INFO] [stdout] | ^^^^^^^ help: convert the identifier to snake case: `get_seed` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `proposalInput` should have a snake case name [INFO] [stdout] --> src/proposal.rs:573:13 [INFO] [stdout] | [INFO] [stdout] 573 | let proposalInput = ProposalInput { [INFO] [stdout] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `proposal_input` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 6.88s [INFO] running `Command { std: "docker" "inspect" "e227e17730aa3ccf3dc9fb86814dfa3df831ba33d8e6371d1785a69cf89c2341", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e227e17730aa3ccf3dc9fb86814dfa3df831ba33d8e6371d1785a69cf89c2341", kill_on_drop: false }` [INFO] [stdout] e227e17730aa3ccf3dc9fb86814dfa3df831ba33d8e6371d1785a69cf89c2341 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:86ea7c7af713d31e8cfdb68a6d0db50b5cf7cbeecde3d112f9f257f747318d36" "/opt/rustwide/cargo-home/bin/cargo" "+1.84.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 84915fbb869ff321a496572aa7ba2b47a0123f50cf10726e5b061c3baf1759bf [INFO] running `Command { std: "docker" "start" "-a" "84915fbb869ff321a496572aa7ba2b47a0123f50cf10726e5b061c3baf1759bf", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `Value` and `to_string` [INFO] [stderr] --> src/lib.rs:13:40 [INFO] [stderr] | [INFO] [stderr] 13 | use near_sdk::serde_json::{json, self, to_string, Value}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BlockHeight` and `sys` [INFO] [stderr] --> src/lib.rs:14:77 [INFO] [stderr] | [INFO] [stderr] 14 | ...PanicOnDefault, Promise, BlockHeight, CryptoHash, assert_one_yocto, BorshStorageKey, env, PromiseOrValue, sys, PromiseResult}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `LazyOption`, `UnorderedSet`, and `Vector` [INFO] [stderr] --> src/lib.rs:15:54 [INFO] [stderr] | [INFO] [stderr] 15 | use near_sdk::collections::{LookupMap, UnorderedMap, Vector, LazyOption, UnorderedSet}; [INFO] [stderr] | ^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `ActionCall` and `FunctionCall` [INFO] [stderr] --> src/lib.rs:17:26 [INFO] [stderr] | [INFO] [stderr] 17 | use proposal::{Proposal, FunctionCall, ActionCall}; [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `refund_extra_storage_deposit` [INFO] [stderr] --> src/lib.rs:20:13 [INFO] [stderr] | [INFO] [stderr] 20 | use utils::{refund_extra_storage_deposit, set, remove, set_storage_usage, get_account, set_account, get_account_id, init_callback}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::proposal::ProposalInput` [INFO] [stderr] --> src/lib.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | use crate::proposal::ProposalInput; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::role::Role` [INFO] [stderr] --> src/lib.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use crate::role::Role; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `from_rpc_sig` and `get_access_limit` [INFO] [stderr] --> src/lib.rs:24:29 [INFO] [stderr] | [INFO] [stderr] 24 | use crate::utils::{get_arg, get_access_limit, verify, from_rpc_sig, get_predecessor_id}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `log` [INFO] [stderr] --> src/utils.rs:6:48 [INFO] [stderr] | [INFO] [stderr] 6 | use near_sdk::{Balance, StorageUsage, Promise, log}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `str::FromStr` [INFO] [stderr] --> src/post.rs:1:29 [INFO] [stderr] | [INFO] [stderr] 1 | use std::{convert::TryInto, str::FromStr}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `check` [INFO] [stderr] --> src/post.rs:5:44 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::{*, utils::{get, check_and_set, check, init_callback}, drip::get_map_value}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ops::Deref` [INFO] [stderr] --> src/drip.rs:1:33 [INFO] [stderr] | [INFO] [stderr] 1 | use std::{collections::HashMap, ops::Deref}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `collections::HashMap`, `hash::Hash`, and `str::FromStr` [INFO] [stderr] --> src/drip.rs:280:15 [INFO] [stderr] | [INFO] [stderr] 280 | use std::{collections::HashMap, str::FromStr, hash::Hash}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AccountId`, `env`, `json_types::U128`, `serde_json::json`, and `serde_json` [INFO] [stderr] --> src/drip.rs:282:20 [INFO] [stderr] | [INFO] [stderr] 282 | use near_sdk::{json_types::U128, AccountId, serde_json::json, serde_json, env}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^ ^^^^^^^^^^^^^^^^ ^^^^^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Account` and `self` [INFO] [stderr] --> src/drip.rs:284:26 [INFO] [stderr] | [INFO] [stderr] 284 | use crate::account::{self, Account}; [INFO] [stderr] | ^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Drip`, `U256`, and `get_map_value` [INFO] [stderr] --> src/drip.rs:286:17 [INFO] [stderr] | [INFO] [stderr] 286 | use super::{U256, get_map_value, Drip}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `near_sdk::Balance` [INFO] [stderr] --> src/view.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use near_sdk::Balance; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::account::AssetKey` [INFO] [stderr] --> src/role.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::account::AssetKey; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::marker::PhantomData` [INFO] [stderr] --> src/role.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | use std::marker::PhantomData; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `U128` and `U64` [INFO] [stderr] --> src/role.rs:7:28 [INFO] [stderr] | [INFO] [stderr] 7 | use near_sdk::json_types::{U128, U64}; [INFO] [stderr] | ^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Balance` [INFO] [stderr] --> src/role.rs:9:32 [INFO] [stderr] | [INFO] [stderr] 9 | use near_sdk::{env, AccountId, Balance}; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::future::Pending` [INFO] [stderr] --> src/account.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::future::Pending; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `get` [INFO] [stderr] --> src/account.rs:3:60 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::{*, utils::{get_access_limit, verify_secp256k1, get}}; [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/account.rs:397:9 [INFO] [stderr] | [INFO] [stderr] 397 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `json_types::U64`, `json`, and `self` [INFO] [stderr] --> src/account.rs:399:20 [INFO] [stderr] | [INFO] [stderr] 399 | use near_sdk::{json_types::U64, serde_json::{json, self}}; [INFO] [stderr] | ^^^^^^^^^^^^^^^ ^^^^ ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `verify_secp256k1` and `verify` [INFO] [stderr] --> src/account.rs:401:24 [INFO] [stderr] | [INFO] [stderr] 401 | use crate::utils::{verify_secp256k1, verify}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `get_parent_contract_id` [INFO] [stderr] --> src/resolver.rs:8:20 [INFO] [stderr] | [INFO] [stderr] 8 | use crate::utils::{get_parent_contract_id, get_content_hash}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::collections::HashMap` [INFO] [stderr] --> src/proposal.rs:1:5 [INFO] [stderr] | [INFO] [stderr] 1 | use std::collections::HashMap; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `ExpandedSecretKey` [INFO] [stderr] --> src/proposal.rs:6:21 [INFO] [stderr] | [INFO] [stderr] 6 | use ed25519_dalek::{ExpandedSecretKey, SecretKey}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `near_contract_standards::fungible_token` [INFO] [stderr] --> src/proposal.rs:7:5 [INFO] [stderr] | [INFO] [stderr] 7 | use near_contract_standards::fungible_token; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Base64VecU8` [INFO] [stderr] --> src/proposal.rs:10:28 [INFO] [stderr] | [INFO] [stderr] 10 | use near_sdk::json_types::{Base64VecU8, U128, U64}; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Balance`, `ext_contract`, and `log` [INFO] [stderr] --> src/proposal.rs:11:16 [INFO] [stderr] | [INFO] [stderr] 11 | use near_sdk::{log, AccountId, Balance, Gas, PromiseOrValue, ext_contract, PromiseResult, PublicKey}; [INFO] [stderr] | ^^^ ^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/drip.rs:57:13 [INFO] [stderr] | [INFO] [stderr] 57 | let mut this = Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_total_drip` [INFO] [stderr] --> src/drip.rs:96:21 [INFO] [stderr] | [INFO] [stderr] 96 | if let Some(new_total_drip) = total_drip.checked_add(drip) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_total_drip` [INFO] [stderr] --> src/drip.rs:244:21 [INFO] [stderr] | [INFO] [stderr] 244 | if let Some(new_total_drip) = total_drip.checked_add(balance) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sender_id` [INFO] [stderr] --> src/role.rs:153:13 [INFO] [stderr] | [INFO] [stderr] 153 | let sender_id = get_predecessor_id(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/role.rs:167:18 [INFO] [stderr] | [INFO] [stderr] 167 | Some(v) => panic!("role already exist"), [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sender_id` [INFO] [stderr] --> src/role.rs:225:13 [INFO] [stderr] | [INFO] [stderr] 225 | let sender_id = get_predecessor_id(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:297:14 [INFO] [stderr] | [INFO] [stderr] 297 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:305:14 [INFO] [stderr] | [INFO] [stderr] 305 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:320:14 [INFO] [stderr] | [INFO] [stderr] 320 | for (hash, role) in self.role_management.roles.iter() { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:433:41 [INFO] [stderr] | [INFO] [stderr] 433 | Permission::SetRole(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:439:41 [INFO] [stderr] | [INFO] [stderr] 439 | Permission::DelRole(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:445:43 [INFO] [stderr] | [INFO] [stderr] 445 | Permission::AddMember(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:451:46 [INFO] [stderr] | [INFO] [stderr] 451 | Permission::RemoveMember(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/role.rs:470:29 [INFO] [stderr] | [INFO] [stderr] 470 | if let Some(mut access) = option.clone() { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/role.rs:481:29 [INFO] [stderr] | [INFO] [stderr] 481 | if let Some(mut access) = option.clone() { [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `expire_duration` [INFO] [stderr] --> src/account.rs:350:33 [INFO] [stderr] | [INFO] [stderr] 350 | if let Some(expire_duration) = access.expire_duration{ [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_expire_duration` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `owner_id` [INFO] [stderr] --> src/resolver.rs:130:30 [INFO] [stderr] | [INFO] [stderr] 130 | fn ft_on_burn(&mut self, owner_id: AccountId, contract_id: AccountId ,amount: U128, msg: String) -> PromiseOrValue { [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_owner_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sender_id` [INFO] [stderr] --> src/metadata.rs:7:13 [INFO] [stderr] | [INFO] [stderr] 7 | let sender_id = get_predecessor_id(); [INFO] [stderr] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sender_id` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/proposal.rs:179:13 [INFO] [stderr] | [INFO] [stderr] 179 | let mut option = self.options.get_mut(vote as usize).unwrap(); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `contract_id` [INFO] [stderr] --> src/proposal.rs:287:35 [INFO] [stderr] | [INFO] [stderr] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_contract_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `token_id` [INFO] [stderr] --> src/proposal.rs:287:48 [INFO] [stderr] | [INFO] [stderr] 287 | AssetKey::NFT(contract_id, token_id) => PromiseOrValue::Value(()), [INFO] [stderr] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stderr] [INFO] [stderr] warning: function `refund_extra_storage_deposit` is never used [INFO] [stderr] --> src/utils.rs:11:15 [INFO] [stderr] | [INFO] [stderr] 11 | pub(crate) fn refund_extra_storage_deposit(storage_used: StorageUsage, used_balance: Balance) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `getSeed` is never used [INFO] [stderr] --> src/utils.rs:45:15 [INFO] [stderr] | [INFO] [stderr] 45 | pub(crate) fn getSeed() -> String { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: constant `EVENT` is never used [INFO] [stderr] --> src/account.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | const EVENT: &str = "event"; [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `getSeed` should have a snake case name [INFO] [stderr] --> src/utils.rs:45:15 [INFO] [stderr] | [INFO] [stderr] 45 | pub(crate) fn getSeed() -> String { [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `get_seed` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(non_snake_case)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `hash::Hash` [INFO] [stderr] --> src/drip.rs:280:51 [INFO] [stderr] | [INFO] [stderr] 280 | use std::{collections::HashMap, str::FromStr, hash::Hash}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `json_types::U128` [INFO] [stderr] --> src/drip.rs:282:20 [INFO] [stderr] | [INFO] [stderr] 282 | use near_sdk::{json_types::U128, AccountId, serde_json::json, serde_json, env}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self` [INFO] [stderr] --> src/drip.rs:284:26 [INFO] [stderr] | [INFO] [stderr] 284 | use crate::account::{self, Account}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `convert::TryInto` [INFO] [stderr] --> src/role.rs:540:15 [INFO] [stderr] | [INFO] [stderr] 540 | use std::{convert::TryInto, collections::{HashMap, HashSet}}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `near_sdk::AccountId` [INFO] [stderr] --> src/role.rs:542:9 [INFO] [stderr] | [INFO] [stderr] 542 | use near_sdk::AccountId; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `RoleManagement` [INFO] [stderr] --> src/role.rs:546:17 [INFO] [stderr] | [INFO] [stderr] 546 | use super::{RoleManagement, Permission}; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `verify` [INFO] [stderr] --> src/account.rs:401:42 [INFO] [stderr] | [INFO] [stderr] 401 | use crate::utils::{verify_secp256k1, verify}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `TryFrom` and `TryInto` [INFO] [stderr] --> src/resolver.rs:165:47 [INFO] [stderr] | [INFO] [stderr] 165 | use std::{collections::HashMap, convert::{TryInto, TryFrom}, str::FromStr}; [INFO] [stderr] | ^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Deserialize`, `de::IntoDeserializer`, and `self` [INFO] [stderr] --> src/resolver.rs:167:39 [INFO] [stderr] | [INFO] [stderr] 167 | use near_sdk::{serde_json::{json, self}, AccountId, serde::{Deserialize, de::IntoDeserializer}}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Sha512` [INFO] [stderr] --> src/proposal.rs:497:55 [INFO] [stderr] | [INFO] [stderr] 497 | use ed25519_dalek::{SecretKey, ExpandedSecretKey, Sha512}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Base64VecU8` and `Promise` [INFO] [stderr] --> src/proposal.rs:498:66 [INFO] [stderr] | [INFO] [stderr] 498 | use near_sdk::{bs58, env, PublicKey, json_types::{U64, U128, Base64VecU8}, serde_json::{json, self}, AccountId, Promise}; [INFO] [stderr] | ^^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BorshSerialize` and `self` [INFO] [stderr] --> src/lib.rs:443:41 [INFO] [stderr] | [INFO] [stderr] 443 | use near_sdk::{base64, serde_json::{self, json}, borsh::{BorshDeserialize, BorshSerialize}, AccountId, env, json_types::{U64, U128}, ... [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `Community` [INFO] [stderr] --> src/lib.rs:445:17 [INFO] [stderr] | [INFO] [stderr] 445 | use crate::{Community, OldCommunity, utils::{from_rpc_sig}, proposal::ActionCall, account::{Access, SignCondition, Condition, Account}}; [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around assigned value [INFO] [stderr] --> src/lib.rs:499:23 [INFO] [stderr] | [INFO] [stderr] 499 | let message = (json!(action).to_string() + ×tamp); [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 499 - let message = (json!(action).to_string() + ×tamp); [INFO] [stderr] 499 + let message = json!(action).to_string() + ×tamp; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `str::FromStr` [INFO] [stderr] --> src/resolver.rs:165:66 [INFO] [stderr] | [INFO] [stderr] 165 | use std::{collections::HashMap, convert::{TryInto, TryFrom}, str::FromStr}; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `extra` [INFO] [stderr] --> src/post.rs:284:54 [INFO] [stderr] | [INFO] [stderr] 284 | fn get_content_hash(hierarchies: Vec, extra: Option) -> Option { [INFO] [stderr] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_extra` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/post.rs:287:17 [INFO] [stderr] | [INFO] [stderr] 287 | let mut hierarchy_str = hash_prefix + &hierarchy.account_id.to_string() + &String::from(&hierarchy.target_hash); [INFO] [stderr] | ----^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/drip.rs:57:13 [INFO] [stderr] | [INFO] [stderr] 57 | let mut this = Self { [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `new_total_drip` [INFO] [stderr] --> src/drip.rs:96:21 [INFO] [stderr] | [INFO] [stderr] 96 | if let Some(new_total_drip) = total_drip.checked_add(drip) { [INFO] [stderr] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_total_drip` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `account_id` [INFO] [stderr] --> src/drip.rs:302:18 [INFO] [stderr] | [INFO] [stderr] 302 | for (account_id, royalty) in royalties { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_account_id` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:550:33 [INFO] [stderr] | [INFO] [stderr] 550 | Permission::SetRole(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:559:33 [INFO] [stderr] | [INFO] [stderr] 559 | Permission::DelRole(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:568:35 [INFO] [stderr] | [INFO] [stderr] 568 | Permission::AddMember(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:577:38 [INFO] [stderr] | [INFO] [stderr] 577 | Permission::RemoveMember(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:586:31 [INFO] [stderr] | [INFO] [stderr] 586 | Permission::Other(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `access` [INFO] [stderr] --> src/role.rs:602:29 [INFO] [stderr] | [INFO] [stderr] 602 | if let Some(access) = &relationship.1 { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_access` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `access` [INFO] [stderr] --> src/role.rs:608:29 [INFO] [stderr] | [INFO] [stderr] 608 | if let Some(access) = &relationship.1 { [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_access` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:621:33 [INFO] [stderr] | [INFO] [stderr] 621 | Permission::SetRole(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:624:33 [INFO] [stderr] | [INFO] [stderr] 624 | Permission::DelRole(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:627:35 [INFO] [stderr] | [INFO] [stderr] 627 | Permission::AddMember(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `hash` [INFO] [stderr] --> src/role.rs:630:38 [INFO] [stderr] | [INFO] [stderr] 630 | Permission::RemoveMember(hash) => { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_hash` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/account.rs:418:13 [INFO] [stderr] | [INFO] [stderr] 418 | let mut pass = verify_secp256k1(message.as_bytes().to_vec(), sign.to_string(), public_key); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `public_key` [INFO] [stderr] --> src/proposal.rs:515:13 [INFO] [stderr] | [INFO] [stderr] 515 | let public_key = PublicKey::try_from([vec![0], pk.as_bytes().to_vec()].concat()).unwrap(); [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_public_key` [INFO] [stderr] [INFO] [stderr] warning: variable `proposalInput` should have a snake case name [INFO] [stderr] --> src/proposal.rs:573:13 [INFO] [stderr] | [INFO] [stderr] 573 | let proposalInput = ProposalInput { [INFO] [stderr] | ^^^^^^^^^^^^^ help: convert the identifier to snake case: `proposal_input` [INFO] [stderr] [INFO] [stderr] warning: `community` (lib) generated 57 warnings (run `cargo fix --lib -p community` to apply 36 suggestions) [INFO] [stderr] warning: `community` (lib test) generated 84 warnings (50 duplicates) (run `cargo fix --lib -p community --tests` to apply 17 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/community-110c1760ca1b808b) [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test post::tests::test_like ... ok [INFO] [stdout] test post::tests::test_share_view ... ok [INFO] [stdout] test proposal::tests::test_execution ... ok [INFO] [stdout] test drip::test::test ... ok [INFO] [stdout] test proposal::tests::test_proposal ... ok [INFO] [stdout] test resolver::test::test ... ok [INFO] [stdout] test proposal::tests::test_vote ... ok [INFO] [stdout] test role::tests::test ... ok [INFO] [stdout] test proposal::tests::test ... ok [INFO] [stdout] test tests::test ... ok [INFO] [stdout] test proposal::tests::test_pk ... ok [INFO] [stdout] test account::test::test ... ok [INFO] [stdout] test tests::test_address ... ok [INFO] [stdout] test resolver::test::test_args ... ok [INFO] [stdout] test utils::tests::test ... ok [INFO] [stdout] test post::tests::test ... ok [INFO] [stdout] test tests::test_decode ... ok [INFO] [stdout] test view::test::test ... ok [INFO] [stdout] test account::test::test_sign ... ok [INFO] [stdout] test tests::test_join ... ok [INFO] [stdout] test tests::test_ecrecover ... ok [INFO] [stdout] test drip::test::decay ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- drip::test::decay stdout ---- [INFO] [stdout] 0thread 'drip::test::decay' panicked at src/utils.rs:185:45: [INFO] [stdout] called `Option::unwrap()` on a `None` value [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x59d3a57c0f7a - std::backtrace_rs::backtrace::libunwind::trace::hfe0e1def394da018 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5 [INFO] [stdout] 1: 0x59d3a57c0f7a - std::backtrace_rs::backtrace::trace_unsynchronized::h96fbb6d117554616 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x59d3a57c0f7a - std::sys::backtrace::_print_fmt::he1169c6f8956325b [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x59d3a57c0f7a - ::fmt::ha4a311b32f6b4ad8 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x59d3a57e7313 - core::fmt::rt::Argument::fmt::h8ccd2627d2418ed3 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/fmt/rt.rs:177:76 [INFO] [stdout] 5: 0x59d3a57e7313 - core::fmt::write::h1866771663f62b81 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/fmt/mod.rs:1189:21 [INFO] [stdout] 6: 0x59d3a57be113 - std::io::Write::write_fmt::h2df399c9fb8c6039 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/io/mod.rs:1884:15 [INFO] [stdout] 7: 0x59d3a57c0dc2 - std::sys::backtrace::BacktraceLock::print::hddd3a9918ce29aa7 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 8: 0x59d3a57c23fd - std::panicking::default_hook::{{closure}}::h791f75256b902d7d [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:268:22 [INFO] [stdout] 9: 0x59d3a57c2207 - std::panicking::default_hook::h82cc572fcb0d8cd7 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:292:9 [INFO] [stdout] 10: 0x59d3a56af1b7 - as core::ops::function::Fn>::call::h47f4385e5c05a6bc [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/alloc/src/boxed.rs:1986:9 [INFO] [stdout] 11: 0x59d3a56af1b7 - test::test_main::{{closure}}::h592b6187ee9bbe51 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/test/src/lib.rs:134:21 [INFO] [stdout] 12: 0x59d3a57c2aa8 - as core::ops::function::Fn>::call::h80408f032954f187 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/alloc/src/boxed.rs:1986:9 [INFO] [stdout] 13: 0x59d3a57c2aa8 - std::panicking::rust_panic_with_hook::he21644cc2707f2c4 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:809:13 [INFO] [stdout] 14: 0x59d3a57c2836 - std::panicking::begin_panic_handler::{{closure}}::h42f7c414fed3cad9 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:667:13 [INFO] [stdout] 15: 0x59d3a57c1459 - std::sys::backtrace::__rust_end_short_backtrace::ha26cf5766b4e8c65 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/sys/backtrace.rs:170:18 [INFO] [stdout] 16: 0x59d3a57c24fc - rust_begin_unwind [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:665:5 [INFO] [stdout] 17: 0x59d3a5603b20 - core::panicking::panic_fmt::h74866b78e934b1c0 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/panicking.rs:76:14 [INFO] [stdout] 18: 0x59d3a5603bac - core::panicking::panic::h95d8269cf8bd4f7a [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/panicking.rs:148:5 [INFO] [stdout] 19: 0x59d3a5603a99 - core::option::unwrap_failed::hca433a9693b91bd2 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/option.rs:2009:5 [INFO] [stdout] 20: 0x59d3a564ff20 - core::option::Option::unwrap::ha533e1b299112d56 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/option.rs:972:21 [INFO] [stdout] 21: 0x59d3a564ff20 - community::utils::get_access_limit::hd5c085067598468c [INFO] [stdout] at /opt/rustwide/workdir/src/utils.rs:185:27 [INFO] [stdout] 22: 0x59d3a564fcd4 - community::utils::get_account::h7d5ea9320bae47af [INFO] [stdout] at /opt/rustwide/workdir/src/utils.rs:156:40 [INFO] [stdout] 23: 0x59d3a5623a2e - community::drip::Drip::set_content_drip::h491f83ca9f87606e [INFO] [stdout] at /opt/rustwide/workdir/src/drip.rs:141:27 [INFO] [stdout] 24: 0x59d3a566c911 - community::drip::test::decay::h8d57e5da701b6b57 [INFO] [stdout] at /opt/rustwide/workdir/src/drip.rs:324:9 [INFO] [stdout] 25: 0x59d3a566c4c7 - community::drip::test::decay::{{closure}}::h0c3caba22a378613 [INFO] [stdout] at /opt/rustwide/workdir/src/drip.rs:316:19 [INFO] [stdout] 26: 0x59d3a5662126 - core::ops::function::FnOnce::call_once::h34e5857c1f8b852a [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 27: 0x59d3a56b3d6b - core::ops::function::FnOnce::call_once::h2f54be8ccda9ff77 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 28: 0x59d3a56b3d6b - test::__rust_begin_short_backtrace::h505f4667df5bf10c [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/test/src/lib.rs:632:18 [INFO] [stdout] 29: 0x59d3a56b36c8 - test::run_test_in_process::{{closure}}::h5ed3028e6069c117 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/test/src/lib.rs:655:60 [INFO] [stdout] 30: 0x59d3a56b36c8 - as core::ops::function::FnOnce<()>>::call_once::hbf705be6aea7c287 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 31: 0x59d3a56b36c8 - std::panicking::try::do_call::h555223a41631f02b [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:557:40 [INFO] [stdout] 32: 0x59d3a56b36c8 - std::panicking::try::he81e496d432108c4 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:520:19 [INFO] [stdout] 33: 0x59d3a56b36c8 - std::panic::catch_unwind::hb2ff356e76867b52 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panic.rs:358:14 [INFO] [stdout] 34: 0x59d3a56b36c8 - test::run_test_in_process::h665bcd2e01d69f5b [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/test/src/lib.rs:655:27 [INFO] [stdout] 35: 0x59d3a56b36c8 - test::run_test::{{closure}}::ha58fbc9c79c6786d [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/test/src/lib.rs:576:43 [INFO] [stdout] 36: 0x59d3a567716a - test::run_test::{{closure}}::h958602d5fcb1d647 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/test/src/lib.rs:606:41 [INFO] [stdout] 37: 0x59d3a567716a - std::sys::backtrace::__rust_begin_short_backtrace::h7ca2fb16f64faa0f [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/sys/backtrace.rs:154:18 [INFO] [stdout] 38: 0x59d3a567aa24 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hebe77fbe87ddae61 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/thread/mod.rs:561:17 [INFO] [stdout] 39: 0x59d3a567aa24 - as core::ops::function::FnOnce<()>>::call_once::h5e26d6a69f85d1d6 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 40: 0x59d3a567aa24 - std::panicking::try::do_call::h9787fac579f00884 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:557:40 [INFO] [stdout] 41: 0x59d3a567aa24 - std::panicking::try::h788012b555fbd7c5 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panicking.rs:520:19 [INFO] [stdout] 42: 0x59d3a567aa24 - std::panic::catch_unwind::hd194f26f99a98fb5 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/panic.rs:358:14 [INFO] [stdout] 43: 0x59d3a567aa24 - std::thread::Builder::spawn_unchecked_::{{closure}}::h31c0dcba34ed449c [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/thread/mod.rs:559:30 [INFO] [stdout] 44: 0x59d3a567aa24 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h60302d9c688101a6 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 45: 0x59d3a57c69eb - as core::ops::function::FnOnce>::call_once::h9578f6ea1d4e1c4b [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/alloc/src/boxed.rs:1972:9 [INFO] [stdout] 46: 0x59d3a57c69eb - as core::ops::function::FnOnce>::call_once::hf4a2f438d8019348 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/alloc/src/boxed.rs:1972:9 [INFO] [stdout] 47: 0x59d3a57c69eb - std::sys::pal::unix::thread::Thread::new::thread_start::h14f1eb868ff90fc9 [INFO] [stdout] at /rustc/9fc6b43126469e3858e2fe86cafb4f0fd5068869/library/std/src/sys/pal/unix/thread.rs:105:17 [INFO] [stdout] 48: 0x74b801f97ac3 - [INFO] [stdout] 49: 0x74b802028a04 - clone [INFO] [stdout] 50: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] drip::test::decay [INFO] [stdout] [INFO] [stdout] test result: FAILED. 21 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "84915fbb869ff321a496572aa7ba2b47a0123f50cf10726e5b061c3baf1759bf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "84915fbb869ff321a496572aa7ba2b47a0123f50cf10726e5b061c3baf1759bf", kill_on_drop: false }` [INFO] [stdout] 84915fbb869ff321a496572aa7ba2b47a0123f50cf10726e5b061c3baf1759bf