Skip to content

refactor(platform): replace bls library #4796

refactor(platform): replace bls library

refactor(platform): replace bls library #4796

Triggered via pull request December 6, 2024 11:45
Status Failure
Total duration 13m 26s
Artifacts 4

tests.yml

on: pull_request
Build JS packages  /  Build JS
3m 2s
Build JS packages / Build JS
Matrix: Build Docker images
Determine changed packages
15s
Determine changed packages
Rust crates security audit
1m 16s
Rust crates security audit
JS dependency versions check
11s
JS dependency versions check
JS NPM security audit
12s
JS NPM security audit
JS code security audit  /  Run Code QL
2m 48s
JS code security audit / Run Code QL
Packages functional tests  /  Run functional tests
2m 32s
Packages functional tests / Run functional tests
Matrix: Test Suite
Matrix: Dashmate E2E tests
Matrix: JS packages
Matrix: Rust packages
Fit to window
Zoom out
Zoom in

Annotations

2 errors, 87 warnings, and 20 notices
Build JS packages / Build JS
Unable to download artifact(s): Artifact not found for name: js-build-cce1cd15062cda50e8f61f059e71f8830b1f603b Please ensure that your artifact is not expired and the artifact was uploaded using a compatible version of toolkit/upload-artifact. For more information, visit the GitHub Artifacts FAQ: https://github.com/actions/toolkit/blob/main/packages/artifact/docs/faq.md
Test Suite (Test Suite, test:suite, 0, 0) / Run Test Suite
Process completed with exit code 1.
Rust crates security audit
2 warnings found!
Rust crates security audit
Unknown warning kind unsound found, please, file a bug
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/errors/protocol_error.rs#L1
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/errors/protocol_error.rs:1:5 | 1 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/bls/native_bls.rs#L5
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/bls/native_bls.rs:5:5 | 5 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
taken reference of right operand: packages/rs-dpp/src/data_contract/document_type/property/mod.rs#L1203
warning: taken reference of right operand --> packages/rs-dpp/src/data_contract/document_type/property/mod.rs:1203:20 | 1203 | if value == &vec![0] { | ^^^^^^^^^-------- | | | help: use the right value directly: `...` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref = note: `#[warn(clippy::op_ref)]` on by default
taken reference of right operand: packages/rs-dpp/src/data_contract/document_type/property/mod.rs#L1294
warning: taken reference of right operand --> packages/rs-dpp/src/data_contract/document_type/property/mod.rs:1294:20 | 1294 | if value == &vec![0] { | ^^^^^^^^^-------- | | | help: use the right value directly: `...` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref
taken reference of right operand: packages/rs-dpp/src/data_contract/document_type/property/mod.rs#L1296
warning: taken reference of right operand --> packages/rs-dpp/src/data_contract/document_type/property/mod.rs:1296:27 | 1296 | } else if value == &vec![1] { | ^^^^^^^^^-------- | | | help: use the right value directly: `...` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref
non-canonical implementation of `partial_cmp` on an `Ord` type: packages/rs-dpp/src/data_contract/document_type/index/mod.rs#L157
warning: non-canonical implementation of `partial_cmp` on an `Ord` type --> packages/rs-dpp/src/data_contract/document_type/index/mod.rs:157:1 | 157 | / impl PartialOrd for ContestedIndexFieldMatch { 158 | | fn partial_cmp(&self, other: &Self) -> Option<Ordering> { | | _____________________________________________________________- 159 | || use ContestedIndexFieldMatch::*; 160 | || match (self, other) { 161 | || // Comparing two integers ... || 170 | || } 171 | || } | ||_____- help: change this to: `{ Some(self.cmp(other)) }` 172 | | } | |__^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_canonical_partial_ord_impl = note: `#[warn(clippy::non_canonical_partial_ord_impl)]` on by default
`to_string` applied to a type that implements `Display` in `format!` args: packages/rs-dpp/src/data_contract/document_type/index/mod.rs#L503
warning: `to_string` applied to a type that implements `Display` in `format!` args --> packages/rs-dpp/src/data_contract/document_type/index/mod.rs:503:66 | 503 | ... e.to_string() | ^^^^^^^^^^^^ help: remove this | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#to_string_in_format_args = note: `#[warn(clippy::to_string_in_format_args)]` on by default
iterating on a map's values: packages/rs-dpp/src/data_contract/document_type/v0/random_document_type.rs#L396
warning: iterating on a map's values --> packages/rs-dpp/src/data_contract/document_type/v0/random_document_type.rs:396:35 | 396 | let indices_json_schema = indices | ___________________________________^ 397 | | .iter() 398 | | .map(|(_, index)| { 399 | | let properties_schema = index ... | 412 | | }) 413 | | }) | |______________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#iter_kv_map = note: `#[warn(clippy::iter_kv_map)]` on by default help: try | 396 ~ let indices_json_schema = indices.values().map(|index| { 397 + let properties_schema = index 398 + .properties 399 + .iter() 400 + .map(|prop| { 401 + // Only "asc" is allowed for now (v1.0-dev) 402 + json!({ <std::string::String as Clone>::clone(&prop.name): "asc" }) 403 + }) 404 + .collect::<Vec<_>>(); 405 + 406 + json!({ 407 + "name": index.name, 408 + "properties": properties_schema, 409 + "unique": index.unique, 410 + }) 411 + }) |
unnecessary use of `get(name).is_some()`: packages/rs-dpp/src/data_contract/v0/accessors/mod.rs#L70
warning: unnecessary use of `get(name).is_some()` --> packages/rs-dpp/src/data_contract/v0/accessors/mod.rs:70:29 | 70 | self.document_types.get(name).is_some() | ^^^^^^^^^^^^^^^^^^^ help: replace it with: `contains_key(name)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_get_then_check = note: `#[warn(clippy::unnecessary_get_then_check)]` on by default
very complex type used. Consider factoring parts into `type` definitions: packages/rs-dpp/src/document/document_factory/v0/mod.rs#L215
warning: very complex type used. Consider factoring parts into `type` definitions --> packages/rs-dpp/src/document/document_factory/v0/mod.rs:215:24 | 215 | let documents: Vec<( | ________________________^ 216 | | DocumentTransitionActionType, 217 | | Vec<(Document, DocumentTypeRef, Bytes32)>, 218 | | )> = documents_iter.into_iter().collect(); | |__________^ | = 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
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/errors/protocol_error.rs#L1
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/errors/protocol_error.rs:1:5 | 1 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `platform_value::Identifier`: packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs#L11
warning: unused import: `platform_value::Identifier` --> packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs:11:5 | 11 | use platform_value::Identifier; | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/bls/native_bls.rs#L5
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/bls/native_bls.rs:5:5 | 5 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `crate::state_transition::GetDataContractSecurityLevelRequirementFn`: packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs#L15
warning: unused import: `crate::state_transition::GetDataContractSecurityLevelRequirementFn` --> packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs:15:5 | 15 | use crate::state_transition::GetDataContractSecurityLevelRequirementFn; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `crate::util::type_constants::DEFAULT_HASH_SIZE_U8`: packages/rs-drive/src/drive/document/paths.rs#L2
warning: unused import: `crate::util::type_constants::DEFAULT_HASH_SIZE_U8` --> packages/rs-drive/src/drive/document/paths.rs:2:5 | 2 | use crate::util::type_constants::DEFAULT_HASH_SIZE_U8; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `dpp::data_contract::document_type::accessors::DocumentTypeV0Getters`: packages/rs-drive/src/drive/document/paths.rs#L3
warning: unused import: `dpp::data_contract::document_type::accessors::DocumentTypeV0Getters` --> packages/rs-drive/src/drive/document/paths.rs:3:5 | 3 | use dpp::data_contract::document_type::accessors::DocumentTypeV0Getters; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/errors/protocol_error.rs#L1
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/errors/protocol_error.rs:1:5 | 1 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `dpp::data_contract::document_type::methods::DocumentTypeV0Methods`: packages/rs-drive/src/drive/document/paths.rs#L4
warning: unused import: `dpp::data_contract::document_type::methods::DocumentTypeV0Methods` --> packages/rs-drive/src/drive/document/paths.rs:4:5 | 4 | use dpp::data_contract::document_type::methods::DocumentTypeV0Methods; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `dpp::data_contract::document_type::DocumentTypeRef`: packages/rs-drive/src/drive/document/paths.rs#L5
warning: unused import: `dpp::data_contract::document_type::DocumentTypeRef` --> packages/rs-drive/src/drive/document/paths.rs:5:5 | 5 | use dpp::data_contract::document_type::DocumentTypeRef; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/bls/native_bls.rs#L5
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/bls/native_bls.rs:5:5 | 5 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
function `contract_documents_primary_key_path` is never used: packages/rs-drive/src/drive/document/paths.rs#L41
warning: function `contract_documents_primary_key_path` is never used --> packages/rs-drive/src/drive/document/paths.rs:41:15 | 41 | pub(crate) fn contract_documents_primary_key_path<'a>( | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(dead_code)]` on by default
this `else { if .. }` block can be collapsed: packages/rs-drive/src/query/mod.rs#L1324
warning: this `else { if .. }` block can be collapsed --> packages/rs-drive/src/query/mod.rs:1324:16 | 1324 | } else { | ________________^ 1325 | | if let Some(start_at_key) = start_at_key { 1326 | | inner_query.insert_range_to(..start_at_key); 1327 | | } else { ... | 1331 | | } 1332 | | } | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_else_if = note: `#[warn(clippy::collapsible_else_if)]` on by default help: collapse nested if block | 1324 ~ } else if let Some(start_at_key) = start_at_key { 1325 + inner_query.insert_range_to(..start_at_key); 1326 + } else { 1327 + //todo: really not sure if this is correct 1328 + // Should investigate more 1329 + inner_query.insert_key(vec![]); 1330 + } |
unused import: `identity::identity_public_key::accessors::v0::IdentityPublicKeyGettersV0`: packages/rs-drive/src/drive/identity/key/fetch/mod.rs#L16
warning: unused import: `identity::identity_public_key::accessors::v0::IdentityPublicKeyGettersV0` --> packages/rs-drive/src/drive/identity/key/fetch/mod.rs:16:9 | 16 | identity::identity_public_key::accessors::v0::IdentityPublicKeyGettersV0, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `crate::drive::votes::resolved::vote_polls::contested_document_resource_vote_poll::ContestedDocumentResourceVotePollWithContractInfo`: packages/rs-drive/src/drive/votes/resolved/vote_polls/contested_document_resource_vote_poll/resolve.rs#L3
warning: unused import: `crate::drive::votes::resolved::vote_polls::contested_document_resource_vote_poll::ContestedDocumentResourceVotePollWithContractInfo` --> packages/rs-drive/src/drive/votes/resolved/vote_polls/contested_document_resource_vote_poll/resolve.rs:3:5 | 3 | use crate::drive::votes::resolved::vote_polls::contested_document_resource_vote_poll::ContestedDocumentResourceVotePollWithContractInfo; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
doc list item missing indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L26
warning: doc list item missing indentation --> packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs:26:9 | 26 | /// start fetching the contract's history. | ^ | = help: if this is supposed to be its own paragraph, add a blank line = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation = note: `#[warn(clippy::doc_lazy_continuation)]` on by default help: indent this line | 26 | /// start fetching the contract's history. | ++
unused import: `crate::drive::Drive`: packages/rs-drive/src/drive/votes/resolved/vote_polls/contested_document_resource_vote_poll/resolve.rs#L6
warning: unused import: `crate::drive::Drive` --> packages/rs-drive/src/drive/votes/resolved/vote_polls/contested_document_resource_vote_poll/resolve.rs:6:5 | 6 | use crate::drive::Drive; | ^^^^^^^^^^^^^^^^^^^
doc list item missing indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L29
warning: doc list item missing indentation --> packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs:29:9 | 29 | /// to return. If `None`, the limit is set to 10. Should be between 1 and 10. | ^ | = help: if this is supposed to be its own paragraph, add a blank line = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation help: indent this line | 29 | /// to return. If `None`, the limit is set to 10. Should be between 1 and 10. | ++
doc list item missing indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L32
warning: doc list item missing indentation --> packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs:32:9 | 32 | /// before starting to return them. If `None`, no entries are skipped. | ^ | = help: if this is supposed to be its own paragraph, add a blank line = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation help: indent this line | 32 | /// before starting to return them. If `None`, no entries are skipped. | ++
doc list item missing indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L37
warning: doc list item missing indentation --> packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs:37:9 | 37 | /// a `BTreeMap` with Unix timestamp as the key and contract as the value, representing | ^ | = help: if this is supposed to be its own paragraph, add a blank line = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation help: indent this line | 37 | /// a `BTreeMap` with Unix timestamp as the key and contract as the value, representing | ++
doc list item missing indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L38
warning: doc list item missing indentation --> packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs:38:9 | 38 | /// the contract's history. The `Err` variant contains an `Error` in case of a failure. | ^ | = help: if this is supposed to be its own paragraph, add a blank line = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation help: indent this line | 38 | /// the contract's history. The `Err` variant contains an `Error` in case of a failure. | ++
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/errors/protocol_error.rs#L1
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/errors/protocol_error.rs:1:5 | 1 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/bls/native_bls.rs#L5
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/bls/native_bls.rs:5:5 | 5 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
bound is defined in more than one place: packages/wasm-dpp/src/utils.rs#L25
warning: bound is defined in more than one place --> packages/wasm-dpp/src/utils.rs:25:24 | 25 | fn with_serde_into<D: DeserializeOwned>(&self) -> Result<D, JsValue> | ^ 26 | where 27 | D: for<'de> serde::de::Deserialize<'de> + 'static; | ^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations = note: `#[warn(clippy::multiple_bound_locations)]` on by default
methods `with_serde_to_platform_value_map` and `with_serde_into` are never used: packages/wasm-dpp/src/utils.rs#L24
warning: methods `with_serde_to_platform_value_map` and `with_serde_into` are never used --> packages/wasm-dpp/src/utils.rs:24:8 | 19 | pub trait ToSerdeJSONExt { | -------------- methods in this trait ... 24 | fn with_serde_to_platform_value_map(&self) -> Result<BTreeMap<String, Value>, JsValue>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 25 | fn with_serde_into<D: DeserializeOwned>(&self) -> Result<D, JsValue> | ^^^^^^^^^^^^^^^
methods `into_inner` and `inner_mut` are never used: packages/wasm-dpp/src/utils.rs#L287
warning: methods `into_inner` and `inner_mut` are never used --> packages/wasm-dpp/src/utils.rs:287:8 | 284 | pub(crate) trait Inner { | ----- methods in this trait ... 287 | fn into_inner(self) -> Self::InnerItem; | ^^^^^^^^^^ 288 | fn inner(&self) -> &Self::InnerItem; 289 | fn inner_mut(&mut self) -> &mut Self::InnerItem; | ^^^^^^^^^
field `0` is never read: packages/wasm-dpp/src/identity/identity_facade.rs#L274
warning: field `0` is never read --> packages/wasm-dpp/src/identity/identity_facade.rs:274:34 | 274 | pub struct NonConsensusErrorWasm(NonConsensusError); | --------------------- ^^^^^^^^^^^^^^^^^ | | | field in this struct | = note: `#[warn(dead_code)]` on by default help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field | 274 | pub struct NonConsensusErrorWasm(()); | ~~
trait `AssetLockProofLike` is never used: packages/wasm-dpp/src/identity/state_transition/asset_lock_proof/mod.rs#L49
warning: trait `AssetLockProofLike` is never used --> packages/wasm-dpp/src/identity/state_transition/asset_lock_proof/mod.rs:49:11 | 49 | pub trait AssetLockProofLike { | ^^^^^^^^^^^^^^^^^^
field `identity_id` is never read: packages/wasm-dpp/src/identity/state_transition/identity_create_transition/to_object.rs#L21
warning: field `identity_id` is never read --> packages/wasm-dpp/src/identity/state_transition/identity_create_transition/to_object.rs:21:9 | 19 | pub struct ToObject { | -------- field in this struct 20 | pub transition_type: u8, 21 | pub identity_id: Identifier, | ^^^^^^^^^^^
field `vote` is never read: packages/wasm-dpp/src/voting/state_transition/masternode_vote_transition/to_object.rs#L21
warning: field `vote` is never read --> packages/wasm-dpp/src/voting/state_transition/masternode_vote_transition/to_object.rs:21:9 | 18 | pub struct ToObject { | -------- field in this struct ... 21 | pub vote: Vote, | ^^^^
module has the same name as its containing module: packages/wasm-dpp/src/data_contract_factory/mod.rs#L1
warning: module has the same name as its containing module --> packages/wasm-dpp/src/data_contract_factory/mod.rs:1:1 | 1 | mod data_contract_factory; | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception = note: `#[warn(clippy::module_inception)]` on by default
JS packages (dash) / Linting: packages/js-dash-sdk/src/SDK/Client/Client.ts#L10
Dependency cycle via ./Platform:1
JS packages (dash) / Linting: packages/js-dash-sdk/src/SDK/Client/Client.ts#L166
Assignment to function parameter 'options'
JS packages (dash) / Linting: packages/js-dash-sdk/src/SDK/Client/Platform/Fetcher/Fetcher.ts#L143
Returning an awaited value that is not a promise is not allowed
JS packages (dash) / Linting: packages/js-dash-sdk/src/SDK/Client/Platform/Platform.spec.ts#L5
Using exported name 'Client' as identifier for default export
JS packages (dash) / Linting: packages/js-dash-sdk/src/SDK/Client/Platform/Platform.ts#L5
Using exported name 'Client' as identifier for default export
JS packages (dash) / Linting: packages/js-dash-sdk/src/SDK/Client/Platform/Platform.ts#L8
Using exported name 'createAssetLockTransaction' as identifier for default export
unused import: `platform_value::Identifier`: packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs#L11
warning: unused import: `platform_value::Identifier` --> packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs:11:5 | 11 | use platform_value::Identifier; | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `crate::state_transition::GetDataContractSecurityLevelRequirementFn`: packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs#L15
warning: unused import: `crate::state_transition::GetDataContractSecurityLevelRequirementFn` --> packages/rs-dpp/src/state_transition/state_transitions/identity/identity_credit_transfer_transition/v0/v0_methods.rs:15:5 | 15 | use crate::state_transition::GetDataContractSecurityLevelRequirementFn; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/errors/protocol_error.rs#L1
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/errors/protocol_error.rs:1:5 | 1 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `std::array::TryFromSliceError`: packages/rs-dpp/src/bls/native_bls.rs#L5
warning: unused import: `std::array::TryFromSliceError` --> packages/rs-dpp/src/bls/native_bls.rs:5:5 | 5 | use std::array::TryFromSliceError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
this `else { if .. }` block can be collapsed: packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs#L268
warning: this `else { if .. }` block can be collapsed --> packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs:268:24 | 268 | } else { | ________________________^ 269 | | if let Some((_, found_old_key)) = identity_to_enable_old_keys 270 | | .iter() 271 | | .find(|(_, key)| key.purpose() == Purpose::TRANSFER) ... | 282 | | } 283 | | }; | |_________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_else_if = note: `#[warn(clippy::collapsible_else_if)]` on by default help: collapse nested if block | 268 ~ } else if let Some((_, found_old_key)) = identity_to_enable_old_keys 269 + .iter() 270 + .find(|(_, key)| key.purpose() == Purpose::TRANSFER) 271 + { 272 + Some(found_old_key.data().to_vec().try_into().map_err(|_| { 273 + Error::Execution(ExecutionError::CorruptedDriveResponse( 274 + "old payout address should be 20 bytes".to_string(), 275 + )) 276 + })?) 277 + } else { 278 + // finally we just use the old masternode payout address 279 + // we need to use the old pub_key_operator 280 + old_masternode.state.operator_payout_address 281 ~ }; |
taken reference of right operand: packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs#L323
warning: taken reference of right operand --> packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs:323:42 | 323 | .find(|(_, key)| key.data().as_slice() == &new_payout_address) | ^^^^^^^^^^^^^^^^^^^^^^^^^------------------- | | | help: use the right value directly: `new_payout_address` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref = note: `#[warn(clippy::op_ref)]` on by default
taken reference of right operand: packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs#L347
warning: taken reference of right operand --> packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs:347:42 | 347 | .find(|(_, key)| key.data().as_slice() == &new_platform_node_id) | ^^^^^^^^^^^^^^^^^^^^^^^^^--------------------- | | | help: use the right value directly: `new_platform_node_id` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#op_ref
unexpected `cfg` condition name: `tokio_unstable`: packages/rs-drive-abci/src/utils/spawn.rs#L13
warning: unexpected `cfg` condition name: `tokio_unstable` --> packages/rs-drive-abci/src/utils/spawn.rs:13:15 | 13 | #[cfg(all(tokio_unstable, feature = "console"))] | ^^^^^^^^^^^^^^ | = help: expected names are: `clippy`, `debug_assertions`, `doc`, `docsrs`, `doctest`, `feature`, `miri`, `overflow_checks`, `panic`, `proc_macro`, `relocation_model`, `rustfmt`, `sanitize`, `sanitizer_cfi_generalize_pointers`, `sanitizer_cfi_normalize_integers`, `target_abi`, `target_arch`, `target_endian`, `target_env`, `target_family`, `target_feature`, `target_has_atomic`, `target_has_atomic_equal_alignment`, `target_has_atomic_load_store`, `target_os`, `target_pointer_width`, `target_thread_local`, `target_vendor`, `test`, `ub_checks`, `unix`, and `windows` = help: consider using a Cargo feature instead = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tokio_unstable)");` to the top of the `build.rs` = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration = note: `#[warn(unexpected_cfgs)]` on by default
unexpected `cfg` condition name: `tokio_unstable`: packages/rs-drive-abci/src/utils/spawn.rs#L20
warning: unexpected `cfg` condition name: `tokio_unstable` --> packages/rs-drive-abci/src/utils/spawn.rs:20:19 | 20 | #[cfg(not(all(tokio_unstable, feature = "console")))] | ^^^^^^^^^^^^^^ | = help: consider using a Cargo feature instead = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tokio_unstable)");` to the top of the `build.rs` = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
type `platform_types::platform_state::v0::old_structures::ValidatorSet` is more private than the item `platform_types::platform_state::v0::PlatformStateForSavingV0::validator_sets`: packages/rs-drive-abci/src/platform_types/platform_state/v0/mod.rs#L148
warning: type `platform_types::platform_state::v0::old_structures::ValidatorSet` is more private than the item `platform_types::platform_state::v0::PlatformStateForSavingV0::validator_sets` --> packages/rs-drive-abci/src/platform_types/platform_state/v0/mod.rs:148:5 | 148 | pub validator_sets: Vec<(Bytes32, old_structures::ValidatorSet)>, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `platform_types::platform_state::v0::PlatformStateForSavingV0::validator_sets` is reachable at visibility `pub(platform_state)` | note: but type `platform_types::platform_state::v0::old_structures::ValidatorSet` is only usable at visibility `pub(v0)` --> packages/rs-drive-abci/src/platform_types/platform_state/v0/old_structures/mod.rs:7:1 | 7 | pub(super) enum ValidatorSet { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = note: `#[warn(private_interfaces)]` on by default
JS code security audit / Run Code QL
CodeQL Action v2 will be deprecated on December 5th, 2024. Please update all occurrences of the CodeQL Action in your workflow files to v3. For more information, see https://github.blog/changelog/2024-01-12-code-scanning-deprecation-of-codeql-action-v2/
sccache stats
100% - 288 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
96% - 188 hits, 8 misses, 0 errors
sccache stats
87% - 188 hits, 27 misses, 0 errors
sccache stats
87% - 385 hits, 56 misses, 0 errors
sccache stats
93% - 407 hits, 32 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 204 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
89% - 495 hits, 64 misses, 0 errors
sccache stats
92% - 189 hits, 16 misses, 0 errors
sccache stats
99% - 202 hits, 2 misses, 0 errors
sccache stats
89% - 915 hits, 115 misses, 0 errors
sccache stats
63% - 266 hits, 156 misses, 0 errors
sccache stats
97% - 868 hits, 27 misses, 0 errors
sccache stats
71% - 250 hits, 101 misses, 0 errors
sccache stats
89% - 396 hits, 47 misses, 0 errors
sccache stats
92% - 785 hits, 66 misses, 0 errors

Artifacts

Produced during runtime
Name Size
dashpay~platform~PV0SB6.dockerbuild
93.5 KB
dashpay~platform~S0FYHI.dockerbuild
82.5 KB
dashpay~platform~SXNJWI.dockerbuild
89.7 KB
js-build-cce1cd15062cda50e8f61f059e71f8830b1f603b Expired
35.7 MB