Skip to content

Add detector for msg.value usage unreachable from payable entry points #6966

Add detector for msg.value usage unreachable from payable entry points

Add detector for msg.value usage unreachable from payable entry points #6966

Workflow file for this run

---
name: CI
defaults:
run:
shell: bash
on:
push:
branches:
- master
pull_request:
schedule:
# run CI every day even if no PRs/merges occur
- cron: '0 12 * * *'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tests:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: >-
${{ (github.event_name == 'pull_request' && fromJSON('["ubuntu-latest"]'))
|| fromJSON('["ubuntu-latest", "windows-2025"]') }}
python: >-
${{ (github.event_name == 'pull_request' && fromJSON('["3.9", "3.14"]'))
|| fromJSON('["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"]') }}
type: >-
${{ (github.event_name == 'pull_request'
&& fromJSON('["data_dependency", "path_filtering", "erc", "find_paths",
"flat", "interface", "printers", "slither_config", "upgradability"]'))
|| fromJSON('["data_dependency", "path_filtering", "erc", "find_paths",
"flat", "interface", "printers", "slither_config", "upgradability",
"cli", "dapp", "etherscan", "kspec", "simil", "truffle"]') }}
exclude:
# Requires nix
- os: windows-2025
type: dapp
# Requires nvm
- os: windows-2025
type: truffle
# fasttext fails to install on Windows
- os: windows-2025
type: simil
steps:
- uses: actions/checkout@v6
- name: Install uv and Python ${{ matrix.python }}
uses: astral-sh/setup-uv@v7
with:
python-version: ${{ matrix.python }}
activate-environment: true
- name: Install dependencies
run: |
uv sync --group test
solc-select use 0.8.0 --always-install
solc-select use 0.7.0 --always-install
solc-select use 0.5.1 --always-install
solc-select use 0.4.25 --always-install
- name: Set up nix
if: matrix.type == 'dapp'
uses: cachix/install-nix-action@v31
- name: Set up cachix
if: matrix.type == 'dapp'
uses: cachix/cachix-action@v16
with:
name: dapp
- name: Run Tests
env:
PYTHONUTF8: 1
TEST_TYPE: ${{ matrix.type }}
GITHUB_ETHERSCAN: ${{ secrets.GITHUB_ETHERSCAN }}
run: |
bash "scripts/ci_test_${TEST_TYPE}.sh"