Skip to content

Retesteth v0.2.2 - merge

Compare
Choose a tag to compare
@winsvega winsvega released this 30 Jul 08:53
· 501 commits to master since this release
2286dc1

Merge PoS structures support in tests, little refactoring, new option --testfolder, --nologcolor, custom chainID in transactions
Geth + custom eip example configuration, MacOS support, update ReadME
Compatible test release: https://github.com/ethereum/tests/releases/tag/v11

New options:

    --testfolder <SubFolder>                Run tests from a custom test folder located in a given suite. Requires -t <TestSuite>
    --nologcolor                                    Disable color codes in log output

Announcment

Retesteth is ethereum test runner / generator tool for the tests (https://github.com/ethereum/tests)
Uses existing clients to run/generate the tests. See documentation. (https://ethereum-tests.readthedocs.io/en/latest/)
The test process diagram: http://tinyurl.com/2ctak8yn

Testing stats

Testing results are available at http://retesteth.ethdevops.io/
There is a web tool for vmtracing the tests using supported clients and retesteth: http://retesteth.ethdevops.io/web/
All blockchain tests are being run by hive tool: https://hivetests.ethdevops.io/

Changelog

Interesting

Technical

  • update cmake build script to use latest boost 1.79 version for MacOS support
  • export solidity version to generated tests (solc)
  • :label prefix for label names is not exported to generated state tests to save space
  • if test_setChainParams fail, the tests continue exectution
  • experiment with std::move to reduce dynamic memory allocation
  • protection from repeating forks in transaction tests
  • refactor t8ntool backend code (blockchain builder)
  • refactor testSuite.cpp, split heavy functions
  • go version updated in docker file to support geth, support changes in geth t8n
  • correct translating the fork name to geth t8n tool internal forkname
  • fix memory leaks / race conditions what found
  • new test exception names
  • t8ntool backend blockchain logic for Merge support
  • check data pointer to be empty when printin DataObject, a rare bug happened when exception is thrown and DataObject is printed after
  • refactor t8ntool backend block verification a litle

ubuntu 18.04.3:
http://retesteth.ethdevops.io/release/0.2.2-merge/ubuntu-18.04.3/retesteth-0.2.2-merge-ubuntu-18.04.3

Might need the dependecies install:

- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
- sudo apt-get update
- sudo apt-get install gcc-4.9
- sudo apt-get install --only-upgrade libstdc++6

macOS-XCode12:
http://retesteth.ethdevops.io/release/0.2.2-merge/macOS-XCode12/retesteth-0.2.2-merge-macOS-XCode12

Docker:
geth version: Version: 1.10.22-unstable Git Commit: fea569f90aa608abeb13cea6c9fd55f1d0a77f40
geth evm version: evm version 1.10.22-unstable-fea569f9-20220729
lllc version: Version: 0.5.14-develop.2022.7.30+commit.a096d7a9.Linux.g++
solidity version: Version: 0.8.6+commit.11564f7e.Linux.g++
http://retesteth.ethdevops.io/release/0.2.2-merge/dretesteth-0.2.2-merge.tar

Documentation:
https://ethereum-tests.readthedocs.io/en/latest/