Skip to content

feat(forks,tests): EIP-2935: Contract update #3590

feat(forks,tests): EIP-2935: Contract update

feat(forks,tests): EIP-2935: Contract update #3590

Workflow file for this run

name: Tox
on: [push, pull_request, workflow_dispatch]
jobs:
lint:
name: Lint python sources with ruff
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@v4
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@v5
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@v4
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@v5
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 pyspelling
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@v4
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ vars.DEFAULT_PYTHON_VERSION }}
- name: Install dependencies (aspell, aspell-en)
run: |
sudo apt-get update && sudo apt-get install -y aspell aspell-en
- name: Run spellcheck with pyspelling via tox
run: uvx --with=tox-uv tox -e spellcheck
markdownlint:
name: Lint markdown files with markdownlint
runs-on: ubuntu-latest
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@v4
- uses: DavidAnson/markdownlint-cli2-action@v16
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@v4
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ vars.DEFAULT_PYTHON_VERSION }}
uses: astral-sh/setup-uv@v5
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: ubuntu-latest
python: "3.10"
- os: macos-latest
python: "3.11"
- os: ubuntu-latest
python: "3.12"
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@v4
- name: Checkout ethereum/execution-specs for local EELS implementation
uses: actions/checkout@v4
with:
repository: ethereum/execution-specs
ref: 9b95554a88d2a8485f8180254d0f6a493a593fda
path: execution-specs
sparse-checkout: |
src/ethereum
fetch-depth: 1
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ matrix.python }}
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ matrix.python }}
- 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.os }}, ${{ matrix.python }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
# Still getting requests.exceptions.ReadTimeout: UnixHTTPConnectionPool() in CI, even with local EELS
# - os: ubuntu-latest
# python: "3.10"
- os: ubuntu-latest
python: "3.11"
- os: macos-latest
python: "3.12"
steps:
- name: Checkout ethereum/execution-spec-tests
uses: actions/checkout@v4
- name: Checkout ethereum/execution-specs for local EELS implementation
uses: actions/checkout@v4
with:
repository: ethereum/execution-specs
ref: 9b95554a88d2a8485f8180254d0f6a493a593fda
path: execution-specs
sparse-checkout: |
src/ethereum
fetch-depth: 1
- name: Install uv ${{ vars.UV_VERSION }} and python ${{ matrix.python }}
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
version: ${{ vars.UV_VERSION }}
python-version: ${{ matrix.python }}
- 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