Closed scravy closed 5 years ago
rebased to fix conflicts with master/commits merged in between. force-pushed.
I like the design with the LegacyValidationInterface. That's a nice modularization.
I read through the changes and they look pretty straightforward to me. Somebody who is more familiar with this part of the code should have a look as well, though.
utACK 819fc3c
Rebased with master from 3131be4 to 11b3d34
The commits, in order:
(Contextual)?CheckBlock(Header)?
functions to a component calledLegacyValidationInterface
nonce
from headerThe
LegacyValidationInterface
is a proper component and has two implementations: One that harbours the current*Check*
functions (moved them, only thing I did is I adapted the code style as it's added in a new compilation unit). Unit tests and functional tests pass exactly as before with it.A new implementation, since the API of
BlockValidator
andStakeValidator
are different, will translate between the error-codes returned byBlockValidator::*Check*
andCValidationState
. In this pull this implementation is left empty for now to reduce the size of the changeset.Reincarnation of https://github.com/dtr-org/unit-e/pull/433
This pull request alone should bring master into a state which can be deployed in testnet as is.