Skip to content

Commit b53d23a

Browse files
Merge pull request #16030 from ethereum/makePragueDefaultEVMVersion
Set prague as the default EVM version
2 parents d0bae61 + 13d734f commit b53d23a

File tree

24 files changed

+39
-62
lines changed

24 files changed

+39
-62
lines changed

.circleci/config.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ parameters:
3434
default: "solbuildpackpusher/solidity-buildpack-deps@sha256:98f963ed799a0d206ef8e7b5475f847e0dea53b7fdea9618bbc6106a62730bd2"
3535
evm-version:
3636
type: string
37-
default: cancun
37+
default: prague
3838

3939
orbs:
4040
win: circleci/[email protected]
@@ -831,6 +831,7 @@ defaults:
831831
project: uniswap
832832
binary_type: native
833833
image: cimg/node:18.16
834+
resource_class: medium # Tests run out of memory on a smaller machine
834835

835836
- job_native_test_ext_prb_math: &job_native_test_ext_prb_math
836837
<<: *requires_b_ubu_static

.circleci/soltest_all.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ EVMS_WITH_EOF=(osaka)
3838
# set EVM_VALUES to the default values.
3939
IFS=" " read -ra EVM_VALUES <<< "${1:-${DEFAULT_EVM_VALUES[@]}}"
4040

41-
DEFAULT_EVM=cancun
41+
DEFAULT_EVM=prague
4242
OPTIMIZE_VALUES=(0 1)
4343
EOF_VERSIONS=(0 1)
4444

Changelog.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Language Features:
44

55

66
Compiler Features:
7+
* EVM: Set default EVM Version to `prague`.
78
* NatSpec: Capture Natspec documentation of `enum` values in the AST.
89

910

docs/using-the-compiler.rst

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -176,12 +176,12 @@ at each version. Backward compatibility is not guaranteed between each version.
176176
- Introduces ``prevrandao()`` and ``block.prevrandao``, and changes the semantics of the now deprecated ``block.difficulty``, disallowing ``difficulty()`` in inline assembly (see `EIP-4399 <https://eips.ethereum.org/EIPS/eip-4399>`_).
177177
- ``shanghai``
178178
- Smaller code size and gas savings due to the introduction of ``push0`` (see `EIP-3855 <https://eips.ethereum.org/EIPS/eip-3855>`_).
179-
- ``cancun`` (**default**)
179+
- ``cancun``
180180
- The block's blob base fee (`EIP-7516 <https://eips.ethereum.org/EIPS/eip-7516>`_ and `EIP-4844 <https://eips.ethereum.org/EIPS/eip-4844>`_) can be accessed via the global ``block.blobbasefee`` or ``blobbasefee()`` in inline assembly.
181181
- Introduces ``blobhash()`` in inline assembly and a corresponding global function to retrieve versioned hashes of blobs associated with the transaction (see `EIP-4844 <https://eips.ethereum.org/EIPS/eip-4844>`_).
182182
- Opcode ``mcopy`` is available in assembly (see `EIP-5656 <https://eips.ethereum.org/EIPS/eip-5656>`_).
183183
- Opcodes ``tstore`` and ``tload`` are available in assembly (see `EIP-1153 <https://eips.ethereum.org/EIPS/eip-1153>`_).
184-
- ``prague`` (**experimental**)
184+
- ``prague`` (**default**)
185185
- ``osaka`` (**experimental**)
186186
- Experimental compilation to EOF is available starting from this version. (`EIP-7692 <https://eips.ethereum.org/EIPS/eip-7692>`_)
187187

@@ -356,8 +356,8 @@ Input Description
356356
// Version of the EVM to compile for (optional).
357357
// Affects type checking and code generation. Can be homestead,
358358
// tangerineWhistle, spuriousDragon, byzantium, constantinople,
359-
// petersburg, istanbul, berlin, london, paris, shanghai, cancun (default), prague (experimental) or osaka (experimental).
360-
"evmVersion": "cancun",
359+
// petersburg, istanbul, berlin, london, paris, shanghai, cancun, prague (default) or osaka (experimental).
360+
"evmVersion": "prague",
361361
// EVM Object Format version to compile for (optional, experimental).
362362
// Currently the only valid value is 1. If not specified, legacy non-EOF bytecode will be generated.
363363
"eofVersion": null,

liblangutil/EVMVersion.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ class EVMVersion:
167167

168168
EVMVersion(Version _version): m_version(_version) {}
169169

170-
Version m_version = Version::Cancun;
170+
Version m_version = Version::Prague;
171171
};
172172

173173
}

scripts/externalTests/common.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ set -e
2222

2323
# Requires $REPO_ROOT to be defined and "${REPO_ROOT}/scripts/common.sh" to be included before.
2424

25-
CURRENT_EVM_VERSION=cancun
25+
CURRENT_EVM_VERSION=prague
2626

2727
AVAILABLE_PRESETS=(
2828
legacy-no-optimize

scripts/externalTests/runners/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
from test_helpers import settings_from_preset
4242
from test_helpers import SettingsPreset
4343

44-
CURRENT_EVM_VERSION: str = "cancun"
44+
CURRENT_EVM_VERSION: str = "prague"
4545

4646
@dataclass
4747
class TestConfig:

scripts/tests.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ do
115115
for vm in $EVM_VERSIONS
116116
do
117117
FORCE_ABIV1_RUNS="no"
118-
if [[ "$vm" == "cancun" ]]
118+
if [[ "$vm" == "prague" ]]
119119
then
120120
FORCE_ABIV1_RUNS="no yes" # run both in paris
121121
fi
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
--evm-version cancun --no-cbor-metadata --via-ir --ir --debug-info none
1+
--no-cbor-metadata --via-ir --ir --debug-info none
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
--evm-version cancun --no-cbor-metadata --via-ir --optimize --ir-optimized --debug-info none
1+
--no-cbor-metadata --via-ir --optimize --ir-optimized --debug-info none

0 commit comments

Comments
 (0)