Overview
This release introduces Multicall3
. Multicall3
aggregates results from multiple contract calls.
It contains the following improvements over prior multicall contracts:
- Cheaper to use: fit more calls into a single request before hitting the RPC's eth_call gas limit
- Backwards compatible: it can be dropped in to existing code by simply changing the address
- Uses the same, memorable deployment address on all networks
The major changes to the previous Multicall
and Multicall2
are the introduction of the aggregate3
and aggregate3Value
functions that allow for failure requirements at the call level. So for a set of calls, each call indicates whether it allows the call to fail. This greatly improves multicalling flexibility.