fix(levm): opcode EXTCODECOPY security bug #94
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI LEVM | |
on: | |
merge_group: | |
paths: | |
- "crates/vm/levm/**" | |
pull_request: | |
paths: | |
- "crates/vm/levm/**" | |
branches: ["*"] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
CARGO_TERM_COLOR: always | |
RUST_VERSION: 1.79.0 | |
jobs: | |
ef-test: | |
name: EF Tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Rustup toolchain install | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: ${{ env.RUST_VERSION }} | |
- name: Caching | |
uses: Swatinem/rust-cache@v2 | |
- name: Download EF Tests | |
run: | | |
cd crates/vm/levm | |
make download-ef-tests | |
- name: Run tests | |
run: | | |
cd crates/vm/levm | |
make run-ef-tests | |
test: | |
name: Tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Rustup toolchain install | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: ${{ env.RUST_VERSION }} | |
- name: Caching | |
uses: Swatinem/rust-cache@v2 | |
- name: Run tests | |
run: | | |
cd crates/vm/levm | |
make test | |
bench: | |
name: Benchmarks (LEVM vs REVM) | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Rustup toolchain install | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: ${{ env.RUST_VERSION }} | |
- name: Set up cargo cache | |
uses: Swatinem/rust-cache@v2 | |
- name: Install hyperfine | |
uses: taiki-e/install-action@v2 | |
with: | |
tool: [email protected] | |
- name: Run benchmarks | |
run: | | |
cd crates/vm/levm | |
make revm-comparison | |
lint: | |
name: Lint | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v4 | |
- name: Rustup toolchain install | |
uses: dtolnay/rust-toolchain@stable | |
with: | |
toolchain: ${{ env.RUST_VERSION }} | |
components: rustfmt, clippy | |
- name: Add Rust Cache | |
uses: Swatinem/rust-cache@v2 | |
- name: Run cargo check | |
run: | | |
cd crates/vm/levm | |
cargo check | |
- name: Run cargo build | |
run: | | |
cd crates/vm/levm | |
cargo build | |
- name: Run cargo clippy | |
run: | | |
cd crates/vm/levm | |
cargo clippy --all-targets --all-features -- -D warnings | |
- name: Run cargo fmt | |
run: | | |
cd crates/vm/levm | |
cargo fmt --all -- --check |