Skip to content

Tests

Tests #5005

Manually triggered January 13, 2025 11:22
Status Failure
Total duration 23m 51s
Artifacts 4

tests.yml

on: workflow_dispatch
Build JS packages  /  Build JS
5m 48s
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
10s
JS dependency versions check
JS NPM security audit
11s
JS NPM security audit
JS code security audit  /  Run Code QL
2m 34s
JS code security audit / Run Code QL
Packages functional tests  /  Run functional tests
2m 55s
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

11 errors, 86 warnings, and 28 notices
Rust packages (dpp) / Check each feature
Process completed with exit code 101.
Rust packages (drive-abci) / Tests
Process completed with exit code 101.
Build JS packages / Build JS
Unable to download artifact(s): Artifact not found for name: js-build-f594438090cffbd1d0b6b8de8f51584889a7fedf 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
JS packages (@dashevo/wasm-dpp) / Linting: packages/wasm-dpp/test/integration/identity/stateTransition/IdentityUpdateTransition/validation/state/validatePublicKeysState.spec.js#L1
Unable to resolve path to module '../../../../../../../../rs-dpp/src/schema/identity/v0/identity.json'
JS packages (@dashevo/wasm-dpp) / Linting
Process completed with exit code 1.
JS packages (@dashevo/wasm-dpp) / Tests
Process completed with exit code 1.
JS code security audit / Run Code QL
CodeQL Action major versions v1 and v2 have been deprecated. Please update all occurrences of the CodeQL Action in your workflow files to v3. For more information, see https://github.blog/changelog/2025-01-10-code-scanning-codeql-action-v2-is-now-deprecated/
Test Suite (Test Suite, test:suite, 0, 0) / Run Test Suite
The job running on runner GitHub Actions 20 has exceeded the maximum execution time of 15 minutes.
Test Suite (Test Suite, test:suite, 0, 0) / Run Test Suite
The operation was canceled.
Rust crates security audit
2 warnings found!
Rust crates security audit
Unknown warning kind unsound found, please, file a bug
elided lifetime has a name: packages/rs-platform-value/src/inner_value.rs#L364
warning: elided lifetime has a name --> packages/rs-platform-value/src/inner_value.rs:364:66 | 364 | pub fn get_array_slice<'a>(&'a self, key: &'a str) -> Result<&[Value], Error> { | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` | = note: `#[warn(elided_named_lifetimes)]` on by default
unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L1
warning: unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:1:5 | 1 | use crate::data_contract::document_type::methods::DocumentTypeV0Methods; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unexpected `cfg` condition value: `contested-documents`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L21
warning: unexpected `cfg` condition value: `contested-documents` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:21:15 | 21 | #[cfg(feature = "contested-documents")] | ^^^^^^^^^^--------------------- | | | help: there is a expected value with a similar name: `"extended-document"` | = note: expected values for `feature` are: `abci`, `all_features`, `all_features_without_client`, `bls-signatures`, `cbor`, `ciborium`, `client`, `core-types`, `core-types-serde-conversion`, `core-types-serialization`, `create-contested-document`, `dash-sdk-features`, `dashcore`, `data-contract-cbor-conversion`, `data-contract-json-conversion`, `data-contract-serde-conversion`, `data-contract-value-conversion`, `data-contracts`, `default`, `document-cbor-conversion`, `document-json-conversion`, `document-serde-conversion`, `document-value-conversion`, `ed25519-dalek`, `extended-document`, `factories`, `fee-distribution`, `fixtures-and-mocks`, `identity-cbor-conversion`, `identity-hashing`, `identity-json-conversion`, `identity-serde-conversion`, `identity-serialization`, `identity-value-conversion`, and `index-serde-conversion` and 22 more = help: consider adding `contested-documents` as a feature in `Cargo.toml` = 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
the following explicit lifetimes could be elided: 'a: packages/rs-dpp/src/data_contract/document_type/accessors/mod.rs#L153
warning: the following explicit lifetimes could be elided: 'a --> packages/rs-dpp/src/data_contract/document_type/accessors/mod.rs:153:6 | 153 | impl<'a> DocumentTypeV0Getters for DocumentTypeRef<'a> { | ^^ ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes = note: `#[warn(clippy::needless_lifetimes)]` on by default help: elide the lifetimes | 153 - impl<'a> DocumentTypeV0Getters for DocumentTypeRef<'a> { 153 + impl DocumentTypeV0Getters for DocumentTypeRef<'_> { |
the following explicit lifetimes could be elided: 'a: packages/rs-dpp/src/data_contract/document_type/accessors/mod.rs#L287
warning: the following explicit lifetimes could be elided: 'a --> packages/rs-dpp/src/data_contract/document_type/accessors/mod.rs:287:6 | 287 | impl<'a> DocumentTypeV0Getters for DocumentTypeMutRef<'a> { | ^^ ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes help: elide the lifetimes | 287 - impl<'a> DocumentTypeV0Getters for DocumentTypeMutRef<'a> { 287 + impl DocumentTypeV0Getters for DocumentTypeMutRef<'_> { |
unneeded `return` statement: packages/rs-dpp/src/data_contract/document_type/property/array.rs#L73
warning: unneeded `return` statement --> packages/rs-dpp/src/data_contract/document_type/property/array.rs:73:9 | 73 | / return match self { 74 | | ArrayItemType::String(_, _) => { 75 | | let value_as_text = value.as_text().ok_or_else(get_field_type_matching_error)?; 76 | | let vec = value_as_text.as_bytes().to_vec(); ... | 118 | | } 119 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return = note: `#[warn(clippy::needless_return)]` on by default help: remove `return` | 73 ~ match self { 74 + ArrayItemType::String(_, _) => { 75 + let value_as_text = value.as_text().ok_or_else(get_field_type_matching_error)?; 76 + let vec = value_as_text.as_bytes().to_vec(); 77 + let mut r_vec = vec.len().encode_var_vec(); 78 + r_vec.extend(vec); 79 + Ok(r_vec) 80 + } 81 + ArrayItemType::Date => { 82 + let value_as_f64 = value.to_float().map_err(ProtocolError::ValueError)?; 83 + let value_bytes = value_as_f64.to_be_bytes().to_vec(); 84 + Ok(value_bytes) 85 + } 86 + ArrayItemType::Integer => { 87 + let value_as_i64: i64 = value.to_integer().map_err(ProtocolError::ValueError)?; 88 + let value_bytes = value_as_i64.to_be_bytes().to_vec(); 89 + Ok(value_bytes) 90 + } 91 + ArrayItemType::Number => { 92 + let value_as_f64 = value.to_float().map_err(ProtocolError::ValueError)?; 93 + let value_bytes = value_as_f64.to_be_bytes().to_vec(); 94 + Ok(value_bytes) 95 + } 96 + ArrayItemType::ByteArray(_, _) => { 97 + let mut bytes = value.to_binary_bytes()?; 98 + 99 + let mut r_vec = bytes.len().encode_var_vec(); 100 + r_vec.append(&mut bytes); 101 + Ok(r_vec) 102 + } 103 + ArrayItemType::Identifier => { 104 + let mut bytes = value.to_identifier_bytes()?; 105 + 106 + let mut r_vec = bytes.len().encode_var_vec(); 107 + r_vec.append(&mut bytes); 108 + Ok(r_vec) 109 + } 110 + ArrayItemType::Boolean => { 111 + let value_as_boolean = value.as_bool().ok_or_else(get_field_type_matching_error)?; 112 + // 0 means does not exist 113 + if value_as_boolean { 114 + Ok(vec![1]) // 1 is true 115 + } else { 116 + Ok(vec![0]) // 2 is false 117 + } 118 + } 119 ~ } |
unneeded `return` statement: packages/rs-dpp/src/data_contract/document_type/property/mod.rs#L955
warning: unneeded `return` statement --> packages/rs-dpp/src/data_contract/document_type/property/mod.rs:955:9 | 955 | / return match self { 956 | | DocumentPropertyType::String(_) => { 957 | | let value_as_text = value 958 | | .as_text() ... | 1097 | | )), 1098 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 955 ~ match self { 956 + DocumentPropertyType::String(_) => { 957 + let value_as_text = value 958 + .as_text() 959 + .ok_or_else(|| get_field_type_matching_error(value))?; 960 + let vec = value_as_text.as_bytes().to_vec(); 961 + let mut r_vec = vec.len().encode_var_vec(); 962 + r_vec.extend(vec); 963 + Ok(r_vec) 964 + } 965 + // TODO: Make the same as in https://github.com/dashpay/platform/blob/8d2a9e54d62b77581c44a15a09a2c61864af37d3/packages/rs-dpp/src/document/v0/serialize.rs#L161 966 + // it must be u64 BE. Markers are wrong here as well 967 + DocumentPropertyType::Date => { 968 + let value_as_f64 = value.to_float().map_err(ProtocolError::ValueError)?; 969 + let mut value_bytes = value_as_f64.to_be_bytes().to_vec(); 970 + if required { 971 + Ok(value_bytes) 972 + } else { 973 + // if the value wasn't required we need to add a byte to prove it existed 974 + let mut r_vec = vec![255u8]; 975 + r_vec.append(&mut value_bytes); 976 + Ok(r_vec) 977 + } 978 + } 979 + DocumentPropertyType::U128 => { 980 + let value_as_u128: u128 = value.to_integer().map_err(ProtocolError::ValueError)?; 981 + Ok(value_as_u128.to_be_bytes().to_vec()) 982 + } 983 + DocumentPropertyType::I128 => { 984 + let value_as_i128: i128 = value.to_integer().map_err(ProtocolError::ValueError)?; 985 + Ok(value_as_i128.to_be_bytes().to_vec()) 986 + } 987 + DocumentPropertyType::U64 => { 988 + let value_as_u64: u64 = value.to_integer().map_err(ProtocolError::ValueError)?; 989 + Ok(value_as_u64.to_be_bytes().to_vec()) 990 + } 991 + DocumentPropertyType::I64 => { 992 + let value_as_i64: i64 = value.to_integer().map_err(ProtocolError::ValueError)?; 993 + Ok(value_as_i64.to_be_bytes().to_vec()) 994 + } 995 + DocumentPropertyType::U32 => { 996 + let value_as_u32: u32 = value.to_integer().map_err(ProtocolError::ValueError)?; 997 + Ok(value_as_u32.to_be_bytes().to_vec()) 998 + } 999 + DocumentPropertyType::I32 => { 1000 + let value_as_i32: i32 = value.to_integer().map_err(ProtocolError::ValueError)?; 1001 + Ok(value_as_i32.to_be_bytes().to_vec()) 1002 + } 1003 + DocumentPropertyType::U16 => { 1004 + let value_as_u16: u16 = value.to_integer().map_err(ProtocolError::ValueError)?; 1005 + Ok(value_as_u16.to_be_bytes().to_vec()) 1006 + } 1007 + DocumentPropertyType::I16 => { 1008 + let value_as_i16: i16 = value.to_integer().map_err(ProtocolError::ValueError)?; 1009 + Ok(value_as_i16.to_be_bytes().to_vec()) 1010 + } 1011 + DocumentPropertyType::U8 => { 1012 + let value_as_u8: u8 = value.to_integer().map_err(ProtocolError::ValueError)?; 1013 + Ok(value_as_u8.to_be_bytes().to_vec()) 1014 + } 1015 + DocumentPropertyType::I8 => {
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
elided lifetime has a name: packages/rs-platform-value/src/inner_value.rs#L364
warning: elided lifetime has a name --> packages/rs-platform-value/src/inner_value.rs:364:66 | 364 | pub fn get_array_slice<'a>(&'a self, key: &'a str) -> Result<&[Value], Error> { | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` | = note: `#[warn(elided_named_lifetimes)]` on by default
unused import: `crate::data_contract::errors::DataContractError::RegexError`: packages/rs-dpp/src/data_contract/document_type/index/mod.rs#L19
warning: unused import: `crate::data_contract::errors::DataContractError::RegexError` --> packages/rs-dpp/src/data_contract/document_type/index/mod.rs:19:5 | 19 | use crate::data_contract::errors::DataContractError::RegexError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `platform_value::Value`: packages/rs-dpp/src/identity/identity_factory.rs#L70
warning: unused import: `platform_value::Value` --> packages/rs-dpp/src/identity/identity_factory.rs:70:5 | 70 | use platform_value::Value; | ^^^^^^^^^^^^^^^^^^^^^
unused imports: `BTreeValueMapHelper` and `BTreeValueMapReplacementPathHelper`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/convertible.rs#L38
warning: unused imports: `BTreeValueMapHelper` and `BTreeValueMapReplacementPathHelper` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/convertible.rs:38:5 | 38 | BTreeValueMapHelper, BTreeValueMapReplacementPathHelper, BTreeValueRemoveFromMapHelper, | ^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L1
warning: unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:1:5 | 1 | use crate::data_contract::document_type::methods::DocumentTypeV0Methods; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unexpected `cfg` condition value: `contested-documents`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L21
warning: unexpected `cfg` condition value: `contested-documents` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:21:15 | 21 | #[cfg(feature = "contested-documents")] | ^^^^^^^^^^--------------------- | | | help: there is a expected value with a similar name: `"extended-document"` | = note: expected values for `feature` are: `abci`, `all_features`, `all_features_without_client`, `bls-signatures`, `cbor`, `ciborium`, `client`, `core-types`, `core-types-serde-conversion`, `core-types-serialization`, `create-contested-document`, `dash-sdk-features`, `dashcore`, `data-contract-cbor-conversion`, `data-contract-json-conversion`, `data-contract-serde-conversion`, `data-contract-value-conversion`, `data-contracts`, `default`, `document-cbor-conversion`, `document-json-conversion`, `document-serde-conversion`, `document-value-conversion`, `ed25519-dalek`, `extended-document`, `factories`, `fee-distribution`, `fixtures-and-mocks`, `identity-cbor-conversion`, `identity-hashing`, `identity-json-conversion`, `identity-serde-conversion`, `identity-serialization`, `identity-value-conversion`, and `index-serde-conversion` and 22 more = help: consider adding `contested-documents` as a feature in `Cargo.toml` = 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
unused import: `crate::state_transition::errors::StateTransitionError`: packages/rs-dpp/src/errors/protocol_error.rs#L21
warning: unused import: `crate::state_transition::errors::StateTransitionError` --> packages/rs-dpp/src/errors/protocol_error.rs:21:5 | 21 | use crate::state_transition::errors::StateTransitionError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
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: `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; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
elided lifetime has a name: packages/rs-platform-value/src/inner_value.rs#L364
warning: elided lifetime has a name --> packages/rs-platform-value/src/inner_value.rs:364:66 | 364 | pub fn get_array_slice<'a>(&'a self, key: &'a str) -> Result<&[Value], Error> { | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` | = note: `#[warn(elided_named_lifetimes)]` on by default
unused import: `crate::data_contract::errors::DataContractError::RegexError`: packages/rs-dpp/src/data_contract/document_type/index/mod.rs#L19
warning: unused import: `crate::data_contract::errors::DataContractError::RegexError` --> packages/rs-dpp/src/data_contract/document_type/index/mod.rs:19:5 | 19 | use crate::data_contract::errors::DataContractError::RegexError; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L1
warning: unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:1:5 | 1 | use crate::data_contract::document_type::methods::DocumentTypeV0Methods; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
unexpected `cfg` condition value: `contested-documents`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L21
warning: unexpected `cfg` condition value: `contested-documents` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:21:15 | 21 | #[cfg(feature = "contested-documents")] | ^^^^^^^^^^--------------------- | | | help: there is a expected value with a similar name: `"extended-document"` | = note: expected values for `feature` are: `abci`, `all_features`, `all_features_without_client`, `bls-signatures`, `cbor`, `ciborium`, `client`, `core-types`, `core-types-serde-conversion`, `core-types-serialization`, `create-contested-document`, `dash-sdk-features`, `dashcore`, `data-contract-cbor-conversion`, `data-contract-json-conversion`, `data-contract-serde-conversion`, `data-contract-value-conversion`, `data-contracts`, `default`, `document-cbor-conversion`, `document-json-conversion`, `document-serde-conversion`, `document-value-conversion`, `ed25519-dalek`, `extended-document`, `factories`, `fee-distribution`, `fixtures-and-mocks`, `identity-cbor-conversion`, `identity-hashing`, `identity-json-conversion`, `identity-serde-conversion`, `identity-serialization`, `identity-value-conversion`, and `index-serde-conversion` and 22 more = help: consider adding `contested-documents` as a feature in `Cargo.toml` = 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
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; | ^^^^^^^^^^^^^^^^^^^^^^^^^^
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; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
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 + } |
doc list item without indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L26
warning: doc list item without 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. | ++
doc list item without indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L29
warning: doc list item without 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 without indentation: packages/rs-drive/src/drive/contract/get_fetch/fetch_contract_with_history/v0/mod.rs#L32
warning: doc list item without 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. | ++
elided lifetime has a name: packages/rs-platform-value/src/inner_value.rs#L364
warning: elided lifetime has a name --> packages/rs-platform-value/src/inner_value.rs:364:66 | 364 | pub fn get_array_slice<'a>(&'a self, key: &'a str) -> Result<&[Value], Error> { | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` | = note: `#[warn(elided_named_lifetimes)]` on by default
unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L1
warning: unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:1:5 | 1 | use crate::data_contract::document_type::methods::DocumentTypeV0Methods; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unexpected `cfg` condition value: `contested-documents`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L21
warning: unexpected `cfg` condition value: `contested-documents` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:21:15 | 21 | #[cfg(feature = "contested-documents")] | ^^^^^^^^^^--------------------- | | | help: there is a expected value with a similar name: `"extended-document"` | = note: expected values for `feature` are: `abci`, `all_features`, `all_features_without_client`, `bls-signatures`, `cbor`, `ciborium`, `client`, `core-types`, `core-types-serde-conversion`, `core-types-serialization`, `create-contested-document`, `dash-sdk-features`, `dashcore`, `data-contract-cbor-conversion`, `data-contract-json-conversion`, `data-contract-serde-conversion`, `data-contract-value-conversion`, `data-contracts`, `default`, `document-cbor-conversion`, `document-json-conversion`, `document-serde-conversion`, `document-value-conversion`, `ed25519-dalek`, `extended-document`, `factories`, `fee-distribution`, `fixtures-and-mocks`, `identity-cbor-conversion`, `identity-hashing`, `identity-json-conversion`, `identity-serde-conversion`, `identity-serialization`, `identity-value-conversion`, and `index-serde-conversion` and 22 more = help: consider adding `contested-documents` as a feature in `Cargo.toml` = 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
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 | = help: consider removing this field = note: `#[warn(dead_code)]` on by default
trait `AssetLockProofLike` is never used: packages/wasm-dpp/src/identity/state_transition/asset_lock_proof/mod.rs#L48
warning: trait `AssetLockProofLike` is never used --> packages/wasm-dpp/src/identity/state_transition/asset_lock_proof/mod.rs:48:11 | 48 | 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, | ^^^^
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
elided lifetime has a name: packages/rs-platform-value/src/inner_value.rs#L364
warning: elided lifetime has a name --> packages/rs-platform-value/src/inner_value.rs:364:66 | 364 | pub fn get_array_slice<'a>(&'a self, key: &'a str) -> Result<&[Value], Error> { | -- lifetime `'a` declared here ^ this elided lifetime gets resolved as `'a` | = note: `#[warn(elided_named_lifetimes)]` on by default
unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L1
warning: unused import: `crate::data_contract::document_type::methods::DocumentTypeV0Methods` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:1:5 | 1 | use crate::data_contract::document_type::methods::DocumentTypeV0Methods; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
unexpected `cfg` condition value: `contested-documents`: packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs#L21
warning: unexpected `cfg` condition value: `contested-documents` --> packages/rs-dpp/src/state_transition/state_transitions/document/documents_batch_transition/document_transition/document_create_transition/v0/from_document.rs:21:15 | 21 | #[cfg(feature = "contested-documents")] | ^^^^^^^^^^--------------------- | | | help: there is a expected value with a similar name: `"extended-document"` | = note: expected values for `feature` are: `abci`, `all_features`, `all_features_without_client`, `bls-signatures`, `cbor`, `ciborium`, `client`, `core-types`, `core-types-serde-conversion`, `core-types-serialization`, `create-contested-document`, `dash-sdk-features`, `dashcore`, `data-contract-cbor-conversion`, `data-contract-json-conversion`, `data-contract-serde-conversion`, `data-contract-value-conversion`, `data-contracts`, `default`, `document-cbor-conversion`, `document-json-conversion`, `document-serde-conversion`, `document-value-conversion`, `ed25519-dalek`, `extended-document`, `factories`, `fee-distribution`, `fixtures-and-mocks`, `identity-cbor-conversion`, `identity-hashing`, `identity-json-conversion`, `identity-serde-conversion`, `identity-serialization`, `identity-value-conversion`, and `index-serde-conversion` and 22 more = help: consider adding `contested-documents` as a feature in `Cargo.toml` = 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
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; | ^^^^^^^^^^^^^^^^^^^^^^^^^^
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; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
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 ~ }; |
the `Err`-variant returned from this function is very large: packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs#L44
warning: the `Err`-variant returned from this function is very large --> packages/rs-drive-abci/src/execution/platform_events/core_based_updates/update_masternode_identities/update_operator_identity/v0/mod.rs:44:10 | 44 | ) -> Result<(), Error> { | ^^^^^^^^^^^^^^^^^ | ::: packages/rs-drive-abci/src/error/mod.rs:28:5 | 28 | Abci(#[from] AbciError), | ----------------------- the largest variant contains at least 208 bytes | = help: try reducing the size of `error::Error`, for example by boxing large elements or replacing it with `Box<error::Error>` = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#result_large_err
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`, `fmt_debug`, `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
sccache stats
100% - 290 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
99% - 68 hits, 0 misses, 1 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 189 hits, 0 misses, 0 errors
sccache stats
100% - 220 hits, 0 misses, 0 errors
sccache stats
100% - 185 hits, 0 misses, 0 errors
sccache stats
99% - 172 hits, 1 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 510 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 415 hits, 0 misses, 0 errors
sccache stats
100% - 417 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 215 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 428 hits, 0 misses, 0 errors
sccache stats
100% - 194 hits, 0 misses, 0 errors
sccache stats
100% - 238 hits, 0 misses, 0 errors
sccache stats
100% - 189 hits, 0 misses, 0 errors
sccache stats
100% - 208 hits, 0 misses, 0 errors
sccache stats
100% - 190 hits, 0 misses, 0 errors
sccache stats
100% - 60 hits, 0 misses, 0 errors
sccache stats
100% - 843 hits, 4 misses, 0 errors
sccache stats
99% - 1019 hits, 10 misses, 0 errors
sccache stats
100% - 190 hits, 0 misses, 0 errors
sccache stats
100% - 894 hits, 0 misses, 0 errors
sccache stats
100% - 430 hits, 1 misses, 0 errors

Artifacts

Produced during runtime
Name Size
dashpay~platform~7YAW7D.dockerbuild
92.2 KB
dashpay~platform~IUY55I.dockerbuild
84.4 KB
dashpay~platform~PTW77A.dockerbuild
85 KB
js-build-f594438090cffbd1d0b6b8de8f51584889a7fedf Expired
17.2 MB