[INFO] cloning repository https://github.com/WenRuji/wenruji [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/WenRuji/wenruji" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWenRuji%2Fwenruji", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWenRuji%2Fwenruji'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 76856a7f702127ebc9211c69b0178e7086f3c845 [INFO] linting WenRuji/wenruji against nightly for clippy-nonminimal_bool-denied [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FWenRuji%2Fwenruji" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-4-tc1/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/WenRuji/wenruji [INFO] finished tweaking git repo https://github.com/WenRuji/wenruji [INFO] tweaked toml for git repo https://github.com/WenRuji/wenruji written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/WenRuji/wenruji on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/WenRuji/wenruji 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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: /workspace/builds/worker-4-tc1/source/Cargo.toml: unused manifest key: workspace.authors [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded kujira-ghost v1.3.0 [INFO] [stderr] Downloaded cw-utils v2.0.0 [INFO] [stderr] Downloaded kujira v1.3.0 [INFO] [stderr] Downloaded dyn-clone v1.0.17 [INFO] [stderr] Downloaded cw20 v2.0.0 [INFO] [stderr] Downloaded base16ct v0.2.0 [INFO] [stderr] Downloaded kujira-stable v1.3.0 [INFO] [stderr] Downloaded kujira-std v1.3.0 [INFO] [stderr] Downloaded cosmwasm-schema-derive v2.1.4 [INFO] [stderr] Downloaded kujira-bow v1.3.0 [INFO] [stderr] Downloaded prost v0.13.3 [INFO] [stderr] Downloaded thiserror-impl v2.0.3 [INFO] [stderr] Downloaded anyhow v1.0.93 [INFO] [stderr] Downloaded bytes v1.8.0 [INFO] [stderr] Downloaded k256 v0.13.4 [INFO] [stderr] Downloaded cw-storage-plus v2.0.0 [INFO] [stderr] Downloaded derive_more-impl v1.0.0 [INFO] [stderr] Downloaded cw-multi-test v2.2.0 [INFO] [stderr] Downloaded serde_json v1.0.132 [INFO] [stderr] Downloaded crypto-bigint v0.5.5 [INFO] [stderr] Downloaded der v0.7.9 [INFO] [stderr] Downloaded elliptic-curve v0.13.8 [INFO] [stderr] Downloaded p256 v0.13.2 [INFO] [stderr] Downloaded const-oid v0.9.6 [INFO] [stderr] Downloaded cosmwasm-std v2.1.4 [INFO] [stderr] Downloaded syn v2.0.87 [INFO] [stderr] Downloaded serde v1.0.215 [INFO] [stderr] Downloaded curve25519-dalek v4.1.3 [INFO] [stderr] Downloaded bech32 v0.11.0 [INFO] [stderr] Downloaded allocator-api2 v0.2.20 [INFO] [stderr] Downloaded derive_more v1.0.0 [INFO] [stderr] Downloaded schemars v0.8.21 [INFO] [stderr] Downloaded proc-macro2 v1.0.89 [INFO] [stderr] Downloaded ed25519-zebra v4.0.3 [INFO] [stderr] Downloaded ark-bls12-381 v0.4.0 [INFO] [stderr] Downloaded fiat-crypto v0.2.9 [INFO] [stderr] Downloaded serde-json-wasm v1.0.1 [INFO] [stderr] Downloaded serde_derive v1.0.215 [INFO] [stderr] Downloaded thiserror v2.0.3 [INFO] [stderr] Downloaded ff v0.13.0 [INFO] [stderr] Downloaded sec1 v0.7.3 [INFO] [stderr] Downloaded primeorder v0.13.6 [INFO] [stderr] Downloaded kujira-orca v1.3.0 [INFO] [stderr] Downloaded kujira-fin v1.3.0 [INFO] [stderr] Downloaded prost-derive v0.13.3 [INFO] [stderr] Downloaded cw2 v2.0.0 [INFO] [stderr] Downloaded cosmwasm-core v2.1.4 [INFO] [stderr] Downloaded ed25519 v2.2.3 [INFO] [stderr] Downloaded ecdsa v0.16.9 [INFO] [stderr] Downloaded group v0.13.0 [INFO] [stderr] Downloaded cosmwasm-derive v2.1.4 [INFO] [stderr] Downloaded cpufeatures v0.2.15 [INFO] [stderr] Downloaded schemars_derive v0.8.21 [INFO] [stderr] Downloaded cosmwasm-schema v2.1.4 [INFO] [stderr] Downloaded curve25519-dalek-derive v0.1.1 [INFO] [stderr] Downloaded rfc6979 v0.4.0 [INFO] [stderr] Downloaded signature v2.2.0 [INFO] [stderr] Downloaded serde_derive_internals v0.29.1 [INFO] [stderr] Downloaded cosmwasm-crypto v2.1.4 [INFO] [stderr] Downloaded libc v0.2.162 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b142f7e5d45be9a9499eedaaafab3dd663803b6e630db38a9470dc5edfa219bc [INFO] running `Command { std: "docker" "start" "-a" "b142f7e5d45be9a9499eedaaafab3dd663803b6e630db38a9470dc5edfa219bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b142f7e5d45be9a9499eedaaafab3dd663803b6e630db38a9470dc5edfa219bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b142f7e5d45be9a9499eedaaafab3dd663803b6e630db38a9470dc5edfa219bc", kill_on_drop: false }` [INFO] [stdout] b142f7e5d45be9a9499eedaaafab3dd663803b6e630db38a9470dc5edfa219bc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 61a4b7be926d79eeca48b5c7680d7735aaee0392c9a719f4305c97b3e71ec435 [INFO] running `Command { std: "docker" "start" "-a" "61a4b7be926d79eeca48b5c7680d7735aaee0392c9a719f4305c97b3e71ec435", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/Cargo.toml: unused manifest key: workspace.authors [INFO] [stderr] Compiling proc-macro2 v1.0.89 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling libc v0.2.162 [INFO] [stderr] Checking subtle v2.6.1 [INFO] [stderr] Checking const-oid v0.9.6 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking once_cell v1.20.2 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Checking base16ct v0.2.0 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Checking cpufeatures v0.2.15 [INFO] [stderr] Compiling serde v1.0.215 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Compiling serde_json v1.0.132 [INFO] [stderr] Checking itoa v1.0.11 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking ryu v1.0.18 [INFO] [stderr] Checking allocator-api2 v0.2.20 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Compiling schemars v0.8.21 [INFO] [stderr] Checking hex v0.4.3 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Checking dyn-clone v1.0.17 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Checking cosmwasm-core v2.1.4 [INFO] [stderr] Checking bech32 v0.11.0 [INFO] [stderr] Checking bnum v0.11.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Compiling anyhow v1.0.93 [INFO] [stderr] Compiling thiserror v2.0.3 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Checking bytes v1.8.0 [INFO] [stderr] Compiling syn v2.0.87 [INFO] [stderr] Compiling curve25519-dalek v4.1.3 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking ff v0.13.0 [INFO] [stderr] Checking group v0.13.0 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Compiling serde_derive_internals v0.29.1 [INFO] [stderr] Compiling ark-serialize-derive v0.4.2 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Compiling ark-ff-macros v0.4.2 [INFO] [stderr] Compiling ark-ff-asm v0.4.2 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling serde_derive v1.0.215 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling curve25519-dalek-derive v0.1.1 [INFO] [stderr] Compiling schemars_derive v0.8.21 [INFO] [stderr] Compiling derive_more-impl v1.0.0 [INFO] [stderr] Compiling cosmwasm-derive v2.1.4 [INFO] [stderr] Compiling cosmwasm-schema-derive v2.1.4 [INFO] [stderr] Compiling prost-derive v0.13.3 [INFO] [stderr] Compiling thiserror-impl v2.0.3 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking der v0.7.9 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking crypto-bigint v0.5.5 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking prost v0.13.3 [INFO] [stderr] Checking sec1 v0.7.3 [INFO] [stderr] Checking derive_more v1.0.0 [INFO] [stderr] Checking signature v2.2.0 [INFO] [stderr] Checking hmac v0.12.1 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking hashbrown v0.13.2 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking ed25519 v2.2.3 [INFO] [stderr] Checking rfc6979 v0.4.0 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking ark-std v0.4.0 [INFO] [stderr] Checking ark-serialize v0.4.2 [INFO] [stderr] Checking ark-ff v0.4.2 [INFO] [stderr] Checking elliptic-curve v0.13.8 [INFO] [stderr] Checking ecdsa v0.16.9 [INFO] [stderr] Checking primeorder v0.13.6 [INFO] [stderr] Checking k256 v0.13.4 [INFO] [stderr] Checking p256 v0.13.2 [INFO] [stderr] Checking ed25519-zebra v4.0.3 [INFO] [stderr] Checking serde-json-wasm v1.0.1 [INFO] [stderr] Checking ark-poly v0.4.2 [INFO] [stderr] Checking cosmwasm-schema v2.1.4 [INFO] [stderr] Checking ark-ec v0.4.2 [INFO] [stderr] Checking ark-bls12-381 v0.4.0 [INFO] [stderr] Checking cosmwasm-crypto v2.1.4 [INFO] [stderr] Checking cosmwasm-std v2.1.4 [INFO] [stderr] Checking cw-utils v2.0.0 [INFO] [stderr] Checking cw-storage-plus v2.0.0 [INFO] [stderr] Checking cw20 v2.0.0 [INFO] [stderr] Checking cw2 v2.0.0 [INFO] [stderr] Checking wenruji-rs v0.0.1 (/opt/rustwide/workdir/packages/wenruji-rs) [INFO] [stderr] Checking cw-multi-test v2.2.0 [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:52:75 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn exit(&mut self, now: &Timestamp, account: &mut DecayGameAccount) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:53:33 [INFO] [stdout] | [INFO] [stdout] 53 | let factor = decay_factor(&self, now); [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | return Err(DecayGameError::NoRewards {}); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 83 - return Err(DecayGameError::NoRewards {}); [INFO] [stdout] 83 + Err(DecayGameError::NoRewards {}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | return Ok(self.rewards); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 88 - return Ok(self.rewards); [INFO] [stdout] 88 + Ok(self.rewards) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded unit return type [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:52:75 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn exit(&mut self, now: &Timestamp, account: &mut DecayGameAccount) -> () { [INFO] [stdout] | ^^^^^^ help: remove the `-> ()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit [INFO] [stdout] = note: `#[warn(clippy::unused_unit)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:53:33 [INFO] [stdout] | [INFO] [stdout] 53 | let factor = decay_factor(&self, now); [INFO] [stdout] | ^^^^^ help: change this to: `self` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 83 | return Err(DecayGameError::NoRewards {}); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 83 - return Err(DecayGameError::NoRewards {}); [INFO] [stdout] 83 + Err(DecayGameError::NoRewards {}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking referral v0.1.0-rc1 (/opt/rustwide/workdir/contracts/referral) [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> packages/wenruji-rs/src/decay_game.rs:88:13 [INFO] [stdout] | [INFO] [stdout] 88 | return Ok(self.rewards); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 88 - return Ok(self.rewards); [INFO] [stdout] 88 + Ok(self.rewards) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `library` [INFO] [stdout] --> contracts/referral/src/contract.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | #[cfg_attr(not(feature = "library"), entry_point)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `library` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `library` [INFO] [stdout] --> contracts/referral/src/contract.rs:105:16 [INFO] [stdout] | [INFO] [stdout] 105 | #[cfg_attr(not(feature = "library"), entry_point)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `library` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking kujira-std v1.3.0 [INFO] [stdout] warning: unexpected `cfg` condition value: `library` [INFO] [stdout] --> contracts/referral/src/contract.rs:37:16 [INFO] [stdout] | [INFO] [stdout] 37 | #[cfg_attr(not(feature = "library"), entry_point)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `library` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `library` [INFO] [stdout] --> contracts/referral/src/contract.rs:105:16 [INFO] [stdout] | [INFO] [stdout] 105 | #[cfg_attr(not(feature = "library"), entry_point)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `library` as a feature in `Cargo.toml` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> contracts/referral/src/contract.rs:70:33 [INFO] [stdout] | [INFO] [stdout] 70 | let event = Event::new(format!("referral/claim")) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"referral/claim".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/referral/src/contract.rs:92:55 [INFO] [stdout] | [INFO] [stdout] 92 | REWARDS.add_accrued_rewards(deps.storage, &user, rewards)?; [INFO] [stdout] | ^^^^^ help: change this to: `user` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> contracts/referral/src/contract.rs:118:69 [INFO] [stdout] | [INFO] [stdout] 118 | to_json_binary(&REFERRAL.get_referral_struct(deps.storage, &user.to_string())?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use: `user.as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] = note: `#[warn(clippy::unnecessary_to_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `owner` and `referral_code_id` are never read [INFO] [stdout] --> contracts/referral/src/testing/test_helpers.rs:8:8 [INFO] [stdout] | [INFO] [stdout] 6 | pub struct TestEnv { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 7 | pub app: App, [INFO] [stdout] 8 | pub owner: Addr, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 9 | pub referral_addr: Addr, [INFO] [stdout] 10 | pub referral_code_id: u64, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: useless use of `format!` [INFO] [stdout] --> contracts/referral/src/contract.rs:70:33 [INFO] [stdout] | [INFO] [stdout] 70 | let event = Event::new(format!("referral/claim")) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider using `.to_string()`: `"referral/claim".to_string()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format [INFO] [stdout] = note: `#[warn(clippy::useless_format)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/referral/src/contract.rs:92:55 [INFO] [stdout] | [INFO] [stdout] 92 | REWARDS.add_accrued_rewards(deps.storage, &user, rewards)?; [INFO] [stdout] | ^^^^^ help: change this to: `user` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `to_string` [INFO] [stdout] --> contracts/referral/src/contract.rs:118:69 [INFO] [stdout] | [INFO] [stdout] 118 | to_json_binary(&REFERRAL.get_referral_struct(deps.storage, &user.to_string())?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: use: `user.as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_to_owned [INFO] [stdout] = note: `#[warn(clippy::unnecessary_to_owned)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `ReferralSM<'a>` [INFO] [stdout] --> contracts/referral/src/state/referral.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | / pub const fn new() -> Self { [INFO] [stdout] 12 | | Self { [INFO] [stdout] 13 | | user_to_code: Map::new("ref/utc"), [INFO] [stdout] 14 | | code_to_user: Map::new("ref/ctu"), [INFO] [stdout] ... | [INFO] [stdout] 17 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 10 + impl<'a> Default for ReferralSM<'a> { [INFO] [stdout] 11 + fn default() -> Self { [INFO] [stdout] 12 + Self::new() [INFO] [stdout] 13 + } [INFO] [stdout] 14 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn get_code(&self, storage: &dyn Storage, user: &String) -> StdResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 ~ pub fn get_code(&self, storage: &dyn Storage, user: &str) -> StdResult { [INFO] [stdout] 38 ~ Ok(self.user_to_code.may_load(storage, user)?.unwrap_or_default()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/referral/src/state/referral.rs:43:45 [INFO] [stdout] | [INFO] [stdout] 43 | match self.code_to_user.load(storage, &code) { [INFO] [stdout] | ^^^^^ help: change this to: `code` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:52:16 [INFO] [stdout] | [INFO] [stdout] 52 | referee: &String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 52 ~ referee: &str, [INFO] [stdout] 53 | code: &String, [INFO] [stdout] ... [INFO] [stdout] 60 | // Check if the referee is already added [INFO] [stdout] 61 ~ let existing_user = self.referee_to_user.may_load(storage, referee)?; [INFO] [stdout] 62 | if existing_user.is_some() { [INFO] [stdout] ... [INFO] [stdout] 66 | // Save the referee [INFO] [stdout] 67 ~ self.referee_to_user.save(storage, referee, &existing_code.unwrap())?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | code: &String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 53 - code: &String, [INFO] [stdout] 53 + code: &str, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:71:63 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_referrer(&self, storage: &dyn Storage, referee: &String) -> StdResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 71 ~ pub fn get_referrer(&self, storage: &dyn Storage, referee: &str) -> StdResult { [INFO] [stdout] 72 | // Retrieve the user who referred the given referee [INFO] [stdout] 73 ~ Ok(self.referee_to_user.may_load(storage, referee)?.unwrap_or_default()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking hitnrug v0.1.0-rc1 (/opt/rustwide/workdir/contracts/hitnrug) [INFO] [stdout] warning: you should consider adding a `Default` implementation for `ReferralSM<'a>` [INFO] [stdout] --> contracts/referral/src/state/referral.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | / pub const fn new() -> Self { [INFO] [stdout] 12 | | Self { [INFO] [stdout] 13 | | user_to_code: Map::new("ref/utc"), [INFO] [stdout] 14 | | code_to_user: Map::new("ref/ctu"), [INFO] [stdout] ... | [INFO] [stdout] 17 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 10 + impl<'a> Default for ReferralSM<'a> { [INFO] [stdout] 11 + fn default() -> Self { [INFO] [stdout] 12 + Self::new() [INFO] [stdout] 13 + } [INFO] [stdout] 14 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn get_code(&self, storage: &dyn Storage, user: &String) -> StdResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] = note: `#[warn(clippy::ptr_arg)]` on by default [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 37 ~ pub fn get_code(&self, storage: &dyn Storage, user: &str) -> StdResult { [INFO] [stdout] 38 ~ Ok(self.user_to_code.may_load(storage, user)?.unwrap_or_default()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/referral/src/state/referral.rs:43:45 [INFO] [stdout] | [INFO] [stdout] 43 | match self.code_to_user.load(storage, &code) { [INFO] [stdout] | ^^^^^ help: change this to: `code` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:52:16 [INFO] [stdout] | [INFO] [stdout] 52 | referee: &String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 52 ~ referee: &str, [INFO] [stdout] 53 | code: &String, [INFO] [stdout] ... [INFO] [stdout] 60 | // Check if the referee is already added [INFO] [stdout] 61 ~ let existing_user = self.referee_to_user.may_load(storage, referee)?; [INFO] [stdout] 62 | if existing_user.is_some() { [INFO] [stdout] ... [INFO] [stdout] 66 | // Save the referee [INFO] [stdout] 67 ~ self.referee_to_user.save(storage, referee, &existing_code.unwrap())?; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | code: &String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 53 - code: &String, [INFO] [stdout] 53 + code: &str, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: writing `&String` instead of `&str` involves a new object where a slice will do [INFO] [stdout] --> contracts/referral/src/state/referral.rs:71:63 [INFO] [stdout] | [INFO] [stdout] 71 | pub fn get_referrer(&self, storage: &dyn Storage, referee: &String) -> StdResult { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg [INFO] [stdout] help: change this to [INFO] [stdout] | [INFO] [stdout] 71 ~ pub fn get_referrer(&self, storage: &dyn Storage, referee: &str) -> StdResult { [INFO] [stdout] 72 | // Retrieve the user who referred the given referee [INFO] [stdout] 73 ~ Ok(self.referee_to_user.may_load(storage, referee)?.unwrap_or_default()) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `owner` is never read [INFO] [stdout] --> contracts/hitnrug/src/testing/test_helpers.rs:13:8 [INFO] [stdout] | [INFO] [stdout] 11 | pub struct TestEnv { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 12 | pub app: App, [INFO] [stdout] 13 | pub owner: Addr, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `GameSM<'a>` [INFO] [stdout] --> contracts/hitnrug/src/game.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | / pub const fn new() -> Self { [INFO] [stdout] 54 | | Self { [INFO] [stdout] 55 | | game_base: Item::new("gm/b"), [INFO] [stdout] 56 | | accounts: Map::new("gm/a"), [INFO] [stdout] ... | [INFO] [stdout] 60 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 52 + impl<'a> Default for GameSM<'a> { [INFO] [stdout] 53 + fn default() -> Self { [INFO] [stdout] 54 + Self::new() [INFO] [stdout] 55 + } [INFO] [stdout] 56 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:92:34 [INFO] [stdout] | [INFO] [stdout] 92 | self.players.save(storage, &account, &PlayerStatus::new(account.clone()))?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `account` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `GameSM<'a>` [INFO] [stdout] --> contracts/hitnrug/src/game.rs:53:4 [INFO] [stdout] | [INFO] [stdout] 53 | / pub const fn new() -> Self { [INFO] [stdout] 54 | | Self { [INFO] [stdout] 55 | | game_base: Item::new("gm/b"), [INFO] [stdout] 56 | | accounts: Map::new("gm/a"), [INFO] [stdout] ... | [INFO] [stdout] 60 | | } [INFO] [stdout] | |____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 52 + impl<'a> Default for GameSM<'a> { [INFO] [stdout] 53 + fn default() -> Self { [INFO] [stdout] 54 + Self::new() [INFO] [stdout] 55 + } [INFO] [stdout] 56 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:92:34 [INFO] [stdout] | [INFO] [stdout] 92 | self.players.save(storage, &account, &PlayerStatus::new(account.clone()))?; [INFO] [stdout] | ^^^^^^^^ help: change this to: `account` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:228:47 [INFO] [stdout] | [INFO] [stdout] 228 | self.check_winner(&mut game_base, &target, target_player.points); [INFO] [stdout] | ^^^^^^^ help: change this to: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:234:41 [INFO] [stdout] | [INFO] [stdout] 234 | self.check_winner(&mut game_base, &account, player.points); [INFO] [stdout] | ^^^^^^^^ help: change this to: `account` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:247:10 [INFO] [stdout] | [INFO] [stdout] 247 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 247 - return Ok(false); [INFO] [stdout] 247 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:249:10 [INFO] [stdout] | [INFO] [stdout] 249 | return Ok(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 249 - return Ok(true); [INFO] [stdout] 249 + Ok(true) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:260:10 [INFO] [stdout] | [INFO] [stdout] 260 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 260 - return Ok(false); [INFO] [stdout] 260 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:262:10 [INFO] [stdout] | [INFO] [stdout] 262 | return Ok(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 262 - return Ok(true); [INFO] [stdout] 262 + Ok(true) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> contracts/hitnrug/src/game.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | || !(game_base.decay_game.rewards [INFO] [stdout] | _____________^ [INFO] [stdout] 274 | | == game_base.decay_game.total - game_base.decay_game.exited) [INFO] [stdout] | |________________________________________________________________________^ help: try: `(game_base.decay_game.rewards != game_base.decay_game.total - game_base.decay_game.exited)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:276:10 [INFO] [stdout] | [INFO] [stdout] 276 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 276 - return Ok(false); [INFO] [stdout] 276 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:278:10 [INFO] [stdout] | [INFO] [stdout] 278 | return Ok(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 278 - return Ok(true); [INFO] [stdout] 278 + Ok(true) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:287:50 [INFO] [stdout] | [INFO] [stdout] 287 | let acccount = self.accounts.load(storage, &addr)?; [INFO] [stdout] | ^^^^^ help: change this to: `addr` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:228:47 [INFO] [stdout] | [INFO] [stdout] 228 | self.check_winner(&mut game_base, &target, target_player.points); [INFO] [stdout] | ^^^^^^^ help: change this to: `target` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:234:41 [INFO] [stdout] | [INFO] [stdout] 234 | self.check_winner(&mut game_base, &account, player.points); [INFO] [stdout] | ^^^^^^^^ help: change this to: `account` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:247:10 [INFO] [stdout] | [INFO] [stdout] 247 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 247 - return Ok(false); [INFO] [stdout] 247 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:249:10 [INFO] [stdout] | [INFO] [stdout] 249 | return Ok(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 249 - return Ok(true); [INFO] [stdout] 249 + Ok(true) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:260:10 [INFO] [stdout] | [INFO] [stdout] 260 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 260 - return Ok(false); [INFO] [stdout] 260 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:262:10 [INFO] [stdout] | [INFO] [stdout] 262 | return Ok(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 262 - return Ok(true); [INFO] [stdout] 262 + Ok(true) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> contracts/hitnrug/src/game.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | || !(game_base.decay_game.rewards [INFO] [stdout] | _____________^ [INFO] [stdout] 274 | | == game_base.decay_game.total - game_base.decay_game.exited) [INFO] [stdout] | |________________________________________________________________________^ help: try: `(game_base.decay_game.rewards != game_base.decay_game.total - game_base.decay_game.exited)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:276:10 [INFO] [stdout] | [INFO] [stdout] 276 | return Ok(false); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 276 - return Ok(false); [INFO] [stdout] 276 + Ok(false) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/game.rs:278:10 [INFO] [stdout] | [INFO] [stdout] 278 | return Ok(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 278 - return Ok(true); [INFO] [stdout] 278 + Ok(true) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/game.rs:287:50 [INFO] [stdout] | [INFO] [stdout] 287 | let acccount = self.accounts.load(storage, &addr)?; [INFO] [stdout] | ^^^^^ help: change this to: `addr` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: large size difference between variants [INFO] [stdout] --> contracts/hitnrug/src/msg.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | / pub enum ExecuteMsg { [INFO] [stdout] 24 | | Join { ref_code: Option }, [INFO] [stdout] 25 | | Exit {}, [INFO] [stdout] 26 | | Play(PlayMsg), [INFO] [stdout] | | ------------- the second-largest variant contains at least 32 bytes [INFO] [stdout] ... | [INFO] [stdout] 29 | | UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] | | ----------------------------------------- the largest variant contains at least 272 bytes [INFO] [stdout] 30 | | } [INFO] [stdout] | |_^ the entire enum is at least 272 bytes [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stdout] = note: `#[warn(clippy::large_enum_variant)]` on by default [INFO] [stdout] help: consider boxing the large fields or introducing indirection in some other way to reduce the total size of the enum [INFO] [stdout] | [INFO] [stdout] 29 - UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] 29 + UpdateConfig { new_config: Box }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: large size difference between variants [INFO] [stdout] --> contracts/hitnrug/src/msg.rs:23:1 [INFO] [stdout] | [INFO] [stdout] 23 | / pub enum ExecuteMsg { [INFO] [stdout] 24 | | Join { ref_code: Option }, [INFO] [stdout] 25 | | Exit {}, [INFO] [stdout] 26 | | Play(PlayMsg), [INFO] [stdout] | | ------------- the second-largest variant contains at least 32 bytes [INFO] [stdout] ... | [INFO] [stdout] 29 | | UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] | | ----------------------------------------- the largest variant contains at least 272 bytes [INFO] [stdout] 30 | | } [INFO] [stdout] | |_^ the entire enum is at least 272 bytes [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stdout] = note: `#[warn(clippy::large_enum_variant)]` on by default [INFO] [stdout] help: consider boxing the large fields or introducing indirection in some other way to reduce the total size of the enum [INFO] [stdout] | [INFO] [stdout] 29 - UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] 29 + UpdateConfig { new_config: Box }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/state.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | return Ok((Some(ambassador), None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 31 - return Ok((Some(ambassador), None)); [INFO] [stdout] 31 + Ok((Some(ambassador), None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/state.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | return Ok((None, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 49 - return Ok((None, None)); [INFO] [stdout] 49 + Ok((None, None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/state.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | return Ok((Some(ambassador), None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 31 - return Ok((Some(ambassador), None)); [INFO] [stdout] 31 + Ok((Some(ambassador), None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/hitnrug/src/state.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | return Ok((None, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 49 - return Ok((None, None)); [INFO] [stdout] 49 + Ok((None, None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (10/7) [INFO] [stdout] --> contracts/hitnrug/src/testing/test_helpers.rs:96:1 [INFO] [stdout] | [INFO] [stdout] 96 | / pub fn create_partial_instantiate( [INFO] [stdout] 97 | | owner: &str, [INFO] [stdout] 98 | | ticket_denom: &str, [INFO] [stdout] 99 | | ticket_amount: Uint128, [INFO] [stdout] ... | [INFO] [stdout] 106 | | pt_help: (i64, i64), [INFO] [stdout] 107 | | ) -> PartialInstantiate { [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/hitnrug/src/testing/test_helpers.rs:109:43 [INFO] [stdout] | [INFO] [stdout] 109 | owner: MockApi::default().addr_make(&owner), [INFO] [stdout] | ^^^^^^ help: change this to: `owner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking kujira-fin v1.3.0 [INFO] [stderr] Checking kujira-orca v1.3.0 [INFO] [stderr] Checking kujira-ghost v1.3.0 [INFO] [stderr] Checking kujira-bow v1.3.0 [INFO] [stderr] Checking kujira-stable v1.3.0 [INFO] [stderr] Checking kujira v1.3.0 [INFO] [stderr] Checking crack-the-vault v0.1.1-rc1 (/opt/rustwide/workdir/contracts/crack-the-vault) [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> contracts/crack-the-vault/src/testing/test_helpers.rs:122:19 [INFO] [stdout] | [INFO] [stdout] 122 | 1_000_000_000_00u128, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider: `100_000_000_000_u128` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] = note: `#[warn(clippy::inconsistent_digit_grouping)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: digits grouped inconsistently by underscores [INFO] [stdout] --> contracts/crack-the-vault/src/testing/test_helpers.rs:126:19 [INFO] [stdout] | [INFO] [stdout] 126 | 1_000_000_000_00u128, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ help: consider: `100_000_000_000_u128` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inconsistent_digit_grouping [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `owner` is never read [INFO] [stdout] --> contracts/crack-the-vault/src/testing/test_helpers.rs:15:8 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct TestEnv { [INFO] [stdout] | ------- field in this struct [INFO] [stdout] 14 | pub app: App, [INFO] [stdout] 15 | pub owner: Addr, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `fin` and `referral` are never read [INFO] [stdout] --> contracts/crack-the-vault/src/testing/test_helpers.rs:21:8 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct MockContracts { [INFO] [stdout] | ------------- fields in this struct [INFO] [stdout] 20 | pub game: Addr, [INFO] [stdout] 21 | pub fin: Addr, [INFO] [stdout] | ^^^ [INFO] [stdout] 22 | pub referral: Addr, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:182:13 [INFO] [stdout] | [INFO] [stdout] 182 | if !(decay_game.rewards == decay_game.total - decay_game.exited) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(decay_game.rewards != decay_game.total - decay_game.exited)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:125:16 [INFO] [stdout] | [INFO] [stdout] 125 | / return Ok(Response::new().add_message(wasm_msg).add_event( [INFO] [stdout] 126 | | Event::new("crack-the-valut/end_game") [INFO] [stdout] 127 | | .add_attribute("winner", winner) [INFO] [stdout] 128 | | .add_attribute("prize_amount_before", amount) [INFO] [stdout] 129 | | .add_attribute("prize_denom_before", config.ticket_denom.clone()), [INFO] [stdout] 130 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 125 ~ Ok(Response::new().add_message(wasm_msg).add_event( [INFO] [stdout] 126 + Event::new("crack-the-valut/end_game") [INFO] [stdout] 127 + .add_attribute("winner", winner) [INFO] [stdout] 128 + .add_attribute("prize_amount_before", amount) [INFO] [stdout] 129 + .add_attribute("prize_denom_before", config.ticket_denom.clone()), [INFO] [stdout] 130 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:135:16 [INFO] [stdout] | [INFO] [stdout] 135 | / return Ok(Response::new().add_message(restart_msg).add_event( [INFO] [stdout] 136 | | Event::new("crack-the-valut/end_game") [INFO] [stdout] 137 | | .add_attribute("winner", "") [INFO] [stdout] 138 | | .add_attribute("prize_amount_before", "") [INFO] [stdout] 139 | | .add_attribute("prize_denom_before", ""), [INFO] [stdout] 140 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 135 ~ Ok(Response::new().add_message(restart_msg).add_event( [INFO] [stdout] 136 + Event::new("crack-the-valut/end_game") [INFO] [stdout] 137 + .add_attribute("winner", "") [INFO] [stdout] 138 + .add_attribute("prize_amount_before", "") [INFO] [stdout] 139 + .add_attribute("prize_denom_before", ""), [INFO] [stdout] 140 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:143:25 [INFO] [stdout] | [INFO] [stdout] 143 | Err(err) => return Err(err), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 143 - Err(err) => return Err(err), [INFO] [stdout] 143 + Err(err) => Err(err), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:182:13 [INFO] [stdout] | [INFO] [stdout] 182 | if !(decay_game.rewards == decay_game.total - decay_game.exited) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(decay_game.rewards != decay_game.total - decay_game.exited)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:125:16 [INFO] [stdout] | [INFO] [stdout] 125 | / return Ok(Response::new().add_message(wasm_msg).add_event( [INFO] [stdout] 126 | | Event::new("crack-the-valut/end_game") [INFO] [stdout] 127 | | .add_attribute("winner", winner) [INFO] [stdout] 128 | | .add_attribute("prize_amount_before", amount) [INFO] [stdout] 129 | | .add_attribute("prize_denom_before", config.ticket_denom.clone()), [INFO] [stdout] 130 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 125 ~ Ok(Response::new().add_message(wasm_msg).add_event( [INFO] [stdout] 126 + Event::new("crack-the-valut/end_game") [INFO] [stdout] 127 + .add_attribute("winner", winner) [INFO] [stdout] 128 + .add_attribute("prize_amount_before", amount) [INFO] [stdout] 129 + .add_attribute("prize_denom_before", config.ticket_denom.clone()), [INFO] [stdout] 130 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:135:16 [INFO] [stdout] | [INFO] [stdout] 135 | / return Ok(Response::new().add_message(restart_msg).add_event( [INFO] [stdout] 136 | | Event::new("crack-the-valut/end_game") [INFO] [stdout] 137 | | .add_attribute("winner", "") [INFO] [stdout] 138 | | .add_attribute("prize_amount_before", "") [INFO] [stdout] 139 | | .add_attribute("prize_denom_before", ""), [INFO] [stdout] 140 | | )); [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 135 ~ Ok(Response::new().add_message(restart_msg).add_event( [INFO] [stdout] 136 + Event::new("crack-the-valut/end_game") [INFO] [stdout] 137 + .add_attribute("winner", "") [INFO] [stdout] 138 + .add_attribute("prize_amount_before", "") [INFO] [stdout] 139 + .add_attribute("prize_denom_before", ""), [INFO] [stdout] 140 ~ )) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/contract.rs:143:25 [INFO] [stdout] | [INFO] [stdout] 143 | Err(err) => return Err(err), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 143 - Err(err) => return Err(err), [INFO] [stdout] 143 + Err(err) => Err(err), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: large size difference between variants [INFO] [stdout] --> contracts/crack-the-vault/src/msg.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / pub enum ExecuteMsg { [INFO] [stdout] 23 | | Join { ref_code: Option }, [INFO] [stdout] 24 | | Donate {}, [INFO] [stdout] 25 | | Exit {}, [INFO] [stdout] ... | [INFO] [stdout] 28 | | UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] | | ----------------------------------------- the largest variant contains at least 352 bytes [INFO] [stdout] 29 | | Callback(kujira::CallbackMsg), [INFO] [stdout] | | ----------------------------- the second-largest variant contains at least 48 bytes [INFO] [stdout] 30 | | } [INFO] [stdout] | |_^ the entire enum is at least 352 bytes [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stdout] = note: `#[warn(clippy::large_enum_variant)]` on by default [INFO] [stdout] help: consider boxing the large fields or introducing indirection in some other way to reduce the total size of the enum [INFO] [stdout] | [INFO] [stdout] 28 - UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] 28 + UpdateConfig { new_config: Box }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: large size difference between variants [INFO] [stdout] --> contracts/crack-the-vault/src/msg.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / pub enum ExecuteMsg { [INFO] [stdout] 23 | | Join { ref_code: Option }, [INFO] [stdout] 24 | | Donate {}, [INFO] [stdout] 25 | | Exit {}, [INFO] [stdout] ... | [INFO] [stdout] 28 | | UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] | | ----------------------------------------- the largest variant contains at least 352 bytes [INFO] [stdout] 29 | | Callback(kujira::CallbackMsg), [INFO] [stdout] | | ----------------------------- the second-largest variant contains at least 48 bytes [INFO] [stdout] 30 | | } [INFO] [stdout] | |_^ the entire enum is at least 352 bytes [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#large_enum_variant [INFO] [stdout] = note: `#[warn(clippy::large_enum_variant)]` on by default [INFO] [stdout] help: consider boxing the large fields or introducing indirection in some other way to reduce the total size of the enum [INFO] [stdout] | [INFO] [stdout] 28 - UpdateConfig { new_config: ConfigUpdate }, [INFO] [stdout] 28 + UpdateConfig { new_config: Box }, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/state.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | return Ok((Some(ambassador), None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 - return Ok((Some(ambassador), None)); [INFO] [stdout] 37 + Ok((Some(ambassador), None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/state.rs:57:7 [INFO] [stdout] | [INFO] [stdout] 57 | return Ok((None, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 57 - return Ok((None, None)); [INFO] [stdout] 57 + Ok((None, None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/state.rs:37:7 [INFO] [stdout] | [INFO] [stdout] 37 | return Ok((Some(ambassador), None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 37 - return Ok((Some(ambassador), None)); [INFO] [stdout] 37 + Ok((Some(ambassador), None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/state.rs:57:7 [INFO] [stdout] | [INFO] [stdout] 57 | return Ok((None, None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 57 - return Ok((None, None)); [INFO] [stdout] 57 + Ok((None, None)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> contracts/crack-the-vault/src/state.rs:131:7 [INFO] [stdout] | [INFO] [stdout] 131 | if !(decay_game.rewards == decay_game.total - decay_game.exited) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(decay_game.rewards != decay_game.total - decay_game.exited)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> contracts/crack-the-vault/src/state.rs:131:7 [INFO] [stdout] | [INFO] [stdout] 131 | if !(decay_game.rewards == decay_game.total - decay_game.exited) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `(decay_game.rewards != decay_game.total - decay_game.exited)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enclosing `Ok` and `?` operator are unneeded [INFO] [stdout] --> contracts/crack-the-vault/src/testing/referral.rs:52:4 [INFO] [stdout] | [INFO] [stdout] 52 | / Ok(match msg { [INFO] [stdout] 53 | | QueryMsg::Config {} => todo!(), [INFO] [stdout] 54 | | QueryMsg::GetCode { .. } => todo!(), [INFO] [stdout] 55 | | QueryMsg::GetAddr { code } => get_addr(code, deps.api), [INFO] [stdout] ... | [INFO] [stdout] 58 | | QueryMsg::PendingRewards { .. } => todo!(), [INFO] [stdout] 59 | | }?) [INFO] [stdout] | |______^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark [INFO] [stdout] = note: `#[warn(clippy::needless_question_mark)]` on by default [INFO] [stdout] help: remove the enclosing `Ok` and `?` operator [INFO] [stdout] | [INFO] [stdout] 52 ~ match msg { [INFO] [stdout] 53 | QueryMsg::Config {} => todo!(), [INFO] [stdout] ... [INFO] [stdout] 58 | QueryMsg::PendingRewards { .. } => todo!(), [INFO] [stdout] 59 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/testing/referral.rs:65:7 [INFO] [stdout] | [INFO] [stdout] 65 | / return Ok(to_json_binary(&to_addr( [INFO] [stdout] 66 | | "cosmwasm1se09wrdugr8m62wwd6xgrukuvqjntf9e73p9lmexwkry35sh3v5s52j5fn".to_string(), //VALID_AMBASSADOR => To Addr [INFO] [stdout] 67 | | api, [INFO] [stdout] 68 | | )?)?); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 65 ~ Ok(to_json_binary(&to_addr( [INFO] [stdout] 66 + "cosmwasm1se09wrdugr8m62wwd6xgrukuvqjntf9e73p9lmexwkry35sh3v5s52j5fn".to_string(), //VALID_AMBASSADOR => To Addr [INFO] [stdout] 67 + api, [INFO] [stdout] 68 ~ )?)?) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/testing/referral.rs:70:7 [INFO] [stdout] | [INFO] [stdout] 70 | return Err(ContractError::Std(StdError::not_found("code"))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 70 - return Err(ContractError::Std(StdError::not_found("code"))); [INFO] [stdout] 70 + Err(ContractError::Std(StdError::not_found("code"))) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/testing/referral.rs:80:7 [INFO] [stdout] | [INFO] [stdout] 80 | / return Ok(to_json_binary(&to_addr( [INFO] [stdout] 81 | | "cosmwasm1se09wrdugr8m62wwd6xgrukuvqjntf9e73p9lmexwkry35sh3v5s52j5fn".to_string(), //VALID_AMBASSADOR => To Addr [INFO] [stdout] 82 | | api, [INFO] [stdout] 83 | | )?)?); [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 80 ~ Ok(to_json_binary(&to_addr( [INFO] [stdout] 81 + "cosmwasm1se09wrdugr8m62wwd6xgrukuvqjntf9e73p9lmexwkry35sh3v5s52j5fn".to_string(), //VALID_AMBASSADOR => To Addr [INFO] [stdout] 82 + api, [INFO] [stdout] 83 ~ )?)?) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> contracts/crack-the-vault/src/testing/referral.rs:85:7 [INFO] [stdout] | [INFO] [stdout] 85 | return Ok(to_json_binary("")?); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 85 - return Ok(to_json_binary("")?); [INFO] [stdout] 85 + Ok(to_json_binary("")?) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enclosing `Ok` and `?` operator are unneeded [INFO] [stdout] --> contracts/crack-the-vault/src/testing/fin.rs:79:4 [INFO] [stdout] | [INFO] [stdout] 79 | Ok(to_json_binary("")?) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark [INFO] [stdout] help: remove the enclosing `Ok` and `?` operator [INFO] [stdout] | [INFO] [stdout] 79 - Ok(to_json_binary("")?) [INFO] [stdout] 79 + to_json_binary("") [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> contracts/crack-the-vault/src/testing/test_helpers.rs:151:43 [INFO] [stdout] | [INFO] [stdout] 151 | owner: MockApi::default().addr_make(&owner), [INFO] [stdout] | ^^^^^^ help: change this to: `owner` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 53.58s [INFO] running `Command { std: "docker" "inspect" "61a4b7be926d79eeca48b5c7680d7735aaee0392c9a719f4305c97b3e71ec435", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "61a4b7be926d79eeca48b5c7680d7735aaee0392c9a719f4305c97b3e71ec435", kill_on_drop: false }` [INFO] [stdout] 61a4b7be926d79eeca48b5c7680d7735aaee0392c9a719f4305c97b3e71ec435