Support custom EVM versions #11010
Labels
closed due inactivity
The issue/PR was automatically closed due to inactivity.
protocol design 🔮
Potential changes to ABI, meta data, standard JSON
stale
The issue/PR was marked as stale because it has been open for too long.
Currently the compiler has a setting for "evm version" (introduced in #1117). This setting is basically tied to the Ethereum mainnet hard forks, i.e.
homestead
,byzantium
,istanbul
, etc.Currently each of these options set a bunch of underlying settings (see libsolutil/EVMVersion):
Additionally it controls the "code size too big" warning enabled since
spuriousDragon
.Since custom EVM versions and custom chains come up as a question/discussion once a year, perhaps for the long term we could consider exposing these underlying settings via standard json.
One way I could think is that the
evmVersion
setting would set the baseline, and modifying any specific setting would override that. The other option is to introduce a newevmVersion
called "custom" and require an explicit value for each of the settings listed above.This of course does not solve the problem of supporting new features, but allows fine tuning for custom chains. It is unclear however if this would be entirely beneficial for them.
The text was updated successfully, but these errors were encountered: