The solidity 0.8.0 patch notes state:
ABI coder v2 is activated by default.
You can choose to use the old behaviour using
pragma abicoder v1;
. The pragmapragma experimental ABIEncoderV2;
is still valid, but it is deprecated and has no effect. If you want to be explicit, please usepragma abicoder v2;
instead.
I believe this means newer contracts will use ABI coder v2 by default. Are these new contracts compatible with existing web UI code that uses web3.js, and was only written with ABI coder v1 in mind?