v7.0.0-beta.1 - Istanbul Support
·
1421 commits
to develop
since this release
This is the first Ethereum
tests release with broader Istanbul
support, see the "Istanbul support" section for a list with relevant PRs.
This release also comes with some structural changes to the test folder layout, the most important ones being the introduction of a new separate LegacyTests
test suite for state tests up to Constantinople
, a new sub folder structure for BlockchainTests
and a new separate suite GeneralStateTests/stTimeConsuming/
for time consuming tests. For further details please have a look at the "Test Format Changes" section.
Istanbul Support
EIP Test Support
- EIP-152: Blake2b
F
precompile,CALL
andCALLCODE
tests added for the standard unit test vectors for Blake2bF
, PR #619 - EIP-1344: ChainID opcode, state tests added in PR #627
- EIP-1884: Repricing for trie-size-dependent opcodes,
SELFBALANCE
andSLOAD
gas cost tests added in PR #627
Test Regeneration
- Regeneration of
BlockchainTests/GeneralStateTests
(hive
tests), PR #632 - Updated
TransactionTests/
toIstanbul
, PR #633 - Updated state tests with latest
lllc
, PR #635 - Updated
GeneralStateTests
toIstanbul
, PR #639
Constantinople/Petersburg Updates
The following tests touching Constantinople/Petersburg behavior have been added or updated since the last release:
- Added
ConstantinopleFix
(akaPetersburg
) tests, PR #582 - Updated
ByzantiumToConstantinople
transition test toByzantiumToConstantinopleFix
(seeBlockchainTests/TransitionTests
), PR #583, PR #588 - New
SAR
,SHL
,SHR
combinations, PR #574
Test Format Changes
- New
LegacyTests
suite forBlockchainTests/GeneralStateTests
andGeneralStateTests
for HFs up toConstantinople
(so not:ConstantinopleFix
akaPetersburg
), PR #623 - New subfolder structure for
BlockchainTests
with added folders forInvalidBlocks
andValidBlocks
,
PR #605 - New separate suite
GeneralStateTests/stTimeConsuming/
for time consuming tests, PR #595 - Moved blockchain specific tests from
GeneralStateTests
toBlockchainTests
, PR #590 - Old unmaintained RPC test scripts in
RPCTests
have been removed, PR #573
Retesteth / RPC
- Added
Istanbul
toRetesteth
configuration, PR #638 - Updated
Retesteth
configurations, PR #634 - Default
Retesteth
genesis configurations, PR #625 - Added
Retesteth
configuration forPantheon
client, PR #622 - Autokill
Geth
threads instartGethThreads.sh
, PR #613 - Added fork configurations to
Geth
config, PR #602 - Fixed
BlockchainTests
RPC
issues, PR #594
General Test Additions
- More
RLP
invalid tests for non-optimal lengths (seeRLPTests/
), PR #612 - More tests on touching precompiles along
REVERT
usage (seeGeneralStateTests/stRevertTest/*Touch*.json
), PR #580, PR #610 - New
sStore
test with non-zero nonce on collision (seeGeneralStateTests/stSStoreTest/InitCollisionNonZeroNonce.json
), PR #578
Bug Fixes/Optimizations
- Corrected tests with a missing
expect
section, PR #624 - Refill of all
BlockchainTests/GeneralStateTests/
, PR #621 - Removed post sections with no post conditions, PR #618
- Corrected huge expect sections in state tests (see
stAttackTest/
, 'stQuadraticComplexity/'),
PR #617 - Compressed huge state data in
bcExploitTest
tests, PR #616 - Removed ambiguous test in
BlockchainTests/ValidBlocks/bcMultiChainTest/ChainAtoChainB_blockorder2.json
, PR #615 - Fixed
RevertPrecompiledTouch
test, PR #609 - Converted blockchain specific state tests into
BlockchainTests
, PR #607 - Various test fixes, PR #603
- Fixes and updates to various state tests, PR #599
- Fixed
0x
missing intransaction
->data
inGeneralStateTests
, PR #598 - Removed a test case from
badOpcodes
state tests (seeGeneralStateTests/stBadOpcode/
), PR #592 - Fixed
gasLimit
issue inGeneralStateTests
, PR #590 - Consistently use
0x
prefixes inRLPTests
, PR #587 - Removed underspecified
lotsOfBranches
test (seeBlockchainTests/bcTotalDifficultyTest/lotsOfBranches.json
), PR #579 - Changed
gasUsed
to 0 ingenesisBlockHeader
fordataTx
tests (seeBlockchainTests/bcValidBlockTest/dataTx.json
anddataTx2.json
), PR #577