Skip to content

chore(tooling): state db support for t8n #6538

chore(tooling): state db support for t8n

chore(tooling): state db support for t8n #6538

Workflow file for this run

name: Python Specification
on:
push:
branches:
- master
- mainnet
- "forks/**"
paths-ignore:
- "**.md"
- "LICENSE*"
- ".gitignore"
- ".vscode/**"
- "whitelist.txt"
- "docs/**"
- "mkdocs.yml"
workflow_dispatch:
pull_request:
paths-ignore:
- "**.md"
- "LICENSE*"
- ".gitignore"
- ".vscode/**"
- "whitelist.txt"
- "docs/**"
- "mkdocs.yml"
concurrency:
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: ${{ github.ref_name != github.event.repository.default_branch }}
jobs:
static:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- name: Ensure SHA pinned actions
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@70c4af2ed5282c51ba40566d026d6647852ffa3e # v5.0.1
- uses: ./.github/actions/setup-uv
- name: Install build dependencies
shell: bash
run: sudo DEBIAN_FRONTEND=noninteractive apt-get install --yes --force-yes build-essential pkg-config
- name: Detect Python version
id: python
shell: bash
run: echo "version=$(python3 -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')" >> "$GITHUB_OUTPUT"
- name: Restore mypy cache
uses: actions/cache/restore@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
path: .mypy_cache
key: mypy-${{ runner.os }}-py${{ steps.python.outputs.version }}-${{ hashFiles('uv.lock') }}-${{ github.sha }}
restore-keys: |
mypy-${{ runner.os }}-py${{ steps.python.outputs.version }}-${{ hashFiles('uv.lock') }}-
mypy-${{ runner.os }}-py${{ steps.python.outputs.version }}-
- name: Run static checks
run: just static
- name: Save mypy cache
if: always()
uses: actions/cache/save@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
with:
path: .mypy_cache
key: mypy-${{ runner.os }}-py${{ steps.python.outputs.version }}-${{ hashFiles('uv.lock') }}-${{ github.sha }}
- name: Validate workflow config variables
run: |
cat >> .github/actionlint.yaml << 'EOF'
# CI-only: validate vars.* references
config-variables:
- DEFAULT_PYTHON_VERSION
- UV_VERSION
EOF
uvx --from actionlint-py actionlint
fill:
name: fill (${{ matrix.label }})
runs-on: [self-hosted-ghr, size-xl-x64]
needs: static
strategy:
fail-fast: false
matrix:
include:
- label: pre-cancun
from_fork: Frontier
until_fork: Shanghai
- label: cancun
from_fork: Cancun
until_fork: Cancun
- label: prague
from_fork: Prague
until_fork: Prague
- label: osaka
from_fork: Osaka
until_fork: Osaka
- label: amsterdam
from_fork: Amsterdam
until_fork: Amsterdam
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- uses: ./.github/actions/setup-uv
with:
python-version: "3.14"
- uses: ./.github/actions/setup-env
- name: Run fill (${{ matrix.label }})
run: just fill --from ${{ matrix.from_fork }} --until ${{ matrix.until_fork }}
env:
PYTEST_XDIST_AUTO_NUM_WORKERS: auto
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5.5.2
with:
files: .just/fill/coverage.xml
flags: unittests
token: ${{ secrets.CODECOV_TOKEN }}
fill-pypy:
runs-on: [self-hosted-ghr, size-xl-x64]
needs: static
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- uses: ./.github/actions/setup-uv
with:
python-version: "pypy3.11"
- uses: ./.github/actions/setup-env
- name: Run fill-pypy tests
run: just fill-pypy
env:
PYPY_GC_MAX: "2G"
PYPY_GC_MIN: "1G"
json-loader:
runs-on: [self-hosted-ghr, size-xl-x64]
needs: static
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- uses: ./.github/actions/setup-uv
- uses: ./.github/actions/setup-env
- name: Fill and run json-loader tests
run: just json-loader
env:
PYTEST_XDIST_AUTO_NUM_WORKERS: auto
test-tests:
runs-on: [self-hosted-ghr, size-xl-x64]
needs: static
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- uses: ./.github/actions/setup-uv
- uses: ./.github/actions/setup-env
- uses: ./.github/actions/build-evmone
- name: Run test-tests
run: just test-tests
env:
PYTEST_XDIST_AUTO_NUM_WORKERS: auto
test-tests-pypy:
runs-on: [self-hosted-ghr, size-xl-x64]
needs: static
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
submodules: recursive
- uses: ./.github/actions/setup-uv
with:
python-version: "pypy3.11"
- uses: ./.github/actions/setup-env
- uses: ./.github/actions/build-evmone
- name: Run test-tests-pypy
run: just test-tests-pypy
env:
PYPY_GC_MAX: "2G"
PYPY_GC_MIN: "1G"