EIP-5806 is an EIP adds a new transaction type that allows EOAs to execute arbitrary code using a delegate-call-like mechanism.
- go-ethereum: Prototype working + initially tested. Missing formal tests and review.
- ethereumjs: Prototype working + initially tested. Missing formal tests and review.
- hardhat (edr): Work in progress. Not tested. Blocked by revm. (needs to be updated to support revm 7.1 based forks)
- revm: Work in progress. Not tested. (Based on 7.1)
- ethers.js: Prototype working + initially tested. Missing formal tests and review. Used for testing clients.
waiting for contributions
Install this specific version of hardahat:
npm install 'https://gitpkg.now.sh/Amxx/hardhat/packages/hardhat-core?features/eip5806/2.20.2'
and this specific version of ethers:
npm install 'github:amxx/ethers.js#features/eip-5806-transactions'
(with the normal @nomicfoundation/hardhat-ethers
)
Enable Prague and 5806 in your hardhat.config.json
// ...
module.exports = {
// ...
networks: {
hardhat: {
hardfork: 'prague',
eips: [5806],
},
},
// ...
};
See packages/test
and packages/test-uniswap
for examples.