refactor: remove expensive clones from verify_consistency_of_operations; convert API to slice #436
grovedb.yml
on: pull_request
Tests
2m 25s
Linting
37s
Formatting
15s
Compilation errors
25s
Dependencies security audit
13s
Annotations
45 warnings
Dependencies security audit
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: styfle/[email protected], actions/checkout@v2, actions-rs/audit-check@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Dependencies security audit
The following actions uses node12 which is deprecated and will be forced to run on node16: styfle/[email protected], actions/checkout@v2, actions-rs/audit-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/
|
Dependencies security audit
3 warnings found!
|
Dependencies security audit
Unknown warning kind unsound found, please, file a bug
|
Dependencies security audit
Unknown warning kind unsound found, please, file a bug
|
Formatting
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: styfle/[email protected], actions/checkout@v2, actions-rs/toolchain@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Formatting
The following actions uses node12 which is deprecated and will be forced to run on node16: styfle/[email protected], actions/checkout@v2, 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/
|
Formatting
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/
|
Formatting
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/
|
Formatting
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/
|
Formatting
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/
|
Compilation errors
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: styfle/[email protected], actions/checkout@v2, actions-rs/toolchain@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Compilation errors
The following actions uses node12 which is deprecated and will be forced to run on node16: styfle/[email protected], actions/checkout@v2, 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/
|
Compilation errors
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/
|
Compilation errors
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/
|
Compilation errors
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/
|
Compilation errors
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/
|
very complex type used. Consider factoring parts into `type` definitions:
grovedb/src/lib.rs#L943
warning: very complex type used. Consider factoring parts into `type` definitions
--> grovedb/src/lib.rs:943:10
|
943 | ) -> Result<HashMap<Vec<Vec<u8>>, (CryptoHash, CryptoHash, CryptoHash)>, Error> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
|
very complex type used. Consider factoring parts into `type` definitions:
grovedb/src/lib.rs#L873
warning: very complex type used. Consider factoring parts into `type` definitions
--> grovedb/src/lib.rs:873:10
|
873 | ) -> Result<HashMap<Vec<Vec<u8>>, (CryptoHash, CryptoHash, CryptoHash)>, Error> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
|
very complex type used. Consider factoring parts into `type` definitions:
grovedb/src/lib.rs#L847
warning: very complex type used. Consider factoring parts into `type` definitions
--> grovedb/src/lib.rs:847:10
|
847 | ) -> Result<HashMap<Vec<Vec<u8>>, (CryptoHash, CryptoHash, CryptoHash)>, Error> {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
= note: `#[warn(clippy::type_complexity)]` on by default
|
this function has too many arguments (9/7):
grovedb/src/operations/proof/generate.rs#L488
warning: this function has too many arguments (9/7)
--> grovedb/src/operations/proof/generate.rs:488:5
|
488 | / fn generate_and_store_merk_proof<'a, S, B>(
489 | | &self,
490 | | path: &SubtreePath<B>,
491 | | subtree: &'a Merk<S>,
... |
497 | | key: &[u8],
498 | | ) -> CostResult<(Option<u16>, Option<u16>), Error>
| |______________________________________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
|
this function has too many arguments (8/7):
grovedb/src/operations/proof/generate.rs#L172
warning: this function has too many arguments (8/7)
--> grovedb/src/operations/proof/generate.rs:172:5
|
172 | / fn prove_subqueries(
173 | | &self,
174 | | proofs: &mut Vec<u8>,
175 | | path: Vec<&[u8]>,
... |
180 | | is_verbose: bool,
181 | | ) -> CostResult<(), Error> {
| |______________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
|
this function has too many arguments (11/7):
grovedb/src/element/query.rs#L572
warning: this function has too many arguments (11/7)
--> grovedb/src/element/query.rs:572:5
|
572 | / fn query_item(
573 | | storage: &RocksDbStorage,
574 | | item: &QueryItem,
575 | | results: &mut Vec<QueryResultElement>,
... |
583 | | add_element_function: fn(PathQueryPushArgs) -> CostResult<(), Error>,
584 | | ) -> CostResult<(), Error> {
| |______________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
= note: `#[warn(clippy::too_many_arguments)]` on by default
|
writing `&Vec` instead of `&[_]` involves a new object where a slice will do:
grovedb/src/element/helpers.rs#L248
warning: writing `&Vec` instead of `&[_]` involves a new object where a slice will do
--> grovedb/src/element/helpers.rs:248:14
|
248 | key: &Vec<u8>,
| ^^^^^^^^ help: change this to: `&[u8]`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg
= note: `#[warn(clippy::ptr_arg)]` on by default
|
if let .. else expression looks like `matches!` macro:
grovedb/src/batch/mod.rs#L601
warning: if let .. else expression looks like `matches!` macro
--> grovedb/src/batch/mod.rs:601:17
|
601 | / if let Op::Delete = current_op.op {
602 | | true
603 | | } else {
604 | | false
605 | | }
| |_________________^ help: try: `matches!(current_op.op, Op::Delete)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro
|
match expression looks like `matches!` macro:
grovedb/src/batch/mod.rs#L592
warning: match expression looks like `matches!` macro
--> grovedb/src/batch/mod.rs:592:34
|
592 | .filter(|current_op| match current_op.op {
| __________________________________^
593 | | Op::Insert { .. } | Op::Replace { .. } => true,
594 | | _ => false,
595 | | })
| |_____________^ help: try: `matches!(current_op.op, Op::Insert { .. } | Op::Replace { .. })`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro
= note: `#[warn(clippy::match_like_matches_macro)]` on by default
|
function `read_proof_version` is never used:
grovedb/src/versioning.rs#L12
warning: function `read_proof_version` is never used
--> grovedb/src/versioning.rs:12:8
|
12 | pub fn read_proof_version(mut bytes: &[u8]) -> Result<u32, Error> {
| ^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
|
this function has too many arguments (8/7):
merk/src/tree/mod.rs#L811
warning: this function has too many arguments (8/7)
--> merk/src/tree/mod.rs:811:5
|
811 | / pub fn put_value_with_reference_value_hash_and_value_cost(
812 | | mut self,
813 | | value: Vec<u8>,
814 | | value_hash: CryptoHash,
... |
833 | | >,
834 | | ) -> CostResult<Self, Error> {
| |________________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
|
this function has too many arguments (8/7):
merk/src/tree/walk/mod.rs#L344
warning: this function has too many arguments (8/7)
--> merk/src/tree/walk/mod.rs:344:5
|
344 | / pub fn put_value_with_reference_value_hash_and_value_cost(
345 | | mut self,
346 | | value: Vec<u8>,
347 | | value_hash: CryptoHash,
... |
366 | | >,
367 | | ) -> CostResult<Self, Error> {
| |________________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
|
this function has too many arguments (9/7):
merk/src/tree/ops.rs#L718
warning: this function has too many arguments (9/7)
--> merk/src/tree/ops.rs:718:5
|
718 | / fn recurse<K: AsRef<[u8]>, C, V, U, R>(
719 | | self,
720 | | batch: &MerkBatch<K>,
721 | | mid: usize,
... |
727 | | section_removal_bytes: &mut R,
728 | | ) -> CostResult<(Option<Self>, KeyUpdates), Error>
| |______________________________________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
|
this function has too many arguments (8/7):
merk/src/merk/apply.rs#L277
warning: this function has too many arguments (8/7)
--> merk/src/merk/apply.rs:277:5
|
277 | / pub fn apply_unchecked<KB, KA, C, V, U, R>(
278 | | &mut self,
279 | | batch: &MerkBatch<KB>,
280 | | aux: &AuxMerkBatch<KA>,
... |
285 | | section_removal_bytes: &mut R,
286 | | ) -> CostResult<(), Error>
| |______________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
|
this function has too many arguments (8/7):
merk/src/merk/apply.rs#L176
warning: this function has too many arguments (8/7)
--> merk/src/merk/apply.rs:176:5
|
176 | / pub fn apply_with_costs_just_in_time_value_update<KB, KA>(
177 | | &mut self,
178 | | batch: &MerkBatch<KB>,
179 | | aux: &AuxMerkBatch<KA>,
... |
198 | | >,
199 | | ) -> CostResult<(), Error>
| |______________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
= note: `#[warn(clippy::too_many_arguments)]` on by default
|
'test' may be misspelled as 'tests':
merk/src/tree/fuzz_tests.rs#L31
warning: 'test' may be misspelled as 'tests'
--> merk/src/tree/fuzz_tests.rs:31:8
|
31 | #![cfg(tests)]
| ^^^^^ help: did you mean: `test`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#maybe_misused_cfg
= note: `#[warn(clippy::maybe_misused_cfg)]` on by default
|
Linting
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: styfle/[email protected], actions/checkout@v2, actions-rs/toolchain@v1, actions-rs/clippy-check@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Linting
The following actions uses node12 which is deprecated and will be forced to run on node16: styfle/[email protected], actions/checkout@v2, 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/
|
Linting
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/
|
Linting
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/
|
Linting
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/
|
Linting
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/
|
Tests
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: styfle/[email protected], actions/checkout@v2, actions-rs/toolchain@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
Tests
The following actions uses node12 which is deprecated and will be forced to run on node16: styfle/[email protected], actions/checkout@v2, 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/
|
Tests
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/
|
Tests
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/
|
Tests
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/
|
Tests
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/
|