Skip to content

Document the reentrancy surface and hook callback behavior #532

Document the reentrancy surface and hook callback behavior

Document the reentrancy surface and hook callback behavior #532

Workflow file for this run

name: checks
on:
push:
branches:
- master
- next-v*
- release-v*
pull_request: {}
env:
FOUNDRY_PROFILE: ci
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up environment
uses: ./.github/actions/setup
- run: npm run lint
tests-foundry:
name: Foundry tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up environment
uses: ./.github/actions/setup
- name: Install Foundry dependencies
run: forge install
shell: bash
- name: Build and check contract sizes
run: forge build --sizes --skip test
- name: Run tests
run: forge test -v
env:
FOUNDRY_PROFILE: deep
coverage:
name: Coverage
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up environment
uses: ./.github/actions/setup
- name: Generate coverage
# Use the oracle gas limit (see `[profile.oracle]` in foundry.toml): the panoptic oracle tests need
# more than the default `gas_limit`, and coverage's unoptimized build makes them exceed it and revert.
run: forge coverage --report lcov --gas-limit 300000000
- uses: codecov/codecov-action@v5
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
slither:
name: Slither
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up environment
uses: ./.github/actions/setup
- uses: crytic/slither-action@v0.4.1
codespell:
name: CodeSpell
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run CodeSpell
uses: codespell-project/actions-codespell@v2.1
with:
check_hidden: true
check_filenames: true
skip: package-lock.json,*.pdf,vendor
ignore_words_file: .codespell.ignorewords