-
Notifications
You must be signed in to change notification settings - Fork 14
Fix/masternode list pipelines #599
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…dditional ui for sync progress indication, include coinjoin-related addresses for bloom filtering, add address registration test, refactor transaction data serialization
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This pull request simplifies code and enhances functionality in the DashSync project by improving checkpoint management, error handling, threading, and configuration.
- Introduces helper macros in BigIntTypes.h and improves bitwise ops in NSData+Dash.m
- Adds asynchronous dispatch for blockchain operations and refactors diff configuration creation
- Removes unused code and improves error handling in NSError+Platform.h
Files not reviewed (18)
- DashSync/shared/Categories/BigIntTypes.h: Language not supported
- DashSync/shared/Categories/NSData/NSData+Dash.m: Language not supported
- DashSync/shared/DSDashSharedCore.m: Language not supported
- DashSync/shared/DashSync.m: Language not supported
- DashSync/shared/Libraries/AdvancedOperations/Others/NSError+Platform.h: Language not supported
- DashSync/shared/Libraries/AdvancedOperations/Others/NSError+Platform.m: Language not supported
- DashSync/shared/Models/Chain/DSChain+Checkpoint.h: Language not supported
- DashSync/shared/Models/Chain/DSChain+Checkpoint.m: Language not supported
- DashSync/shared/Models/Chain/DSChain+Transaction.m: Language not supported
- DashSync/shared/Models/Chain/DSChain.m: Language not supported
- DashSync/shared/Models/CoinJoin/DSCoinJoinManager.h: Language not supported
- DashSync/shared/Models/CoinJoin/Utils/DSMasternodeGroup.m: Language not supported
- DashSync/shared/Models/Derivation Paths/DSDerivationPathFactory.m: Language not supported
- DashSync/shared/Models/Derivation Paths/DSFundsDerivationPath.m: Language not supported
- DashSync/shared/Models/Derivation Paths/DSGapLimit.h: Language not supported
- DashSync/shared/Models/Entities/DSBlockchainIdentityKeyPathEntity+CoreDataProperties.h: Language not supported
- DashSync/shared/Models/Identity/DSIdentity+ContactRequest.m: Language not supported
- DashSync/shared/Models/Identity/DSIdentity+Profile.m: Language not supported
Comments suppressed due to low confidence (1)
DashSync/shared/Models/Chain/DSChainCheckpoints.h:121
- [nitpick] Consider aligning the naming of the checkpoint path in the mainnet array with the other entries; using an uppercase prefix like 'ML' instead of 'mn_list_diff' could improve consistency.
{2227096, "000000000000000899fdcd85241296146c365b238a655517da8dcd08a8a79b98", 1740273743, 0x19287724u, "mn_list_diff_0_2227096", "298585a781111ad060e5e99669893a3999b52b1d8125be0297e7efc6e62ff231", "00000000000000000000000000000000000000000000a491879d910661346c7b"},
Syn-McJ
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good
This pull request introduces a variety of changes across multiple files in the DashSync project, focusing on code simplification, bug fixes, and feature enhancements. The most significant updates include the addition of helper macros, improvements to threading for blockchain data operations, removal of unused or redundant code, and enhancements to error handling and configuration management.
Code Simplifications and Enhancements:
FLAG_IS_SETinBigIntTypes.hto simplify bitwise flag checks.1 << bitswith1U << bitsinNSData+Dash.mto ensure proper unsigned integer operations. [1] [2]Threading and Synchronization Improvements:
networkingQueuefor blockchain data operations inDashSync.m, ensuring better thread management during chain sync restarts. [1] [2]Code Cleanup:
DSDashSharedCore.m, such asIssueWithMasternodeList,NotifySyncState, andget_cl_signature_by_block_hash. [1] [2]initOnChainmethod by delegating diff configuration creation to a new method inDSChain+Checkpoint. [1] [2]Error Handling Enhancements:
ffi_from_quorum_validation_errorinNSError+Platform.hand updated its implementation to handle additional error cases. [1] [2] [3]Configuration Management:
createDiffConfiginDSChain+Checkpointfor dynamic diff configuration creation based on the network type (mainnet or testnet). [1] [2]These changes collectively improve the maintainability, performance, and robustness of the DashSync codebase.