Skip to content

Commit 7902f16

Browse files
authored
feat(l1, l1): make levm the default vm. (#2603)
**Motivation** Levm is becoming more mature, and it needed for the L2. Let's set it as default across the board.
1 parent 7f1cd71 commit 7902f16

File tree

5 files changed

+11
-123
lines changed

5 files changed

+11
-123
lines changed

.github/workflows/common_hive_reports.yaml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,6 @@ on:
1212
required: true
1313
type: string
1414

15-
env:
16-
CARGO_TERM_COLOR: always
17-
1815
jobs:
1916
run-hive:
2017
name: Hive (${{ inputs.evm }}) - ${{ matrix.test.name }}

.github/workflows/pr-main_l1.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ on:
66
pull_request:
77
branches: ["**"]
88
paths-ignore:
9-
- "crates/vm/levm/**" # We run this in a separate workflow
109
- "crates/l2/**" # Behind a feature flag not used in this workflow
1110

1211
concurrency:
@@ -194,7 +193,6 @@ jobs:
194193
run: |
195194
docker load --input /tmp/ethrex_image.tar
196195
197-
# By default ethrex uses revm as evm backend.
198196
- name: Run Hive Simulation
199197
run: chmod +x hive && ./hive --client ethrex --ethrex.flags "${{ matrix.ethrex_flags }}" --sim ${{ matrix.simulation }} --sim.limit "${{ matrix.test_pattern }}" --sim.parallelism 16
200198

.github/workflows/pr-main_levm.yaml

Lines changed: 2 additions & 109 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,6 @@ concurrency:
1717
permissions:
1818
pull-requests: write
1919

20-
env:
21-
CARGO_TERM_COLOR: always
22-
2320
jobs:
2421
ef-test:
2522
if: ${{ github.event_name != 'merge_group' }}
@@ -199,86 +196,17 @@ jobs:
199196
Same results between main branch and the current PR.
200197
edit-mode: replace
201198

202-
hive-report-creation:
203-
uses: ./.github/workflows/common_hive_reports.yaml
204-
with:
205-
evm: levm
206-
job_type: trigger
207-
208-
hive-report-creation-main:
209-
uses: ./.github/workflows/common_hive_reports.yaml
210-
with:
211-
evm: levm
212-
job_type: main
213-
214-
# Check we don't have a regression against main
215-
hive-test:
216-
if: ${{ github.event_name != 'merge_group' }}
217-
name: Hive Tests Check
218-
needs: [hive-report-creation, hive-report-creation-main]
219-
runs-on: ubuntu-latest
220-
steps:
221-
- name: Checkout sources
222-
uses: actions/checkout@v4
223-
224-
- name: Download results (pr)
225-
uses: actions/download-artifact@v4
226-
with:
227-
name: results_levm_trigger.md
228-
229-
- name: Rename result (1)
230-
run: |
231-
cp results.md results_levm.md
232-
echo "RESULTS:"
233-
cat results_levm.md
234-
235-
- name: Download results (main)
236-
uses: actions/download-artifact@v4
237-
with:
238-
name: results_levm_main.md
239-
# If we don't have the file it will use the result(1) file
240-
continue-on-error: true
241-
242-
- name: Rename result (2)
243-
run: |
244-
cp results.md results_levm_main.md
245-
echo "RESULTS:"
246-
cat results_levm_main.md
247-
248-
- name: Create diff message
249-
run: |
250-
bash .github/scripts/hive_levm_revm_diff.sh results_levm_main.md results_levm.md >> diff.md
251-
cat diff.md >> $GITHUB_STEP_SUMMARY
252-
echo "SUMMARY:"
253-
cat diff.md
254-
255-
- name: Check Regression
256-
run: |
257-
if grep -q "No differences found" diff.md; then
258-
echo "No differences found."
259-
elif ! grep -q "regression" diff.md; then
260-
echo "No regression found."
261-
else
262-
echo "Differences found."
263-
exit 1
264-
fi
265-
266199
# The purpose of this job is to add it as a required check in GitHub so that we don't have to add every individual job as a required check
267200
all-tests:
268201
# "Integration Test" is a required check, don't change the name
269202
name: Integration Test
270203
runs-on: ubuntu-latest
271-
needs: [hive-test, ef-test]
204+
needs: [ef-test]
272205
# Make sure this job runs even if the previous jobs failed or were skipped
273-
if: ${{ always() && needs.hive-test.result != 'skipped' && needs.ef-test.result != 'skipped' }}
206+
if: ${{ always() && needs.ef-test.result != 'skipped' }}
274207
steps:
275208
- name: Check if any job failed
276209
run: |
277-
if [ "${{ needs.hive-test.result }}" != "success" ]; then
278-
echo "Job Hive Tests Check failed"
279-
exit 1
280-
fi
281-
282210
if [ "${{ needs.ef-test.result }}" != "success" ]; then
283211
echo "Job EF Tests Check failed"
284212
exit 1
@@ -330,38 +258,3 @@ jobs:
330258
run: |
331259
cd crates/vm/levm
332260
make revm-comparison
333-
lint:
334-
# "Lint" is a required check, don't change the name
335-
name: Lint
336-
runs-on: ubuntu-latest
337-
steps:
338-
- name: Checkout sources
339-
uses: actions/checkout@v4
340-
341-
- name: Rustup toolchain install
342-
uses: dtolnay/rust-toolchain@stable
343-
with:
344-
components: rustfmt, clippy
345-
346-
- name: Add Rust Cache
347-
uses: Swatinem/rust-cache@v2
348-
349-
- name: Run cargo check
350-
run: |
351-
cd crates/vm/levm
352-
cargo check
353-
354-
- name: Run cargo build
355-
run: |
356-
cd crates/vm/levm
357-
cargo build
358-
359-
- name: Run cargo clippy
360-
run: |
361-
cd crates/vm/levm
362-
cargo clippy --all-targets --all-features -- -D warnings
363-
364-
- name: Run cargo fmt
365-
run: |
366-
cd crates/vm/levm
367-
cargo fmt --all -- --check

README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ Node options:
235235
Has to be `levm` or `revm`
236236
237237
[env: ETHREX_EVM=]
238-
[default: revm]
238+
[default: levm]
239239
240240
--log.level <LOG_LEVEL>
241241
Possible values: info, debug, trace, warn, error
@@ -248,11 +248,11 @@ P2P options:
248248
249249
--syncmode <SYNC_MODE>
250250
Can be either "full" or "snap" with "full" as default value.
251-
251+
252252
[default: full]
253253
254254
--p2p.enabled
255-
255+
256256
257257
--p2p.addr <ADDRESS>
258258
[default: 0.0.0.0]
@@ -262,12 +262,12 @@ P2P options:
262262
263263
--discovery.addr <ADDRESS>
264264
UDP address for P2P discovery.
265-
265+
266266
[default: 0.0.0.0]
267267
268268
--discovery.port <PORT>
269269
UDP port for P2P discovery.
270-
270+
271271
[default: 30303]
272272
273273
RPC options:
@@ -285,17 +285,17 @@ RPC options:
285285
286286
--authrpc.addr <ADDRESS>
287287
Listening address for the authenticated rpc server.
288-
288+
289289
[default: localhost]
290290
291291
--authrpc.port <PORT>
292292
Listening port for the authenticated rpc server.
293-
293+
294294
[default: 8551]
295295
296296
--authrpc.jwtsecret <JWTSECRET_PATH>
297297
Receives the jwt secret used for authenticated rpc requests.
298-
298+
299299
[default: jwt.hex]
300300
```
301301
<!-- END_CLI_HELP -->

cmd/ethrex/cli.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ pub struct Options {
9797
pub dev: bool,
9898
#[arg(
9999
long = "evm",
100-
default_value = "revm",
100+
default_value = "levm",
101101
value_name = "EVM_BACKEND",
102102
help = "Has to be `levm` or `revm`",
103103
value_parser = utils::parse_evm_engine,

0 commit comments

Comments
 (0)