Home

Awesome

Open Ethereum with instantSeal engine and byzantium EIPs enabled

This is the open ethereum instantSeal byzantium enabled development node used primarily in platform-backend.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Installing

Clone repository and build docker container

make run

Open ethereum version

We use v3.1.0.

Connecting to node

To connect to web interface of the node

http://127.0.0.1:8180/

Simulate new blocks

If you want you can simulate new blocks that will be "mined" automatically even if you won't issue any transactions. To enable this functionality you need to set env variable.

export SIMULATE_BLOCKS=true

Script simulates new transactions by regularly sending 0eth transfer from one of the unlocked accounts to itself. Default time between blocks is 10s. But you can change it by setting BLOCKS_FREQ env variable.

export BLOCKS_FREQ=5

Deployment with Truffle

Parity will not work with Truffle. Truffle expects null returned as receipt when transaction is still pending, parity returns normal receipt but with blockHash == null. You can force this behavior (so called geth mode) by executing (mind trailing --geth --force-ui flags)

When deploying it's good idea to unlock your account. Command line was provided in supervisord.conf (default one) unlocks 8 predefined accounts. Unlocked account must have test password. If not change password file.

Byzantium and pre-byzantium error handling for calls and transaction

Calling constant method that reverts

Executing transactions that revert

Adding unlocked accounts

Recepie was changing during time so here we have a bit mess in our unlocked accounts: