mirror of
https://github.com/ethereum/consensus-specs.git
synced 2026-02-02 04:45:01 -05:00
1.2 KiB
1.2 KiB
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.jsonby runningmake(this requiressolcto be in the path) - Download eth2.0-specs
- Replace
eth2.0-specs/deposit_contract/contracts/validator_registration.jsonwithdeposit_contract.json - In the
eth2.0-specsdirectory runmake install_deposit_contract_testerto install the tools needed (make sure to have Python 3.7 and pip installed) - Finally in the
eth2.0-specsdirectory runmake test_deposit_contractto 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