Highlights:
- Raises the maximum deployed (runtime) contract code size from 24KiB (24,576 bytes) to 64KiB (65,536 bytes) by updating EIP-170’s limit.
- Raises the maximum initcode size from 48KiB (49,152 bytes) to 128KiB (131,072 bytes) by updating EIP-3860’s limit, preserving the existing 2:1 initcode-to-runtime ratio.
- Primary motivation is developer usability: fewer forced proxy/splitting patterns, lowering complexity, deployment overhead, and potential attack surface created by multi-contract architectures.
- Economic and performance impact is intended to be bounded: initcode word-cost from EIP-3860 stays the same, and operations like EXTCODECOPY/EXTCODESIZE already scale gas with accessed code size.
- Requires a hard fork (network upgrade): existing contracts remain valid and unchanged, but only post-upgrade deployments can use the higher limits.
ELI5:
Smart contracts on Ethereum have a maximum size limit, like a file size limit. Right now, some apps are getting too big and developers have to split them into multiple smaller contracts, which is more complicated and can be less safe. This proposal raises the maximum size so contracts can fit more features in one place. It also raises the maximum “setup code” (initcode) size in the same proportion as before, and keeps the extra gas fee rules the same so bigger contracts still cost more to deploy.
• • •
Missing some Tweet in this thread? You can try to
force a refresh