Skip to content

feat(clis,filler): Add trace types to allow trace analysis and gas optimizations #9194

feat(clis,filler): Add trace types to allow trace analysis and gas optimizations

feat(clis,filler): Add trace types to allow trace analysis and gas optimizations #9194

Workflow file for this run

name: Tox
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
lint:
name: Lint python sources with ruff
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ vars.DEFAULT_PYTHON_VERSION }}
- name: Run ruff linter via tox
run: uvx --with=tox-uv tox -e lint
typecheck:
name: Typecheck python sources with mypy
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ vars.DEFAULT_PYTHON_VERSION }}
- name: Run mypy typechecker via tox
run: uvx --with=tox-uv tox -e typecheck
spellcheck:
name: Spellcheck sources with codespell
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ vars.DEFAULT_PYTHON_VERSION }}
- name: Run spellcheck with codespell via tox
run: uvx --with=tox-uv tox -e spellcheck
env:
GITHUB_STEP_SUMMARY: ${{ env.GITHUB_STEP_SUMMARY }}
changelog:
name: Validate changelog entries
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ vars.DEFAULT_PYTHON_VERSION }}
- name: Run changelog validation via tox
run: uvx --with=tox-uv tox -e changelog
markdownlint:
name: Lint markdown files with markdownlint
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- uses: DavidAnson/markdownlint-cli2-action@05f32210e84442804257b2a6f20b273450ec8265
with:
globs: |
README.md
docs/**/*.md
mkdocs:
name: Build html documentation with mkdocs
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ vars.DEFAULT_PYTHON_VERSION }}
- name: Build html documentation with mkdocs via tox
run: uvx --with=tox-uv tox -e mkdocs
pytest_framework:
name: Run unit tests, ${{ matrix.os }}, ${{ matrix.python }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-15
python: "3.11"
- os: macos-15
python: "pypy3.11"
- os: ubuntu-latest
python: "3.12"
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Checkout ethereum/execution-specs for local EELS implementation
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
repository: marioevz/execution-specs
ref: 3387e5f4aedfe99becfdc39b444d6371e25e0924
path: execution-specs
fetch-depth: 1
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ matrix.python }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ matrix.python }}
- name: Build EVMONE EVM
uses: ./.github/actions/build-evm-client/evmone
with:
targets: "evmone-t8n"
- name: Build GETH EVM
uses: ./.github/actions/build-evm-client/geth
- name: Update eels_resolutions.json
run: |
sed -i -e "s|\$GITHUB_WORKSPACE|${GITHUB_WORKSPACE}|g" .github/configs/eels_resolutions.json
- name: Run tox - run framework unit tests with pytest
env:
EELS_RESOLUTIONS_FILE: ${{ github.workspace }}/.github/configs/eels_resolutions.json
run: uvx --with=tox-uv tox -e pytest
tests_deployed:
name: Fill tests, deployed, ${{ matrix.name }}, ${{ matrix.python }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: [self-hosted-ghr, size-xl-x64]
name: self-hosted-ghr-xl-x64
python: "3.11"
- os: macos-15
name: macos-15
python: "3.12"
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Checkout ethereum/execution-specs for local EELS implementation
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
with:
repository: marioevz/execution-specs
ref: 3387e5f4aedfe99becfdc39b444d6371e25e0924
path: execution-specs
fetch-depth: 1
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ matrix.python }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ matrix.python }}
- name: Update eels_resolutions.json
run: |
sed -i -e "s|\$GITHUB_WORKSPACE|${GITHUB_WORKSPACE}|g" .github/configs/eels_resolutions.json
- name: Run tox - fill tests for deployed forks
env:
EELS_RESOLUTIONS_FILE: ${{ github.workspace }}/.github/configs/eels_resolutions.json
run: uvx --with=tox-uv tox -e tests-deployed
tests_deployed_benchmark:
name: Fill benchmark test cases, deployed, ${{ matrix.os }}, ${{ matrix.python }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-latest
python: "3.11"
- os: macos-15
python: "3.12"
- os: ubuntu-latest
python: "pypy3.11"
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ matrix.python }}
uses: astral-sh/setup-uv@0c5e2b8115b80b4c7c5ddf6ffdd634974642d182
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ matrix.python }}
- name: Build EVMONE EVM
uses: ./.github/actions/build-evm-client/evmone
with:
targets: "evmone-t8n"
- name: Run tox - fill tests for deployed forks
env:
EELS_RESOLUTIONS_FILE: ${{ github.workspace }}/.github/configs/eels_resolutions.json
run: uvx --with=tox-uv tox -e tests-deployed-benchmark