From e2987001ee8129819269440608a407d357acff3b Mon Sep 17 00:00:00 2001 From: chenyu Date: Wed, 31 Dec 2025 17:51:51 -0500 Subject: [PATCH] unify pre-commit mypy and ci mypy (#13940) --- .github/workflows/test.yml | 5 ++--- .pre-commit-config.yaml | 2 +- pyproject.toml | 5 +++++ 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7fe8d47100..8c5f411aba 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -218,7 +218,6 @@ jobs: runs-on: ubuntu-latest timeout-minutes: 10 - # TODO: run the pre-commit hook to replace a lot of this steps: - name: Checkout Code uses: actions/checkout@v4 @@ -233,13 +232,13 @@ jobs: - name: Lint with ruff run: | pip3 install --upgrade --force-reinstall ruff==0.14.10 - python3 -m ruff check . + pre-commit run ruff --all-files python3 -m ruff check examples/mlperf/ --ignore E501 python3 -m ruff check extra/thunder/tiny/ --ignore E501 --ignore F841 --ignore E722 python3 -m ruff check extra/torch_backend/backend.py - name: Run mypy run: | - python -m mypy --strict-equality --lineprecision-report . + python -m mypy --lineprecision-report . cat lineprecision.txt - name: Run TYPED=1 run: TYPED=1 python -c "import tinygrad" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c9be0c75b1..bf364a256e 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -16,7 +16,7 @@ repos: pass_filenames: false - id: mypy name: mypy - entry: python3 -m mypy tinygrad/ --strict-equality + entry: python3 -m mypy language: system always_run: true pass_filenames: false diff --git a/pyproject.toml b/pyproject.toml index c3ced6a32b..ed2f48639b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -135,9 +135,14 @@ check_untyped_defs = true explicit_package_bases = true warn_unreachable = true warn_redundant_casts = true +strict_equality = true # NOTE: had to comment this out to make mypy pass on both CI and OSX #warn_unused_ignores = true +[[tool.mypy.overrides]] +module = "extra.*" +follow_imports = "skip" + [tool.pytest.ini_options] norecursedirs = [ "extra",