Skip to content
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

Kill 'zpivchain' files and, with them, many circular dependencies. #2697

Merged
merged 4 commits into from
Jan 4, 2022

Conversation

furszy
Copy link

@furszy furszy commented Dec 23, 2021

This files were only existing to create circular dependencies and slow down the compilation process.

Refactored the sources to be able to move TxOutToPublicCoin and TxInToZerocoinSpend to zpivmodule and IsSerialInBlockchain to zerocoin_verify.

Fixing the following circular dependencies:

  • "wallet/wallet -> zpivchain -> wallet/wallet"
  • "zpiv/zpivmodule -> zpivchain -> zpiv/zpivmodule"
  • "consensus/zerocoin_verify -> spork -> validation -> consensus/zerocoin_verify"
  • "chain -> legacy/stakemodifier -> validation -> zpivchain -> chain"
  • "consensus/tx_verify -> consensus/zerocoin_verify -> spork -> validation -> consensus/tx_verify"
  • "crypter -> wallet/wallet -> crypter"

This changes are the building blocks for the zerocoin coinspends cache work that will be pushing on a follow-up PR, which will speedup the chain synchronization process during the zerocoin window.

@furszy furszy self-assigned this Dec 23, 2021
@furszy furszy changed the title Kill 'zpivchain' files and, with them, many circular dependencies. [WIP] Kill 'zpivchain' files and, with them, many circular dependencies. Dec 23, 2021
@random-zebra random-zebra added this to the 6.0.0 milestone Dec 24, 2021
@furszy furszy changed the title [WIP] Kill 'zpivchain' files and, with them, many circular dependencies. Kill 'zpivchain' files and, with them, many circular dependencies. Dec 24, 2021
@furszy furszy force-pushed the 2021_fix_circular_dependencies branch from 08630df to 4233f28 Compare December 26, 2021 23:35
@furszy
Copy link
Author

furszy commented Dec 27, 2021

rebased, conflicts solved.

it's only used there and has nothing to do with the "zpivchain" (whatever that was).

Plus clean unneeded dependencies.
And, as it's only used inside this function, merge it with the IsTransactionInChain function.
…p files.

Plus, clean zpivchain solved circular dependencies
@furszy furszy force-pushed the 2021_fix_circular_dependencies branch from 4233f28 to aab4705 Compare December 30, 2021 22:48
Copy link

@random-zebra random-zebra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tested ACK aab4705

Copy link
Collaborator

@Fuzzbawls Fuzzbawls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK aab4705

@furszy furszy merged commit 4d2d770 into PIVX-Project:master Jan 4, 2022
@Fuzzbawls Fuzzbawls modified the milestones: 6.0.0, 5.5.0 Sep 11, 2022
@furszy furszy deleted the 2021_fix_circular_dependencies branch November 29, 2022 14:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants