9fe3c2f62c | ||
---|---|---|
lib | ||
tests | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
AUTHORS | ||
LICENSE | ||
Makefile | ||
README.md | ||
circle.yml | ||
deposit_contract.sol | ||
shell.nix |
README.md
eth2-deposit-contract
This is a just for fun port of the Vyper Eth 2.0 deposit contract to Solidity.
The motivation is to run the SMTChecker and the new Yul IR generator option (--ir
) in the compiler.
THIS IS NOT THE OFFICIAL DEPOSIT CONTRACT. NOT SUITABLE FOR ANY USE
Using this with the tests
- Create the
deposit_contract.json
by runningmake
(this requiressolc
to be in the path) - Download eth2.0-specs
- Replace
eth2.0-specs/deposit_contract/contracts/validator_registration.json
withdeposit_contract.json
- In the
eth2.0-specs
directory runmake install_deposit_contract_tester
to install the tools needed (make sure to have Python 3.7 and pip installed) - Finally in the
eth2.0-specs
directory runmake test_deposit_contract
to execute the tests
The Makefile currently compiles the code without optimisations. To enable optimisations add --optimize
to the solc
line.
Running randomized dapp
tests:
Install the latest version of dapp
by following the instructions at dapp.tools. Then run
make test