-
Notifications
You must be signed in to change notification settings - Fork 304
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
Blockchain Tests Format Changes #464
Labels
breaking-change
Items with this tag should be called out in release notes
Comments
cheme
added a commit
to cheme/parity-ethereum
that referenced
this issue
Oct 12, 2018
Since tests has been regenerated those one were failing on block difficulty check. Update ethereum/tests, waiting for cost fix (block test are still commented).
cheme
added a commit
to cheme/parity-ethereum
that referenced
this issue
Oct 26, 2018
Since tests has been regenerated those one were failing on block difficulty check. Update ethereum/tests, waiting for cost fix (block test are still commented).
5chdn
pushed a commit
to openethereum/parity-ethereum
that referenced
this issue
Nov 1, 2018
…9744) (#9814) * Update test reference. Block test are really not working so I disabled a few by commenting directly in source. * Move ethtest commit cursor. * Implements 'NoProof' engine from ethereum/tests#464 . Since tests has been regenerated those one were failing on block difficulty check. Update ethereum/tests, waiting for cost fix (block test are still commented). * Update tests submodule reference to latest (all test passing except an identified case). Fix block reward of constantinople json. * Restore broken test by using old json tests files. * Use CanonNoSeal instead of a custom engine, still have to include some additional tests code. * Gas upper limit check in json_chain test was bad, moving the test to verification, the test is running in `verify_header_param`. Note that test was previously only for ethash, and now for any engine. * Restore old behavior (gas uper limit only for ethash engine), at the cost of an additional trait method. * Proper rpc test fix. * Update tests submodule, add SStore bug tests. * Fix json issue tabulation. Update tests submodule to latest master (lot of new sstore tests passing) * Switch ethereum/tests to tag 6.0.0-beta.1 (no tests changes from latest synch). * Display hex with separator, use indirection instead of clone for copy types.
cheme
added a commit
to openethereum/parity-ethereum
that referenced
this issue
Nov 1, 2018
…9744) (#9814) * Update test reference. Block test are really not working so I disabled a few by commenting directly in source. * Move ethtest commit cursor. * Implements 'NoProof' engine from ethereum/tests#464 . Since tests has been regenerated those one were failing on block difficulty check. Update ethereum/tests, waiting for cost fix (block test are still commented). * Update tests submodule reference to latest (all test passing except an identified case). Fix block reward of constantinople json. * Restore broken test by using old json tests files. * Use CanonNoSeal instead of a custom engine, still have to include some additional tests code. * Gas upper limit check in json_chain test was bad, moving the test to verification, the test is running in `verify_header_param`. Note that test was previously only for ethash, and now for any engine. * Restore old behavior (gas uper limit only for ethash engine), at the cost of an additional trait method. * Proper rpc test fix. * Update tests submodule, add SStore bug tests. * Fix json issue tabulation. Update tests submodule to latest master (lot of new sstore tests passing) * Switch ethereum/tests to tag 6.0.0-beta.1 (no tests changes from latest synch). * Display hex with separator, use indirection instead of clone for copy types.
5chdn
added a commit
to openethereum/parity-ethereum
that referenced
this issue
Nov 2, 2018
* version: mark 2.2.0 beta * ci: remove failing tests for android, windows, and macos (#9788) * ci: remove failing tests for android, windows, and macos * ci: restore android build jobs * Move state root verification before gas used (#9841) * Classic.json Bootnode Update (#9828) * fix: Update bootnodes list to only responsive nodes * feat: Add more bootnodes to classic.json list * feat: Add retested bootnodes * Implement NoProof for json tests and update tests reference (replaces #9744) (#9814) * Update test reference. Block test are really not working so I disabled a few by commenting directly in source. * Move ethtest commit cursor. * Implements 'NoProof' engine from ethereum/tests#464 . Since tests has been regenerated those one were failing on block difficulty check. Update ethereum/tests, waiting for cost fix (block test are still commented). * Update tests submodule reference to latest (all test passing except an identified case). Fix block reward of constantinople json. * Restore broken test by using old json tests files. * Use CanonNoSeal instead of a custom engine, still have to include some additional tests code. * Gas upper limit check in json_chain test was bad, moving the test to verification, the test is running in `verify_header_param`. Note that test was previously only for ethash, and now for any engine. * Restore old behavior (gas uper limit only for ethash engine), at the cost of an additional trait method. * Proper rpc test fix. * Update tests submodule, add SStore bug tests. * Fix json issue tabulation. Update tests submodule to latest master (lot of new sstore tests passing) * Switch ethereum/tests to tag 6.0.0-beta.1 (no tests changes from latest synch). * Display hex with separator, use indirection instead of clone for copy types.
lithp
added
the
breaking-change
Items with this tag should be called out in release notes
label
Dec 18, 2018
DemiMarie
pushed a commit
to poanetwork/parity-ethereum
that referenced
this issue
Jan 23, 2019
* version: mark 2.2.0 beta * ci: remove failing tests for android, windows, and macos (openethereum#9788) * ci: remove failing tests for android, windows, and macos * ci: restore android build jobs * Move state root verification before gas used (openethereum#9841) * Classic.json Bootnode Update (openethereum#9828) * fix: Update bootnodes list to only responsive nodes * feat: Add more bootnodes to classic.json list * feat: Add retested bootnodes * Implement NoProof for json tests and update tests reference (replaces openethereum#9744) (openethereum#9814) * Update test reference. Block test are really not working so I disabled a few by commenting directly in source. * Move ethtest commit cursor. * Implements 'NoProof' engine from ethereum/tests#464 . Since tests has been regenerated those one were failing on block difficulty check. Update ethereum/tests, waiting for cost fix (block test are still commented). * Update tests submodule reference to latest (all test passing except an identified case). Fix block reward of constantinople json. * Restore broken test by using old json tests files. * Use CanonNoSeal instead of a custom engine, still have to include some additional tests code. * Gas upper limit check in json_chain test was bad, moving the test to verification, the test is running in `verify_header_param`. Note that test was previously only for ethash, and now for any engine. * Restore old behavior (gas uper limit only for ethash engine), at the cost of an additional trait method. * Proper rpc test fix. * Update tests submodule, add SStore bug tests. * Fix json issue tabulation. Update tests submodule to latest master (lot of new sstore tests passing) * Switch ethereum/tests to tag 6.0.0-beta.1 (no tests changes from latest synch). * Display hex with separator, use indirection instead of clone for copy types.
of this changes implemented is "NoProof" seal engine |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
A small change to the blockchain test format is needed.
This format is used by have and many clients so I want to keep the changes at minimum.
However we do not have any agreed format scheme so far. I think some fields could be removed as it is obsolite.
The current blockchain format looks like this:
I have found out that this genesis fields are the minimum of information that is required for chain initialization:
We don't really need rlp decoded fields;
The changed format could be like this:
This is a small change.
If a block is invalid then there will be field
"exceptions" : "exceptionName"
. Clients have different exceptions so the exception name is just a comment. If there is no such field the block must be valid and imported without issues.Sections Transactions and Uncles are removed. The information about it is in RLP.
New field
"engine" : "NoProof"
, - meaning that you dont have to check the block's difficulty and nonce in this test. (should optimize the test generation time and test execution time)This is a small change that should not be hard to change on other clients.
However I would like to rise the question of developing ethereum tests to an even more general set of tests which could be used by other ethereum implementations.
The fields
"genesisBlockHeader"
,"engine"
,"pre"
and"network"
basically represent genesis.json configuration. If we come to a standart in such configuration we could encode in into blockchain tests as well.Fathermore if in such configuration you would be able to configure EVM opcode gasPrices - the blockchain tests could be used for other client implementations.
The text was updated successfully, but these errors were encountered: