Skip to content

Implement Base64 encoding for ZIP 304 signatures #389

Implement Base64 encoding for ZIP 304 signatures

Implement Base64 encoding for ZIP 304 signatures #389

Triggered via push November 13, 2023 01:57
Status Failure
Total duration 38m 58s
Artifacts

ci.yml

on: push
Matrix: build
Matrix: test
Fit to window
Zoom out
Zoom in

Annotations

12 errors and 154 warnings
Bitrot check
failed to select a version for the requirement `ahash = "^0.7.0"`
Bitrot check
The process '/home/runner/.cargo/bin/cargo' failed with exit code 101
Clippy (1.56.1)
Clippy had exited with the 101 exit code
Test on ubuntu-latest
Input required and not supplied: path
Intra-doc links
failed to select a version for the requirement `ahash = "^0.7.0"`
Intra-doc links
The process '/home/runner/.cargo/bin/cargo' failed with exit code 101
Rustfmt
failed to select a version for the requirement `ahash = "^0.7.0"`
Rustfmt
The process '/home/runner/.cargo/bin/cargo' failed with exit code 1
Test on macOS-latest
The operation was canceled.
Test on windows-latest
The operation was canceled.
Build target wasm32-wasi
failed to select a version for the requirement `ahash = "^0.7.0"`
Build target wasm32-wasi
The process '/home/runner/.cargo/bin/cargo' failed with exit code 101
redundant pattern matching, consider using `is_err()`: zcash_primitives/src/zip32.rs#L177
warning: redundant pattern matching, consider using `is_err()` --> zcash_primitives/src/zip32.rs:177:17 | 177 | assert!(matches!(u32::try_from(too_big), Err(_))); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `u32::try_from(too_big).is_err()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching = note: `-W clippy::redundant-pattern-matching` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::redundant_pattern_matching)]`
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/transaction/mod.rs#L778
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/transaction/mod.rs:778:18 | 778 | .zip(v_output_proofs.into_iter()) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `v_output_proofs` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/transaction/mod.rs#L768
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/transaction/mod.rs:768:26 | 768 | .zip(v_spend_auth_sigs.into_iter()), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `v_spend_auth_sigs` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
the following explicit lifetimes could be elided: 'a: zcash_primitives/src/transaction/sighash.rs#L79
warning: the following explicit lifetimes could be elided: 'a --> zcash_primitives/src/transaction/sighash.rs:79:5 | 79 | 'a, | ^^ ... 85 | signable_input: &SignableInput<'a>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 79 ~ TA: TransparentAuthorizingContext, 80 | SA: sapling::Authorization<Proof = GrothProofBytes>, ... 83 | tx: &TransactionData<A>, 84 ~ signable_input: &SignableInput<'_>, |
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/transaction/components/tze/builder.rs#L181
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/transaction/components/tze/builder.rs:181:22 | 181 | .zip(payloads.into_iter()) | ^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `payloads` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
usage of `Iterator::fold` on a type that implements `Try`: zcash_primitives/src/transaction/components/amount.rs#L196
warning: usage of `Iterator::fold` on a type that implements `Try` --> zcash_primitives/src/transaction/components/amount.rs:196:14 | 196 | iter.fold(Some(Amount::zero()), |acc, a| acc? + *a) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `try_fold` instead: `try_fold(Amount::zero(), |acc, a| ...)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
usage of `Iterator::fold` on a type that implements `Try`: zcash_primitives/src/transaction/components/amount.rs#L190
warning: usage of `Iterator::fold` on a type that implements `Try` --> zcash_primitives/src/transaction/components/amount.rs:190:14 | 190 | iter.fold(Some(Amount::zero()), |acc, a| acc? + a) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `try_fold` instead: `try_fold(Amount::zero(), |acc, a| ...)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold = note: `-W clippy::manual-try-fold` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::manual_try_fold)]`
the following explicit lifetimes could be elided: 'a: zcash_primitives/src/sapling/redjubjub.rs#L176
warning: the following explicit lifetimes could be elided: 'a --> zcash_primitives/src/sapling/redjubjub.rs:176:21 | 176 | pub fn batch_verify<'a, R: RngCore>( | ^^ 177 | mut rng: &mut R, 178 | batch: &[BatchEntry<'a>], | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 176 ~ pub fn batch_verify<R: RngCore>( 177 | mut rng: &mut R, 178 ~ batch: &[BatchEntry<'_>], |
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/sapling/pedersen_hash.rs#L41
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/sapling/pedersen_hash.rs:41:16 | 41 | .chain(bits.into_iter()); | ^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `bits` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:524:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/sapling/note_encryption.rs#L395
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/sapling/note_encryption.rs:395:18 | 395 | .zip(ephemeral_keys.into_iter()) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `ephemeral_keys` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/sapling/note_encryption.rs#L374
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/sapling/note_encryption.rs:374:18 | 374 | .zip(ephemeral_keys.into_iter()) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `ephemeral_keys` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
useless conversion to the same type: `std::ops::Range<u8>`: zcash_primitives/src/merkle_tree.rs#L138
warning: useless conversion to the same type: `std::ops::Range<u8>` --> zcash_primitives/src/merkle_tree.rs:138:26 | 138 | parents: (1..DEPTH) | __________________________^ 139 | | .into_iter() | |________________________________^ help: consider removing `.into_iter()`: `(1..DEPTH)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `-W clippy::useless-conversion` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_conversion)]`
useless use of `vec!`: zcash_primitives/src/legacy.rs#L158
warning: useless use of `vec!` --> zcash_primitives/src/legacy.rs:158:30 | 158 | let short_data = vec![2; 100]; | ^^^^^^^^^^^^ help: you can use an array directly: `[2; 100]` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec = note: `-W clippy::useless-vec` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_vec)]`
the following explicit lifetimes could be elided: 'a: zcash_extensions/src/transparent/demo.rs#L104
warning: the following explicit lifetimes could be elided: 'a --> zcash_extensions/src/transparent/demo.rs:104:12 | 104 | fn fmt<'a>(&self, f: &mut fmt::Formatter<'a>) -> fmt::Result { | ^^ ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 104 - fn fmt<'a>(&self, f: &mut fmt::Formatter<'a>) -> fmt::Result { 104 + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { |
the following explicit lifetimes could be elided: 'a: zcash_extensions/src/consensus/transparent.rs#L103
warning: the following explicit lifetimes could be elided: 'a --> zcash_extensions/src/consensus/transparent.rs:103:15 | 103 | fn verify<'a>( | ^^ ... 107 | ctx: &Context<'a>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 103 ~ fn verify( 104 | &self, 105 | precondition: &Precondition, 106 | witness: &Witness<AuthData>, 107 ~ ctx: &Context<'_>, |
the following explicit lifetimes could be elided: 'a: zcash_extensions/src/consensus/transparent.rs#L69
warning: the following explicit lifetimes could be elided: 'a --> zcash_extensions/src/consensus/transparent.rs:69:15 | 69 | fn verify<'a>( | ^^ ... 73 | ctx: &Context<'a>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 69 ~ fn verify( 70 | &self, 71 | precondition: &Precondition, 72 | witness: &Witness<AuthData>, 73 ~ ctx: &Context<'_>, |
the borrowed expression implements the required traits: zcash_proofs/src/lib.rs#L367
warning: the borrowed expression implements the required traits --> zcash_proofs/src/lib.rs:367:37 | 367 | VerifyingKey::<Bls12>::read(&mut fs) | ^^^^^^^ help: change this to: `fs` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args = note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
using `clone` on type `SubgroupPoint` which implements the `Copy` trait: zcash_proofs/src/sapling/zip304.rs#L322
warning: using `clone` on type `SubgroupPoint` which implements the `Copy` trait --> zcash_proofs/src/sapling/zip304.rs:322:15 | 322 | pk_d: payment_address.pk_d().clone(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*payment_address.pk_d()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `SubgroupPoint` which implements the `Copy` trait: zcash_proofs/src/sapling/zip304.rs#L216
warning: using `clone` on type `SubgroupPoint` which implements the `Copy` trait --> zcash_proofs/src/sapling/zip304.rs:216:19 | 216 | PublicKey(proof_generation_key.ak.clone().into()).randomize(alpha, SPENDING_KEY_GENERATOR); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `proof_generation_key.ak` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `SubgroupPoint` which implements the `Copy` trait: zcash_proofs/src/sapling/zip304.rs#L184
warning: using `clone` on type `SubgroupPoint` which implements the `Copy` trait --> zcash_proofs/src/sapling/zip304.rs:184:15 | 184 | pk_d: payment_address.pk_d().clone(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*payment_address.pk_d()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy = note: `-W clippy::clone-on-copy` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::clone_on_copy)]`
used `unwrap()` on `Some` value: zcash_proofs/src/circuit/sprout/mod.rs#L460
warning: used `unwrap()` on `Some` value --> zcash_proofs/src/circuit/sprout/mod.rs:460:40 | 460 | .write_u64::<LittleEndian>(vpub_new.unwrap()) | ^^^^^^^^^^^^^^^^^ | help: remove the `Some` and `unwrap()` --> zcash_proofs/src/circuit/sprout/mod.rs:413:24 | 413 | let vpub_new = Some(test_vector.read_u64::<LittleEndian>().unwrap()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_literal_unwrap
used `unwrap()` on `Some` value: zcash_proofs/src/circuit/sprout/mod.rs#L457
warning: used `unwrap()` on `Some` value --> zcash_proofs/src/circuit/sprout/mod.rs:457:40 | 457 | .write_u64::<LittleEndian>(vpub_old.unwrap()) | ^^^^^^^^^^^^^^^^^ | help: remove the `Some` and `unwrap()` --> zcash_proofs/src/circuit/sprout/mod.rs:412:24 | 412 | let vpub_old = Some(test_vector.read_u64::<LittleEndian>().unwrap()); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_literal_unwrap
used `unwrap()` on `Some` value: zcash_proofs/src/circuit/sprout/mod.rs#L449
warning: used `unwrap()` on `Some` value --> zcash_proofs/src/circuit/sprout/mod.rs:449:32 | 449 | expected_inputs.extend(h_sig.unwrap().to_vec()); | ^^^^^^^^^^^^^^ | help: remove the `Some` and `unwrap()` --> zcash_proofs/src/circuit/sprout/mod.rs:362:21 | 362 | let h_sig = Some(get_u256(&mut test_vector)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_literal_unwrap
used `unwrap()` on `Some` value: zcash_proofs/src/circuit/sprout/mod.rs#L448
warning: used `unwrap()` on `Some` value --> zcash_proofs/src/circuit/sprout/mod.rs:448:32 | 448 | expected_inputs.extend(rt.unwrap().to_vec()); | ^^^^^^^^^^^ | help: remove the `Some` and `unwrap()` --> zcash_proofs/src/circuit/sprout/mod.rs:361:18 | 361 | let rt = Some(get_u256(&mut test_vector)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_literal_unwrap = note: `-W clippy::unnecessary-literal-unwrap` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::unnecessary_literal_unwrap)]`
dereferencing a tuple pattern where every element takes a reference: zcash_proofs/src/circuit/sprout/input.rs#L69
warning: dereferencing a tuple pattern where every element takes a reference --> zcash_proofs/src/circuit/sprout/input.rs:69:37 | 69 | layer.as_ref().map(|&(ref sibling, _)| &sibling[..]), | ^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference = note: `-W clippy::needless-borrowed-reference` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrowed_reference)]` help: try removing the `&` and `ref` parts | 69 - layer.as_ref().map(|&(ref sibling, _)| &sibling[..]), 69 + layer.as_ref().map(|(sibling, _)| &sibling[..]), |
useless use of `vec!`: zcash_proofs/src/circuit/sapling.rs#L687
warning: useless use of `vec!` --> zcash_proofs/src/circuit/sapling.rs:687:34 | 687 | let expected_commitment_vs = vec![ | __________________________________^ 688 | | "27630722367128086497290371604583225252915685718989450292520883698391703910", 689 | | "23310648738313092772044712773481584369462075017189681529702825235349449805260", 690 | | "25709635353183537915646348052945798827495141780341329896098121888376871589480", ... | 697 | | "32959334601512756708397683646222389414681003290313255304927423560477040775488", 698 | | ]; | |_____^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 687 ~ let expected_commitment_vs = ["27630722367128086497290371604583225252915685718989450292520883698391703910", 688 + "23310648738313092772044712773481584369462075017189681529702825235349449805260", 689 + "25709635353183537915646348052945798827495141780341329896098121888376871589480", 690 + "10516315852014492141081718791576479298042117442649432716255936672048164184691", 691 + "23970713991179488695004801139667700217127937225554773561645815034212389459772", 692 + "3256052161046564597126736968199320852691566092694819239485673781545479548450", 693 + "18887250722195819674378865377623103071236046274361890247643850134985809137409", 694 + "36501156873031641173054592888886902104303750771545647842488588827138867116570", 695 + "21927526310070011864833939629345235038589128172309792087590183778192091594775", 696 ~ "32959334601512756708397683646222389414681003290313255304927423560477040775488"]; |
useless use of `vec!`: zcash_proofs/src/circuit/sapling.rs#L674
warning: useless use of `vec!` --> zcash_proofs/src/circuit/sapling.rs:674:34 | 674 | let expected_commitment_us = vec![ | __________________________________^ 675 | | "43821661663052659750276289184181083197337192946256245809816728673021647664276", 676 | | "7220807656052227578299730541645543434083158611414003423211850718229633594616", 677 | | "13239753550660714843257636471668037031928211668773449453628093339627668081697", ... | 684 | | "18269767207277008186871145355531741929166733260352590789136389380124992250945", 685 | | ]; | |_____^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec = note: `-W clippy::useless-vec` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_vec)]` help: you can use an array directly | 674 ~ let expected_commitment_us = ["43821661663052659750276289184181083197337192946256245809816728673021647664276", 675 + "7220807656052227578299730541645543434083158611414003423211850718229633594616", 676 + "13239753550660714843257636471668037031928211668773449453628093339627668081697", 677 + "10900524635678389360790699587556574797582192824300145558807405770494079767974", 678 + "1411013767457690636461779630023011774660680126764323588543800715293173598850", 679 + "32334206652383066267661379202183359608706535021387905923603014648832344657662", 680 + "20206750741605167608500278423400565295188703622528437817438897624149653579380", 681 + "46716485782200334735478719487356079850582051575003452698983255860512578229998", 682 + "31221372899739042781372142393132358519434268512685538373976981051223051220367", 683 ~ "18269767207277008186871145355531741929166733260352590789136389380124992250945"]; |
accessing first element with `chunk.get(0)`: zcash_proofs/src/circuit/ecc.rs#L39
warning: accessing first element with `chunk.get(0)` --> zcash_proofs/src/circuit/ecc.rs:39:23 | 39 | let chunk_a = chunk | _______________________^ 40 | | .get(0) | |___________________^ help: try: `chunk.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `-W clippy::get-first` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::get_first)]`
constants have by default a `'static` lifetime: zcash_proofs/src/sapling/zip304.rs#L27
warning: constants have by default a `'static` lifetime --> zcash_proofs/src/sapling/zip304.rs:27:39 | 27 | const ZIP304_PERSONALIZATION_PREFIX: &'static [u8; 12] = b"ZIP304Signed"; | -^^^^^^^--------- help: consider removing `'static`: `&[u8; 12]` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes = note: `-W clippy::redundant-static-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::redundant_static_lifetimes)]`
useless use of `vec!`: components/zcash_address/src/kind/unified/ivk.rs#L291
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/ivk.rs:291:23 | 291 | let encoded = vec![ | _______________________^ 292 | | 0x12, 0x51, 0x37, 0xc7, 0xac, 0x8c, 0xd, 0x13, 0x3a, 0x5f, 0xc6, 0x84, 0x53, 0x90, 293 | | 0xf8, 0xe7, 0x23, 0x34, 0xfb, 0xda, 0x49, 0x3c, 0x87, 0x1c, 0x8f, 0x1a, 0xe1, 0x63, 294 | | 0xba, 0xdf, 0x77, 0x64, 0x43, 0xcf, 0xdc, 0x37, 0x1f, 0xd2, 0x89, 0x60, 0xe3, 0x77, ... | 297 | | 0xbd, 0xfe, 0xa4, 0xb7, 0x47, 0x20, 0x92, 0x6, 0xf0, 0x0, 0xf9, 0x64, 298 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 291 ~ let encoded = [0x12, 0x51, 0x37, 0xc7, 0xac, 0x8c, 0xd, 0x13, 0x3a, 0x5f, 0xc6, 0x84, 0x53, 0x90, 292 + 0xf8, 0xe7, 0x23, 0x34, 0xfb, 0xda, 0x49, 0x3c, 0x87, 0x1c, 0x8f, 0x1a, 0xe1, 0x63, 293 + 0xba, 0xdf, 0x77, 0x64, 0x43, 0xcf, 0xdc, 0x37, 0x1f, 0xd2, 0x89, 0x60, 0xe3, 0x77, 294 + 0x20, 0xd0, 0x1c, 0x5, 0x40, 0xe5, 0x43, 0x55, 0xc4, 0xe5, 0xf8, 0xaa, 0xe, 0x7a, 0xe7, 295 + 0x8c, 0x53, 0x15, 0xb8, 0x8f, 0x90, 0x14, 0x33, 0x30, 0x52, 0x2b, 0x8, 0x89, 0x90, 296 ~ 0xbd, 0xfe, 0xa4, 0xb7, 0x47, 0x20, 0x92, 0x6, 0xf0, 0x0, 0xf9, 0x64]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/ivk.rs#L264
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/ivk.rs:264:48 | 264 | let truncated_after_sapling_typecode = vec![ | ________________________________________________^ 265 | | 0xf7, 0x3, 0xd8, 0xbe, 0x6a, 0x27, 0xfa, 0xa1, 0xd3, 0x11, 0xea, 0x25, 0x94, 0xe2, 0xb, 266 | | 0xde, 0xed, 0x6a, 0xaa, 0x8, 0x46, 0x7d, 0xe4, 0xb1, 0xe, 0xf1, 0xde, 0x61, 0xd7, 0x95, 267 | | 0xf7, 0x82, 0x62, 0x32, 0x7a, 0x73, 0x8c, 0x55, 0x93, 0xa1, 0x63, 0x75, 0xe2, 0xca, 268 | | 0xcb, 0x73, 0xd5, 0xe5, 0xa3, 0xbd, 0xb3, 0xf2, 0x26, 0xfa, 0x1c, 0xa2, 0xad, 0xb6, 269 | | 0xd8, 0x21, 0x5e, 0x8, 0xa, 0x82, 0x95, 0x21, 0x74, 270 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 264 ~ let truncated_after_sapling_typecode = [0xf7, 0x3, 0xd8, 0xbe, 0x6a, 0x27, 0xfa, 0xa1, 0xd3, 0x11, 0xea, 0x25, 0x94, 0xe2, 0xb, 265 + 0xde, 0xed, 0x6a, 0xaa, 0x8, 0x46, 0x7d, 0xe4, 0xb1, 0xe, 0xf1, 0xde, 0x61, 0xd7, 0x95, 266 + 0xf7, 0x82, 0x62, 0x32, 0x7a, 0x73, 0x8c, 0x55, 0x93, 0xa1, 0x63, 0x75, 0xe2, 0xca, 267 + 0xcb, 0x73, 0xd5, 0xe5, 0xa3, 0xbd, 0xb3, 0xf2, 0x26, 0xfa, 0x1c, 0xa2, 0xad, 0xb6, 268 ~ 0xd8, 0x21, 0x5e, 0x8, 0xa, 0x82, 0x95, 0x21, 0x74]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/ivk.rs#L245
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/ivk.rs:245:38 | 245 | let truncated_sapling_data = vec![ | ______________________________________^ 246 | | 0xce, 0xbc, 0xfe, 0xc5, 0xef, 0x2d, 0xe, 0x66, 0xc2, 0x8c, 0x34, 0xdc, 0x2e, 0x24, 247 | | 0xd2, 0xc7, 0x4b, 0xac, 0x36, 0xe0, 0x43, 0x72, 0xa7, 0x33, 0xa4, 0xe, 0xe0, 0x52, 248 | | 0x15, 0x64, 0x66, 0x92, 0x36, 0xa7, 0x60, 0x8e, 0x48, 0xe8, 0xb0, 0x30, 0x4d, 0xcb, ... | 256 | | 0xf5, 0xd5, 0x8a, 0xb5, 0x1a, 257 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 245 ~ let truncated_sapling_data = [0xce, 0xbc, 0xfe, 0xc5, 0xef, 0x2d, 0xe, 0x66, 0xc2, 0x8c, 0x34, 0xdc, 0x2e, 0x24, 246 + 0xd2, 0xc7, 0x4b, 0xac, 0x36, 0xe0, 0x43, 0x72, 0xa7, 0x33, 0xa4, 0xe, 0xe0, 0x52, 247 + 0x15, 0x64, 0x66, 0x92, 0x36, 0xa7, 0x60, 0x8e, 0x48, 0xe8, 0xb0, 0x30, 0x4d, 0xcb, 248 + 0xd, 0x6f, 0x5, 0xd4, 0xb8, 0x72, 0x6a, 0xdc, 0x6c, 0x5c, 0xa, 0xf8, 0xdf, 0x95, 0x5a, 249 + 0xba, 0xe1, 0xaa, 0x82, 0x51, 0xe2, 0x70, 0x8d, 0x13, 0x16, 0x88, 0x6a, 0xc0, 0xc1, 250 + 0x99, 0x3c, 0xaf, 0x2c, 0x16, 0x54, 0x80, 0x7e, 0xb, 0xad, 0x31, 0x29, 0x26, 0xdd, 251 + 0x7a, 0x55, 0x98, 0x1, 0x18, 0xb, 0x14, 0x94, 0xb2, 0x6b, 0x81, 0x67, 0x73, 0xa6, 0xd0, 252 + 0x20, 0x94, 0x17, 0x3a, 0xf9, 0x98, 0x43, 0x58, 0xd6, 0x1, 0x10, 0x73, 0x32, 0xb4, 253 + 0x99, 0xad, 0x6b, 0xfe, 0xc0, 0x97, 0xaf, 0xd2, 0xee, 0x8, 0xe5, 0x83, 0x6b, 0xb6, 254 + 0xd9, 0x0, 0xef, 0x84, 0xff, 0xe8, 0x58, 0xba, 0xe8, 0x10, 0xea, 0x2d, 0xee, 0x72, 255 ~ 0xf5, 0xd5, 0x8a, 0xb5, 0x1a]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/ivk.rs#L222
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/ivk.rs:222:33 | 222 | let truncated_padding = vec![ | _________________________________^ 223 | | 0x96, 0x73, 0x6a, 0x56, 0xbc, 0x44, 0x38, 0xe2, 0x47, 0x41, 0x1c, 0x70, 0xe4, 0x6, 224 | | 0x87, 0xbe, 0xb6, 0x90, 0xbd, 0xab, 0x1b, 0xd8, 0x27, 0x10, 0x0, 0x21, 0x30, 0x2, 0x77, 225 | | 0x87, 0x0, 0x25, 0x96, 0x94, 0x8f, 0x1e, 0x39, 0xd2, 0xd8, 0x65, 0xb4, 0x3c, 0x72, ... | 228 | | 0xf9, 0x65, 0x49, 0x14, 0xab, 0x7c, 0x55, 0x7b, 0x39, 0x47, 229 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 222 ~ let truncated_padding = [0x96, 0x73, 0x6a, 0x56, 0xbc, 0x44, 0x38, 0xe2, 0x47, 0x41, 0x1c, 0x70, 0xe4, 0x6, 223 + 0x87, 0xbe, 0xb6, 0x90, 0xbd, 0xab, 0x1b, 0xd8, 0x27, 0x10, 0x0, 0x21, 0x30, 0x2, 0x77, 224 + 0x87, 0x0, 0x25, 0x96, 0x94, 0x8f, 0x1e, 0x39, 0xd2, 0xd8, 0x65, 0xb4, 0x3c, 0x72, 225 + 0xd8, 0xac, 0xec, 0x5b, 0xa2, 0x18, 0x62, 0x3f, 0xb, 0x88, 0xb4, 0x41, 0xf1, 0x55, 226 + 0x39, 0x53, 0xbf, 0x2a, 0xd6, 0xcf, 0xdd, 0x46, 0xb7, 0xd8, 0xc1, 0x39, 0x34, 0x4d, 227 ~ 0xf9, 0x65, 0x49, 0x14, 0xab, 0x7c, 0x55, 0x7b, 0x39, 0x47]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/ivk.rs#L206
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/ivk.rs:206:31 | 206 | let invalid_padding = vec![ | _______________________________^ 207 | | 0xba, 0xbc, 0xc0, 0x71, 0xcd, 0x3b, 0xfd, 0x9a, 0x32, 0x19, 0x7e, 0xeb, 0x8a, 0xa7, 208 | | 0x6e, 0xd4, 0xac, 0xcb, 0x59, 0xc2, 0x54, 0x26, 0xc6, 0xab, 0x71, 0xc7, 0xc3, 0x72, 209 | | 0xc, 0xa9, 0xad, 0xa4, 0xad, 0x8c, 0x9e, 0x35, 0x7b, 0x4c, 0x5d, 0xc7, 0x66, 0x12, ... | 212 | | 0x83, 0xe8, 0x92, 0x18, 0x28, 0x70, 0x1e, 0x81, 0x76, 0x56, 0xb6, 0x15, 213 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 206 ~ let invalid_padding = [0xba, 0xbc, 0xc0, 0x71, 0xcd, 0x3b, 0xfd, 0x9a, 0x32, 0x19, 0x7e, 0xeb, 0x8a, 0xa7, 207 + 0x6e, 0xd4, 0xac, 0xcb, 0x59, 0xc2, 0x54, 0x26, 0xc6, 0xab, 0x71, 0xc7, 0xc3, 0x72, 208 + 0xc, 0xa9, 0xad, 0xa4, 0xad, 0x8c, 0x9e, 0x35, 0x7b, 0x4c, 0x5d, 0xc7, 0x66, 0x12, 209 + 0x8a, 0xc5, 0x42, 0x89, 0xc1, 0x77, 0x32, 0xdc, 0xe8, 0x4b, 0x51, 0x31, 0x30, 0x3, 210 + 0x20, 0xe3, 0xb6, 0x8c, 0xbb, 0xab, 0xe8, 0x89, 0xf8, 0xed, 0xac, 0x6d, 0x8e, 0xb1, 211 ~ 0x83, 0xe8, 0x92, 0x18, 0x28, 0x70, 0x1e, 0x81, 0x76, 0x56, 0xb6, 0x15]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/fvk.rs#L309
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/fvk.rs:309:23 | 309 | let encoded = vec![ | _______________________^ 310 | | 0xc4, 0x70, 0xc8, 0x7a, 0xcc, 0xe6, 0x6b, 0x1a, 0x62, 0xc7, 0xcd, 0x5f, 0x76, 0xd8, 311 | | 0xcc, 0x9c, 0x50, 0xbd, 0xce, 0x85, 0x80, 0xd7, 0x78, 0x25, 0x3e, 0x47, 0x9, 0x57, 312 | | 0x7d, 0x6a, 0xdb, 0x10, 0xb4, 0x11, 0x80, 0x13, 0x4c, 0x83, 0x76, 0xb4, 0x6b, 0xbd, ... | 315 | | 0xf4, 0xf5, 0x16, 0xef, 0x5c, 0xe0, 0x26, 0xbc, 0x23, 0x73, 0x76, 0x3f, 0x4b, 316 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 309 ~ let encoded = [0xc4, 0x70, 0xc8, 0x7a, 0xcc, 0xe6, 0x6b, 0x1a, 0x62, 0xc7, 0xcd, 0x5f, 0x76, 0xd8, 310 + 0xcc, 0x9c, 0x50, 0xbd, 0xce, 0x85, 0x80, 0xd7, 0x78, 0x25, 0x3e, 0x47, 0x9, 0x57, 311 + 0x7d, 0x6a, 0xdb, 0x10, 0xb4, 0x11, 0x80, 0x13, 0x4c, 0x83, 0x76, 0xb4, 0x6b, 0xbd, 312 + 0xef, 0x83, 0x5c, 0xa7, 0x68, 0xe6, 0xba, 0x41, 0x12, 0xbd, 0x43, 0x24, 0xf5, 0xaa, 313 + 0xa0, 0xf5, 0xf8, 0xe1, 0x59, 0xa0, 0x95, 0x85, 0x86, 0xf1, 0x9e, 0xcf, 0x8f, 0x94, 314 ~ 0xf4, 0xf5, 0x16, 0xef, 0x5c, 0xe0, 0x26, 0xbc, 0x23, 0x73, 0x76, 0x3f, 0x4b]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/fvk.rs#L279
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/fvk.rs:279:48 | 279 | let truncated_after_sapling_typecode = vec![ | ________________________________________________^ 280 | | 0xac, 0x26, 0x5b, 0x19, 0x8f, 0x88, 0xb0, 0x7, 0xb3, 0x0, 0x91, 0x19, 0x52, 0xe1, 0x73, 281 | | 0x48, 0xff, 0x66, 0x7a, 0xef, 0xcf, 0x57, 0x9c, 0x65, 0xe4, 0x6a, 0x7a, 0x1d, 0x19, 282 | | 0x75, 0x6b, 0x43, 0xdd, 0xcf, 0xb9, 0x9a, 0xf3, 0x7a, 0xf8, 0xb, 0x23, 0x96, 0x64, ... | 286 | | 0x54, 0xd1, 0x9e, 0xec, 0x8b, 0xef, 0x35, 0xb8, 0x44, 0xdd, 0xab, 0x9a, 0x8d, 287 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 279 ~ let truncated_after_sapling_typecode = [0xac, 0x26, 0x5b, 0x19, 0x8f, 0x88, 0xb0, 0x7, 0xb3, 0x0, 0x91, 0x19, 0x52, 0xe1, 0x73, 280 + 0x48, 0xff, 0x66, 0x7a, 0xef, 0xcf, 0x57, 0x9c, 0x65, 0xe4, 0x6a, 0x7a, 0x1d, 0x19, 281 + 0x75, 0x6b, 0x43, 0xdd, 0xcf, 0xb9, 0x9a, 0xf3, 0x7a, 0xf8, 0xb, 0x23, 0x96, 0x64, 282 + 0x8c, 0x57, 0x56, 0x67, 0x9, 0x40, 0x35, 0xcb, 0xb1, 0xa4, 0x91, 0x4f, 0xdc, 0x39, 0x0, 283 + 0x98, 0x56, 0xa8, 0xf7, 0x25, 0x1a, 0xc8, 0xbc, 0xd7, 0xb3, 0xb0, 0xfa, 0x78, 0x6, 284 + 0xe8, 0x50, 0xfe, 0x92, 0xec, 0x5b, 0x1f, 0x74, 0xb9, 0xcf, 0x1f, 0x2e, 0x3b, 0x41, 285 ~ 0x54, 0xd1, 0x9e, 0xec, 0x8b, 0xef, 0x35, 0xb8, 0x44, 0xdd, 0xab, 0x9a, 0x8d]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/fvk.rs#L231
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/fvk.rs:231:33 | 231 | let truncated_padding = vec![ | _________________________________^ 232 | | 0xdf, 0xea, 0x84, 0x55, 0xc3, 0x4a, 0x7c, 0x6e, 0x9f, 0x83, 0x3, 0x21, 0x14, 0xb0, 233 | | 0xcf, 0xb0, 0x60, 0x84, 0x75, 0x3a, 0xdc, 0xb9, 0x93, 0x16, 0xc0, 0x8f, 0x28, 0x5f, 234 | | 0x61, 0x5e, 0xf0, 0x8e, 0x44, 0xae, 0xa6, 0x74, 0xc5, 0x64, 0xad, 0xfa, 0xdc, 0x7d, ... | 239 | | 0x43, 0x8e, 0xc0, 0x3e, 0x9f, 0xf4, 0xf1, 0x80, 0x32, 0xcf, 0x2f, 0x7e, 0x7f, 0x91, 240 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 231 ~ let truncated_padding = [0xdf, 0xea, 0x84, 0x55, 0xc3, 0x4a, 0x7c, 0x6e, 0x9f, 0x83, 0x3, 0x21, 0x14, 0xb0, 232 + 0xcf, 0xb0, 0x60, 0x84, 0x75, 0x3a, 0xdc, 0xb9, 0x93, 0x16, 0xc0, 0x8f, 0x28, 0x5f, 233 + 0x61, 0x5e, 0xf0, 0x8e, 0x44, 0xae, 0xa6, 0x74, 0xc5, 0x64, 0xad, 0xfa, 0xdc, 0x7d, 234 + 0x64, 0x2a, 0x9, 0x47, 0x16, 0xf6, 0x5d, 0x8e, 0x46, 0xc4, 0xf0, 0x54, 0xfa, 0x5, 0x28, 235 + 0x1e, 0x3d, 0x7d, 0x37, 0xa5, 0x9f, 0x8b, 0x62, 0x78, 0xf6, 0x50, 0x18, 0x63, 0xe4, 236 + 0x51, 0x14, 0xae, 0x89, 0x41, 0x86, 0xd4, 0x9f, 0x10, 0x4b, 0x66, 0x2b, 0xf9, 0x46, 237 + 0x9c, 0xeb, 0xe8, 0x90, 0x8, 0xad, 0xd9, 0x6c, 0x6a, 0xf1, 0xed, 0xeb, 0x72, 0x44, 238 ~ 0x43, 0x8e, 0xc0, 0x3e, 0x9f, 0xf4, 0xf1, 0x80, 0x32, 0xcf, 0x2f, 0x7e, 0x7f, 0x91]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/fvk.rs#L213
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/fvk.rs:213:31 | 213 | let invalid_padding = vec![ | _______________________________^ 214 | | 0x6b, 0x32, 0x44, 0xf1, 0xb, 0x67, 0xe9, 0x8f, 0x6, 0x57, 0xe3, 0x5, 0x17, 0xa0, 0x7, 215 | | 0x5c, 0xb0, 0xc9, 0x23, 0xcc, 0xb7, 0x54, 0xac, 0x55, 0x6a, 0x65, 0x99, 0x95, 0x32, 216 | | 0x97, 0xd5, 0x34, 0xa7, 0xc8, 0x6f, 0xc, 0xd7, 0x3b, 0xe0, 0x88, 0x19, 0xf3, 0x3e, ... | 221 | | 0xdf, 0x63, 0xe7, 0xef, 0x65, 0x6b, 0x18, 0x23, 0xf7, 0x3e, 0x35, 0x7c, 0xf3, 0xc4, 222 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 213 ~ let invalid_padding = [0x6b, 0x32, 0x44, 0xf1, 0xb, 0x67, 0xe9, 0x8f, 0x6, 0x57, 0xe3, 0x5, 0x17, 0xa0, 0x7, 214 + 0x5c, 0xb0, 0xc9, 0x23, 0xcc, 0xb7, 0x54, 0xac, 0x55, 0x6a, 0x65, 0x99, 0x95, 0x32, 215 + 0x97, 0xd5, 0x34, 0xa7, 0xc8, 0x6f, 0xc, 0xd7, 0x3b, 0xe0, 0x88, 0x19, 0xf3, 0x3e, 216 + 0x26, 0x19, 0xd6, 0x5f, 0x9a, 0x62, 0xc9, 0x6f, 0xad, 0x3b, 0xe5, 0xdd, 0xf1, 0xff, 217 + 0x5b, 0x4a, 0x13, 0x61, 0xc0, 0xd5, 0xa5, 0x87, 0xc5, 0x69, 0x48, 0xdb, 0x7e, 0xc6, 218 + 0x4e, 0xb0, 0x55, 0x41, 0x3f, 0xc0, 0x53, 0xbb, 0x79, 0x8b, 0x24, 0xa0, 0xfa, 0xd1, 219 + 0x6e, 0xea, 0x9, 0xea, 0xb3, 0xaf, 0x0, 0x7d, 0x86, 0x47, 0xdb, 0x8b, 0x38, 0xdd, 0x7b, 220 ~ 0xdf, 0x63, 0xe7, 0xef, 0x65, 0x6b, 0x18, 0x23, 0xf7, 0x3e, 0x35, 0x7c, 0xf3, 0xc4]; |
useless use of `vec!`: components/zcash_address/src/kind/unified/address.rs#L299
warning: useless use of `vec!` --> components/zcash_address/src/kind/unified/address.rs:299:23 | 299 | let encoded = vec![ | _______________________^ 300 | | 0xf0, 0x9e, 0x9d, 0x6e, 0xf5, 0xa6, 0xac, 0x16, 0x50, 0xf0, 0xdb, 0xe1, 0x2c, 0xa5, 301 | | 0x36, 0x22, 0xa2, 0x04, 0x89, 0x86, 0xe9, 0x6a, 0x9b, 0xf3, 0xff, 0x6d, 0x2f, 0xe6, 302 | | 0xea, 0xdb, 0xc5, 0x20, 0x62, 0xf9, 0x6f, 0xa9, 0x86, 0xcc, 303 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec = note: `-W clippy::useless-vec` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_vec)]` help: you can use an array directly | 299 ~ let encoded = [0xf0, 0x9e, 0x9d, 0x6e, 0xf5, 0xa6, 0xac, 0x16, 0x50, 0xf0, 0xdb, 0xe1, 0x2c, 0xa5, 300 + 0x36, 0x22, 0xa2, 0x04, 0x89, 0x86, 0xe9, 0x6a, 0x9b, 0xf3, 0xff, 0x6d, 0x2f, 0xe6, 301 ~ 0xea, 0xdb, 0xc5, 0x20, 0x62, 0xf9, 0x6f, 0xa9, 0x86, 0xcc]; |
the following explicit lifetimes could be elided: 'a: zcash_extensions/src/transparent/demo.rs#L104
warning: the following explicit lifetimes could be elided: 'a --> zcash_extensions/src/transparent/demo.rs:104:12 | 104 | fn fmt<'a>(&self, f: &mut fmt::Formatter<'a>) -> fmt::Result { | ^^ ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 104 - fn fmt<'a>(&self, f: &mut fmt::Formatter<'a>) -> fmt::Result { 104 + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { |
the following explicit lifetimes could be elided: 'a: zcash_extensions/src/consensus/transparent.rs#L103
warning: the following explicit lifetimes could be elided: 'a --> zcash_extensions/src/consensus/transparent.rs:103:15 | 103 | fn verify<'a>( | ^^ ... 107 | ctx: &Context<'a>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 103 ~ fn verify( 104 | &self, 105 | precondition: &Precondition, 106 | witness: &Witness<AuthData>, 107 ~ ctx: &Context<'_>, |
the following explicit lifetimes could be elided: 'a: zcash_extensions/src/consensus/transparent.rs#L69
warning: the following explicit lifetimes could be elided: 'a --> zcash_extensions/src/consensus/transparent.rs:69:15 | 69 | fn verify<'a>( | ^^ ... 73 | ctx: &Context<'a>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 69 ~ fn verify( 70 | &self, 71 | precondition: &Precondition, 72 | witness: &Witness<AuthData>, 73 ~ ctx: &Context<'_>, |
accessing first element with `cb2.vtx.get(0)`: zcash_client_sqlite/src/lib.rs#L1302
warning: accessing first element with `cb2.vtx.get(0)` --> zcash_client_sqlite/src/lib.rs:1302:21 | 1302 | let txid2 = cb2.vtx.get(0).unwrap().txid(); | ^^^^^^^^^^^^^^ help: try: `cb2.vtx.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
accessing first element with `cb.vtx.get(0)`: zcash_client_sqlite/src/lib.rs#L1295
warning: accessing first element with `cb.vtx.get(0)` --> zcash_client_sqlite/src/lib.rs:1295:20 | 1295 | let txid = cb.vtx.get(0).unwrap().txid(); | ^^^^^^^^^^^^^ help: try: `cb.vtx.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `-W clippy::get-first` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::get_first)]`
accessing first element with `peaks.get(0)`: zcash_history/src/tree.rs#L248
warning: accessing first element with `peaks.get(0)` --> zcash_history/src/tree.rs:248:29 | 248 | let mut new_root = *peaks.get(0).expect("At lest 1 elements in peaks"); | ^^^^^^^^^^^^ help: try: `peaks.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `-W clippy::get-first` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::get_first)]`
redundant pattern matching, consider using `is_err()`: zcash_client_sqlite/src/wallet.rs#L1425
warning: redundant pattern matching, consider using `is_err()` --> zcash_client_sqlite/src/wallet.rs:1425:17 | 1425 | assert!(matches!(res2, Err(_))); | ^^^^^^^^^^^^^^^^^^^^^^ help: try: `res2.is_err()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching
the borrowed expression implements the required traits: zcash_history/src/node_data.rs#L251
warning: the borrowed expression implements the required traits --> zcash_history/src/node_data.rs:251:59 | 251 | TestResult::from_bool(NodeData::from_bytes(0, &node_data.to_bytes()).unwrap() == node_data) | ^^^^^^^^^^^^^^^^^^^^^ help: change this to: `node_data.to_bytes()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args = note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
redundant pattern matching, consider using `is_ok()`: zcash_client_sqlite/src/wallet.rs#L1377
warning: redundant pattern matching, consider using `is_ok()` --> zcash_client_sqlite/src/wallet.rs:1377:17 | 1377 | assert!(matches!(res0, Ok(_))); | ^^^^^^^^^^^^^^^^^^^^^ help: try: `res0.is_ok()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1278
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1278:31 | 1278 | pub(crate) fn put_sent_output<'a, P: consensus::Parameters>( | ^^ 1279 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1278 ~ pub(crate) fn put_sent_output<P: consensus::Parameters>( 1279 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1258
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1258:34 | 1258 | pub(crate) fn insert_sent_output<'a, P: consensus::Parameters>( | ^^ 1259 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1258 ~ pub(crate) fn insert_sent_output<P: consensus::Parameters>( 1259 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1223
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1223:23 | 1223 | pub fn insert_witness<'a, P>( | ^^ 1224 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1223 ~ pub fn insert_witness<P>( 1224 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1174
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1174:26 | 1174 | pub fn put_received_note<'a, P, T: ShieldedOutput>( | ^^ 1175 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1174 ~ pub fn put_received_note<P, T: ShieldedOutput>( 1175 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1125
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1125:45 | 1125 | pub(crate) fn put_received_transparent_utxo<'a, P: consensus::Parameters>( | ^^ 1126 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1125 ~ pub(crate) fn put_received_transparent_utxo<P: consensus::Parameters>( 1126 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1113
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1113:43 | 1113 | pub(crate) fn mark_transparent_utxo_spent<'a, P>( | ^^ 1114 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1113 ~ pub(crate) fn mark_transparent_utxo_spent<P>( 1114 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1102
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1102:32 | 1102 | pub fn mark_sapling_note_spent<'a, P>( | ^^ 1103 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1102 ~ pub fn mark_sapling_note_spent<P>( 1103 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1074
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1074:20 | 1074 | pub fn put_tx_data<'a, P>( | ^^ 1075 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1074 ~ pub fn put_tx_data<P>( 1075 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1056
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1056:20 | 1056 | pub fn put_tx_meta<'a, P, N>( | ^^ 1057 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1056 ~ pub fn put_tx_meta<P, N>( 1057 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1041
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1041:21 | 1041 | pub fn insert_block<'a, P>( | ^^ 1042 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 1041 ~ pub fn insert_block<P>( 1042 ~ stmts: &mut DataConnStmtCache<'_, P>, |
redundant pattern matching, consider using `is_ok()`: zcash_client_sqlite/src/wallet/transact.rs#L726
warning: redundant pattern matching, consider using `is_ok()` --> zcash_client_sqlite/src/wallet/transact.rs:726:17 | 726 | assert!(matches!( | _________________^ 727 | | create_spend_to_address( 728 | | &mut db_write, 729 | | &tests::network(), ... | 738 | | Ok(_) 739 | | )); | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching help: try | 726 ~ assert!(create_spend_to_address( 727 + &mut db_write, 728 + &tests::network(), 729 + test_prover(), 730 + &usk, 731 + &to, 732 + Amount::from_u64(50000).unwrap(), 733 + None, 734 + OvkPolicy::Sender, 735 + 10, 736 ~ ).is_ok()); |
redundant pattern matching, consider using `is_ok()`: zcash_client_sqlite/src/wallet/transact.rs#L485
warning: redundant pattern matching, consider using `is_ok()` --> zcash_client_sqlite/src/wallet/transact.rs:485:17 | 485 | assert!(matches!( | _________________^ 486 | | create_spend_to_address( 487 | | &mut db_write, 488 | | &tests::network(), ... | 497 | | Ok(_) 498 | | )); | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching help: try | 485 ~ assert!(create_spend_to_address( 486 + &mut db_write, 487 + &tests::network(), 488 + test_prover(), 489 + &usk, 490 + &to, 491 + Amount::from_u64(15000).unwrap(), 492 + None, 493 + OvkPolicy::Sender, 494 + 10, 495 ~ ).is_ok()); |
redundant pattern matching, consider using `is_ok()`: zcash_client_sqlite/src/wallet/transact.rs#L437
warning: redundant pattern matching, consider using `is_ok()` --> zcash_client_sqlite/src/wallet/transact.rs:437:17 | 437 | assert!(matches!( | _________________^ 438 | | create_spend_to_address( 439 | | &mut db_write, 440 | | &tests::network(), ... | 449 | | Ok(_) 450 | | )); | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pattern_matching = note: `-W clippy::redundant-pattern-matching` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::redundant_pattern_matching)]` help: try | 437 ~ assert!(create_spend_to_address( 438 + &mut db_write, 439 + &tests::network(), 440 + test_prover(), 441 + &usk, 442 + &to, 443 + Amount::from_u64(70000).unwrap(), 444 + None, 445 + OvkPolicy::Sender, 446 + 10, 447 ~ ).is_ok()); |
useless use of `vec!`: zcash_client_sqlite/src/wallet/init.rs#L453
warning: useless use of `vec!` --> zcash_client_sqlite/src/wallet/init.rs:453:30 | 453 | let expected_views = vec![ | ______________________________^ 454 | | // v_transactions 455 | | "CREATE VIEW v_transactions AS 456 | | SELECT notes.id_tx, ... | 568 | | GROUP BY sent_notes.tx, sent_notes.from_account", 569 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec help: you can use an array directly | 453 ~ let expected_views = ["CREATE VIEW v_transactions AS 454 + SELECT notes.id_tx, 455 + notes.mined_height, 456 + notes.tx_index, 457 + notes.txid, 458 + notes.expiry_height, 459 + notes.raw, 460 + SUM(notes.value) + MAX(notes.fee) AS net_value, 461 + MAX(notes.fee) AS fee_paid, 462 + SUM(notes.sent_count) == 0 AS is_wallet_internal, 463 + SUM(notes.is_change) > 0 AS has_change, 464 + SUM(notes.sent_count) AS sent_note_count, 465 + SUM(notes.received_count) AS received_note_count, 466 + SUM(notes.memo_present) AS memo_count, 467 + blocks.time AS block_time 468 + FROM ( 469 + SELECT transactions.id_tx AS id_tx, 470 + transactions.block AS mined_height, 471 + transactions.tx_index AS tx_index, 472 + transactions.txid AS txid, 473 + transactions.expiry_height AS expiry_height, 474 + transactions.raw AS raw, 475 + 0 AS fee, 476 + CASE 477 + WHEN received_notes.is_change THEN 0 478 + ELSE value 479 + END AS value, 480 + 0 AS sent_count, 481 + CASE 482 + WHEN received_notes.is_change THEN 1 483 + ELSE 0 484 + END AS is_change, 485 + CASE 486 + WHEN received_notes.is_change THEN 0 487 + ELSE 1 488 + END AS received_count, 489 + CASE 490 + WHEN received_notes.memo IS NULL THEN 0 491 + ELSE 1 492 + END AS memo_present 493 + FROM transactions 494 + JOIN received_notes ON transactions.id_tx = received_notes.tx 495 + UNION 496 + SELECT transactions.id_tx AS id_tx, 497 + transactions.block AS mined_height, 498 + transactions.tx_index AS tx_index, 499 + transactions.txid AS txid, 500 + transactions.expiry_height AS expiry_height, 501 + transactions.raw AS raw, 502 + transactions.fee AS fee, 503 + -sent_notes.value AS value, 504 + CASE 505 + WHEN sent_notes.from_account = sent_notes.to_account THEN 0 506 + ELSE 1 507 + END AS sent_count, 508 + 0 AS is_change, 509 + 0 AS received_count, 510 + CASE 511 + WHEN sent_notes.memo IS NULL THEN 0 512 + ELSE 1 513 + END AS memo_present 514 + FROM transactions 515 + JOIN sent_notes ON transactions.id_tx = sent_notes.tx 516 + ) AS notes 517 + LEFT JOIN blocks ON notes.mined_height = blocks.height 518 + GROUP BY notes.id_tx", 519 + // v_tx_received 520 + "CREATE VIEW v_tx_received AS 521 + SELECT transactions.id_tx AS id_tx, 522 + transactions.block AS mined_height, 523 + transactions.tx_index AS tx_index, 524 + transactions.txid AS txid, 525 + transactions.expiry_height AS expiry_height, 526 + transactions.raw AS raw, 527 + MAX(received_notes.account) AS received_by_account, 528 + SUM(received_notes.value) AS received_total, 529 + COUNT(received_notes.id_note) AS received_note_count, 530 + SUM( 531 + CASE 532 + WHEN received_notes.memo IS NULL THEN 0 533 + ELSE 1 534 + END 535 + ) AS memo_count, 536 + blocks.time AS block_time 537 + FROM transactions 538 + JOIN received_notes 539 + ON transactions.id_tx = received_notes.tx 540 + LEFT JOIN blocks 541 + ON transactions.block = blocks.height 542 + GROUP BY received_notes.tx, received_notes.account", 543 + // v_tx_received 544 + "CREATE VIEW v_tx_sent AS 545 + SELECT transactions.id_tx AS id_tx, 546 + transactions.block AS mined_height, 547 + transactions.tx_index AS tx_index, 548 + transactions.txid AS txid, 549 + transactions.expiry_height AS expiry_height, 550 + transactions.raw AS raw, 551 + MAX(sent_notes.from_account) AS sent_from_account, 552 + SUM(sent_notes.value) AS sent_total, 553 + COUNT(sent_notes.id_note) AS sent_note_count, 554 + SUM( 555 + CASE 556 + WHEN sent_notes.memo IS NULL THEN 0 557 + ELSE 1 558 + END 559 + ) AS memo_count, 560 + blocks.time AS block_time 561 + FROM transactions 562 + JOIN sent_notes 563 + ON transactions.id_tx = sent_notes.tx 564 + LEFT JOIN blocks 565 + ON transactions.block = blocks.height 566 ~ GROUP BY sent_notes.tx, sent_notes.from_account"]; |
useless use of `vec!`: zcash_client_sqlite/src/wallet/init.rs#L345
warning: useless use of `vec!` --> zcash_client_sqlite/src/wallet/init.rs:345:31 | 345 | let expected_tables = vec![ | _______________________________^ 346 | | "CREATE TABLE \"accounts\" ( 347 | | account INTEGER PRIMARY KEY, 348 | | ufvk TEXT NOT NULL ... | 435 | | )", 436 | | ]; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec = note: `-W clippy::useless-vec` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_vec)]` help: you can use an array directly | 345 ~ let expected_tables = ["CREATE TABLE \"accounts\" ( 346 + account INTEGER PRIMARY KEY, 347 + ufvk TEXT NOT NULL 348 + )", 349 + "CREATE TABLE addresses ( 350 + account INTEGER NOT NULL, 351 + diversifier_index_be BLOB NOT NULL, 352 + address TEXT NOT NULL, 353 + cached_transparent_receiver_address TEXT, 354 + FOREIGN KEY (account) REFERENCES accounts(account), 355 + CONSTRAINT diversification UNIQUE (account, diversifier_index_be) 356 + )", 357 + "CREATE TABLE blocks ( 358 + height INTEGER PRIMARY KEY, 359 + hash BLOB NOT NULL, 360 + time INTEGER NOT NULL, 361 + sapling_tree BLOB NOT NULL 362 + )", 363 + "CREATE TABLE received_notes ( 364 + id_note INTEGER PRIMARY KEY, 365 + tx INTEGER NOT NULL, 366 + output_index INTEGER NOT NULL, 367 + account INTEGER NOT NULL, 368 + diversifier BLOB NOT NULL, 369 + value INTEGER NOT NULL, 370 + rcm BLOB NOT NULL, 371 + nf BLOB NOT NULL UNIQUE, 372 + is_change INTEGER NOT NULL, 373 + memo BLOB, 374 + spent INTEGER, 375 + FOREIGN KEY (tx) REFERENCES transactions(id_tx), 376 + FOREIGN KEY (account) REFERENCES accounts(account), 377 + FOREIGN KEY (spent) REFERENCES transactions(id_tx), 378 + CONSTRAINT tx_output UNIQUE (tx, output_index) 379 + )", 380 + "CREATE TABLE sapling_witnesses ( 381 + id_witness INTEGER PRIMARY KEY, 382 + note INTEGER NOT NULL, 383 + block INTEGER NOT NULL, 384 + witness BLOB NOT NULL, 385 + FOREIGN KEY (note) REFERENCES received_notes(id_note), 386 + FOREIGN KEY (block) REFERENCES blocks(height), 387 + CONSTRAINT witness_height UNIQUE (note, block) 388 + )", 389 + "CREATE TABLE schemer_migrations ( 390 + id blob PRIMARY KEY 391 + )", 392 + "CREATE TABLE \"sent_notes\" ( 393 + id_note INTEGER PRIMARY KEY, 394 + tx INTEGER NOT NULL, 395 + output_pool INTEGER NOT NULL, 396 + output_index INTEGER NOT NULL, 397 + from_account INTEGER NOT NULL, 398 + to_address TEXT, 399 + to_account INTEGER, 400 + value INTEGER NOT NULL, 401 + memo BLOB, 402 + FOREIGN KEY (tx) REFERENCES transactions(id_tx), 403 + FOREIGN KEY (from_account) REFERENCES accounts(account), 404 + FOREIGN KEY (to_account) REFERENCES accounts(account), 405 + CONSTRAINT tx_output UNIQUE (tx, output_pool, output_index), 406 + CONSTRAINT note_recipient CHECK ( 407 + (to_address IS NOT NULL) != (to_account IS NOT NULL) 408 + ) 409 + )", 410 + "CREATE TABLE transactions ( 411 + id_tx INTEGER PRIMARY KEY, 412 + txid BLOB NOT NULL UNIQUE, 413 + created TEXT, 414 + block INTEGER, 415 + tx_index INTEGER, 416 + expiry_height INTEGER, 417 + raw BLOB, 418 + fee INTEGER, 419 + FOREIGN KEY (block) REFERENCES blocks(height) 420 + )", 421 + "CREATE TABLE \"utxos\" ( 422 + id_utxo INTEGER PRIMARY KEY, 423 + received_by_account INTEGER NOT NULL, 424 + address TEXT NOT NULL, 425 + prevout_txid BLOB NOT NULL, 426 + prevout_idx INTEGER NOT NULL, 427 + script BLOB NOT NULL, 428 + value_zat INTEGER NOT NULL, 429 + height INTEGER NOT NULL, 430 + spent_in_tx INTEGER, 431 + FOREIGN KEY (received_by_account) REFERENCES accounts(account), 432 + FOREIGN KEY (spent_in_tx) REFERENCES transactions(id_tx), 433 + CONSTRAINT tx_outpoint UNIQUE (prevout_txid, prevout_idx) 434 ~ )"]; |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1278
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1278:31 | 1278 | pub(crate) fn put_sent_output<'a, P: consensus::Parameters>( | ^^ 1279 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1278 ~ pub(crate) fn put_sent_output<P: consensus::Parameters>( 1279 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1258
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1258:34 | 1258 | pub(crate) fn insert_sent_output<'a, P: consensus::Parameters>( | ^^ 1259 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1258 ~ pub(crate) fn insert_sent_output<P: consensus::Parameters>( 1259 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1223
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1223:23 | 1223 | pub fn insert_witness<'a, P>( | ^^ 1224 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1223 ~ pub fn insert_witness<P>( 1224 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1174
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1174:26 | 1174 | pub fn put_received_note<'a, P, T: ShieldedOutput>( | ^^ 1175 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1174 ~ pub fn put_received_note<P, T: ShieldedOutput>( 1175 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1125
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1125:45 | 1125 | pub(crate) fn put_received_transparent_utxo<'a, P: consensus::Parameters>( | ^^ 1126 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1125 ~ pub(crate) fn put_received_transparent_utxo<P: consensus::Parameters>( 1126 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1113
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1113:43 | 1113 | pub(crate) fn mark_transparent_utxo_spent<'a, P>( | ^^ 1114 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1113 ~ pub(crate) fn mark_transparent_utxo_spent<P>( 1114 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1102
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1102:32 | 1102 | pub fn mark_sapling_note_spent<'a, P>( | ^^ 1103 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1102 ~ pub fn mark_sapling_note_spent<P>( 1103 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1074
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1074:20 | 1074 | pub fn put_tx_data<'a, P>( | ^^ 1075 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1074 ~ pub fn put_tx_data<P>( 1075 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1056
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1056:20 | 1056 | pub fn put_tx_meta<'a, P, N>( | ^^ 1057 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 1056 ~ pub fn put_tx_meta<P, N>( 1057 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the following explicit lifetimes could be elided: 'a: zcash_client_sqlite/src/wallet.rs#L1041
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_sqlite/src/wallet.rs:1041:21 | 1041 | pub fn insert_block<'a, P>( | ^^ 1042 | stmts: &mut DataConnStmtCache<'a, P>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 1041 ~ pub fn insert_block<P>( 1042 ~ stmts: &mut DataConnStmtCache<'_, P>, |
the borrowed expression implements the required traits: zcash_history/examples/write.rs#L35
warning: the borrowed expression implements the required traits --> zcash_history/examples/write.rs:35:46 | 35 | let mut file = std::fs::File::create(&out_file_path).expect("Failed to create output file"); | ^^^^^^^^^^^^^^ help: change this to: `out_file_path` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args = note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
accessing first element with `v4r.payments.get(0)`: zcash_client_backend/src/zip321.rs#L881
warning: accessing first element with `v4r.payments.get(0)` --> zcash_client_backend/src/zip321.rs:881:13 | 881 | v4r.payments.get(0).map(|p| p.amount), | ^^^^^^^^^^^^^^^^^^^ help: try: `v4r.payments.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
accessing first element with `v3r.payments.get(0)`: zcash_client_backend/src/zip321.rs#L872
warning: accessing first element with `v3r.payments.get(0)` --> zcash_client_backend/src/zip321.rs:872:13 | 872 | v3r.payments.get(0).map(|p| p.amount), | ^^^^^^^^^^^^^^^^^^^ help: try: `v3r.payments.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
accessing first element with `v2r.payments.get(0)`: zcash_client_backend/src/zip321.rs#L859
warning: accessing first element with `v2r.payments.get(0)` --> zcash_client_backend/src/zip321.rs:859:13 | 859 | v2r.payments.get(0).map(|p| p.amount), | ^^^^^^^^^^^^^^^^^^^ help: try: `v2r.payments.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
accessing first element with `v1r.payments.get(0)`: zcash_client_backend/src/zip321.rs#L851
warning: accessing first element with `v1r.payments.get(0)` --> zcash_client_backend/src/zip321.rs:851:13 | 851 | v1r.payments.get(0).map(|p| p.amount), | ^^^^^^^^^^^^^^^^^^^ help: try: `v1r.payments.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `-W clippy::get-first` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::get_first)]`
the following explicit lifetimes could be elided: 'a: zcash_client_backend/src/zip321.rs#L586
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_backend/src/zip321.rs:586:25 | 586 | fn to_indexed_param<'a, P: consensus::Parameters>( | ^^ 587 | params: &'a P, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 586 ~ fn to_indexed_param<P: consensus::Parameters>( 587 ~ params: &P, |
accessing first element with `peaks.get(0)`: zcash_history/src/tree.rs#L248
warning: accessing first element with `peaks.get(0)` --> zcash_history/src/tree.rs:248:29 | 248 | let mut new_root = *peaks.get(0).expect("At lest 1 elements in peaks"); | ^^^^^^^^^^^^ help: try: `peaks.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `-W clippy::get-first` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::get_first)]`
the following explicit lifetimes could be elided: 'a: zcash_client_backend/src/zip321.rs#L586
warning: the following explicit lifetimes could be elided: 'a --> zcash_client_backend/src/zip321.rs:586:25 | 586 | fn to_indexed_param<'a, P: consensus::Parameters>( | ^^ 587 | params: &'a P, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 586 ~ fn to_indexed_param<P: consensus::Parameters>( 587 ~ params: &P, |
the borrowed expression implements the required traits: zcash_proofs/src/lib.rs#L367
warning: the borrowed expression implements the required traits --> zcash_proofs/src/lib.rs:367:37 | 367 | VerifyingKey::<Bls12>::read(&mut fs) | ^^^^^^^ help: change this to: `fs` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args = note: `-W clippy::needless-borrows-for-generic-args` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrows_for_generic_args)]`
using `clone` on type `SubgroupPoint` which implements the `Copy` trait: zcash_proofs/src/sapling/zip304.rs#L322
warning: using `clone` on type `SubgroupPoint` which implements the `Copy` trait --> zcash_proofs/src/sapling/zip304.rs:322:15 | 322 | pk_d: payment_address.pk_d().clone(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*payment_address.pk_d()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `SubgroupPoint` which implements the `Copy` trait: zcash_proofs/src/sapling/zip304.rs#L216
warning: using `clone` on type `SubgroupPoint` which implements the `Copy` trait --> zcash_proofs/src/sapling/zip304.rs:216:19 | 216 | PublicKey(proof_generation_key.ak.clone().into()).randomize(alpha, SPENDING_KEY_GENERATOR); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `proof_generation_key.ak` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `SubgroupPoint` which implements the `Copy` trait: zcash_proofs/src/sapling/zip304.rs#L184
warning: using `clone` on type `SubgroupPoint` which implements the `Copy` trait --> zcash_proofs/src/sapling/zip304.rs:184:15 | 184 | pk_d: payment_address.pk_d().clone(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*payment_address.pk_d()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy = note: `-W clippy::clone-on-copy` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::clone_on_copy)]`
dereferencing a tuple pattern where every element takes a reference: zcash_proofs/src/circuit/sprout/input.rs#L69
warning: dereferencing a tuple pattern where every element takes a reference --> zcash_proofs/src/circuit/sprout/input.rs:69:37 | 69 | layer.as_ref().map(|&(ref sibling, _)| &sibling[..]), | ^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrowed_reference = note: `-W clippy::needless-borrowed-reference` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrowed_reference)]` help: try removing the `&` and `ref` parts | 69 - layer.as_ref().map(|&(ref sibling, _)| &sibling[..]), 69 + layer.as_ref().map(|(sibling, _)| &sibling[..]), |
accessing first element with `chunk.get(0)`: zcash_proofs/src/circuit/ecc.rs#L39
warning: accessing first element with `chunk.get(0)` --> zcash_proofs/src/circuit/ecc.rs:39:23 | 39 | let chunk_a = chunk | _______________________^ 40 | | .get(0) | |___________________^ help: try: `chunk.first()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first = note: `-W clippy::get-first` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::get_first)]`
constants have by default a `'static` lifetime: zcash_proofs/src/sapling/zip304.rs#L27
warning: constants have by default a `'static` lifetime --> zcash_proofs/src/sapling/zip304.rs:27:39 | 27 | const ZIP304_PERSONALIZATION_PREFIX: &'static [u8; 12] = b"ZIP304Signed"; | -^^^^^^^--------- help: consider removing `'static`: `&[u8; 12]` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_static_lifetimes = note: `-W clippy::redundant-static-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::redundant_static_lifetimes)]`
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/transaction/mod.rs#L778
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/transaction/mod.rs:778:18 | 778 | .zip(v_output_proofs.into_iter()) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `v_output_proofs` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/transaction/mod.rs#L768
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/transaction/mod.rs:768:26 | 768 | .zip(v_spend_auth_sigs.into_iter()), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `v_spend_auth_sigs` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
the following explicit lifetimes could be elided: 'a: zcash_primitives/src/transaction/sighash.rs#L79
warning: the following explicit lifetimes could be elided: 'a --> zcash_primitives/src/transaction/sighash.rs:79:5 | 79 | 'a, | ^^ ... 85 | signable_input: &SignableInput<'a>, | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 79 ~ TA: TransparentAuthorizingContext, 80 | SA: sapling::Authorization<Proof = GrothProofBytes>, ... 83 | tx: &TransactionData<A>, 84 ~ signable_input: &SignableInput<'_>, |
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/transaction/components/tze/builder.rs#L181
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/transaction/components/tze/builder.rs:181:22 | 181 | .zip(payloads.into_iter()) | ^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `payloads` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
useless conversion to the same type: `std::iter::Zip<std::vec::IntoIter<transaction::components::tze::builder::TzeSigner<'_, transaction::TransactionData<transaction::Unauthorized>>>, std::slice::Iter<'_, transaction::components::tze::TzeIn<()>>>`: zcash_primitives/src/transaction/components/tze/builder.rs#L159
warning: useless conversion to the same type: `std::iter::Zip<std::vec::IntoIter<transaction::components::tze::builder::TzeSigner<'_, transaction::TransactionData<transaction::Unauthorized>>>, std::slice::Iter<'_, transaction::components::tze::TzeIn<()>>>` --> zcash_primitives/src/transaction/components/tze/builder.rs:159:24 | 159 | let payloads = signers | ________________________^ 160 | | .into_iter() 161 | | .zip(self.vin.iter()) 162 | | .into_iter() | |________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion help: consider removing `.into_iter()` | 159 ~ let payloads = signers 160 + .into_iter() 161 + .zip(self.vin.iter()) |
casting to the same type is unnecessary (`u8` -> `u8`): zcash_primitives/src/transaction/components/transparent/builder.rs#L294
warning: casting to the same type is unnecessary (`u8` -> `u8`) --> zcash_primitives/src/transaction/components/transparent/builder.rs:294:35 | 294 | sig_bytes.extend([SIGHASH_ALL as u8]); | ^^^^^^^^^^^^^^^^^ help: try: `SIGHASH_ALL` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast = note: `-W clippy::unnecessary-cast` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::unnecessary_cast)]`
usage of `Iterator::fold` on a type that implements `Try`: zcash_primitives/src/transaction/components/amount.rs#L196
warning: usage of `Iterator::fold` on a type that implements `Try` --> zcash_primitives/src/transaction/components/amount.rs:196:14 | 196 | iter.fold(Some(Amount::zero()), |acc, a| acc? + *a) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `try_fold` instead: `try_fold(Amount::zero(), |acc, a| ...)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold
usage of `Iterator::fold` on a type that implements `Try`: zcash_primitives/src/transaction/components/amount.rs#L190
warning: usage of `Iterator::fold` on a type that implements `Try` --> zcash_primitives/src/transaction/components/amount.rs:190:14 | 190 | iter.fold(Some(Amount::zero()), |acc, a| acc? + a) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `try_fold` instead: `try_fold(Amount::zero(), |acc, a| ...)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_try_fold = note: `-W clippy::manual-try-fold` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::manual_try_fold)]`
the following explicit lifetimes could be elided: 'a: zcash_primitives/src/sapling/redjubjub.rs#L176
warning: the following explicit lifetimes could be elided: 'a --> zcash_primitives/src/sapling/redjubjub.rs:176:21 | 176 | pub fn batch_verify<'a, R: RngCore>( | ^^ 177 | mut rng: &mut R, 178 | batch: &[BatchEntry<'a>], | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `-W clippy::needless-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_lifetimes)]` help: elide the lifetimes | 176 ~ pub fn batch_verify<R: RngCore>( 177 | mut rng: &mut R, 178 ~ batch: &[BatchEntry<'_>], |
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/sapling/pedersen_hash.rs#L41
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/sapling/pedersen_hash.rs:41:16 | 41 | .chain(bits.into_iter()); | ^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `bits` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:524:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/sapling/note_encryption.rs#L395
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/sapling/note_encryption.rs:395:18 | 395 | .zip(ephemeral_keys.into_iter()) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `ephemeral_keys` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
explicit call to `.into_iter()` in function argument accepting `IntoIterator`: zcash_primitives/src/sapling/note_encryption.rs#L374
warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` --> zcash_primitives/src/sapling/note_encryption.rs:374:18 | 374 | .zip(ephemeral_keys.into_iter()) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing the `.into_iter()`: `ephemeral_keys` | note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` --> /rustc/782883f609713fe9617ba64d90086742ec62d374/library/core/src/iter/traits/iterator.rs:643:12 = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
useless conversion to the same type: `std::ops::Range<u8>`: zcash_primitives/src/merkle_tree.rs#L138
warning: useless conversion to the same type: `std::ops::Range<u8>` --> zcash_primitives/src/merkle_tree.rs:138:26 | 138 | parents: (1..DEPTH) | __________________________^ 139 | | .into_iter() | |________________________________^ help: consider removing `.into_iter()`: `(1..DEPTH)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `-W clippy::useless-conversion` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_conversion)]`
Clippy (beta)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (beta)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Bitrot check
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Bitrot check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Bitrot check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Bitrot check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Bitrot check
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (1.56.1)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Clippy (1.56.1)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (1.56.1)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (1.56.1)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Clippy (1.56.1)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on ubuntu-latest
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Test on ubuntu-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on ubuntu-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on ubuntu-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on ubuntu-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Intra-doc links
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Intra-doc links
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Intra-doc links
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Intra-doc links
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Intra-doc links
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Rustfmt
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Rustfmt
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Rustfmt
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Rustfmt
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Rustfmt
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on macOS-latest
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Test on macOS-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on macOS-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on macOS-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on macOS-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on windows-latest
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Test on windows-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on windows-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on windows-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Test on windows-latest
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Build target wasm32-wasi
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Build target wasm32-wasi
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Build target wasm32-wasi
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Build target wasm32-wasi
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Build target wasm32-wasi
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Code coverage
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
Code coverage
some crates are on edition 2021 which defaults to `resolver = "2"`, but virtual workspaces default to `resolver = "1"`
Code coverage
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Code coverage
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Code coverage
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Code coverage
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
Code coverage
some crates are on edition 2021 which defaults to `resolver = "2"`, but virtual workspaces default to `resolver = "1"`
Code coverage
some crates are on edition 2021 which defaults to `resolver = "2"`, but virtual workspaces default to `resolver = "1"`