remove pylint from pre-commit and CI (#12658)

* remove pylint from pre-commit and CI

* multidevice test is fast

* faster pre-commit

* 8 is faster than 4

* better name

* how did that typecheck?
This commit is contained in:
George Hotz
2025-10-14 15:39:59 +08:00
committed by GitHub
parent 8ecaf839e2
commit 84d4589ed4
5 changed files with 10 additions and 18 deletions

View File

@@ -238,8 +238,6 @@ jobs:
pip3 install --upgrade --force-reinstall ruff==0.11.0 pip3 install --upgrade --force-reinstall ruff==0.11.0
python3 -m ruff check . python3 -m ruff check .
python3 -m ruff check examples/mlperf/ --ignore E501 python3 -m ruff check examples/mlperf/ --ignore E501
- name: Lint tinygrad with pylint
run: python -m pylint tinygrad/
- name: Run mypy - name: Run mypy
run: | run: |
python -m mypy --strict-equality --lineprecision-report . python -m mypy --strict-equality --lineprecision-report .

View File

@@ -20,21 +20,15 @@ repos:
language: system language: system
always_run: true always_run: true
pass_filenames: false pass_filenames: false
- id: tests
name: subset of tests
entry: env PYTHONPATH="." python3 -m pytest -n=4 test/test_ops.py test/test_dtype.py test/test_schedule.py test/test_assign.py
language: system
always_run: true
pass_filenames: false
- id: example - id: example
name: multi device tests name: test all devices
entry: python3 test/external/external_test_example.py entry: python3 test/external/external_test_example.py
language: system language: system
always_run: true always_run: true
pass_filenames: false pass_filenames: false
- id: pylint - id: tests
name: pylint name: subset of tests
entry: python3 -m pylint tinygrad/ entry: env PYTHONPATH="." python3 -m pytest -n=8 test/test_ops.py test/test_dtype.py test/test_schedule.py test/test_assign.py
language: system language: system
always_run: true always_run: true
pass_filenames: false pass_filenames: false

View File

@@ -58,8 +58,8 @@ class TestExample(unittest.TestCase):
print(f"WARNING: {device} test isn't running") print(f"WARNING: {device} test isn't running")
return return
x = Tensor.eye(64, device=device, requires_grad=True) x = Tensor.eye(8, device=device, requires_grad=True)
y = Tensor.eye(64, device=device, requires_grad=True) y = Tensor.eye(8, device=device, requires_grad=True)
z = y.matmul(x).sum() z = y.matmul(x).sum()
z.backward() z.backward()

View File

@@ -134,8 +134,8 @@ class TestTiny(unittest.TestCase):
def test_mnist_backward(self): def test_mnist_backward(self):
# NOTE: we don't have the whole model here for speed # NOTE: we don't have the whole model here for speed
layers = [ layers = [
nn.Conv2d(1, 32, 5), Tensor.relu, nn.Conv2d(1, 8, 5), Tensor.relu,
nn.Conv2d(32, 32, 5), Tensor.relu] nn.Conv2d(8, 8, 5), Tensor.relu]
# replace random weights with ones # replace random weights with ones
# TODO: there's a bug here where it's tying two of the biases together. we need UNIQUE const # TODO: there's a bug here where it's tying two of the biases together. we need UNIQUE const
@@ -144,7 +144,7 @@ class TestTiny(unittest.TestCase):
# realize gradients # realize gradients
for x in nn.state.get_parameters(layers): x.requires_grad_() for x in nn.state.get_parameters(layers): x.requires_grad_()
Tensor.empty(4, 1, 28, 28).sequential(layers).sum().backward() Tensor.empty(4, 1, 14, 14).sequential(layers).sum().backward()
Tensor.realize(*[x.grad for x in nn.state.get_parameters(layers) if x.grad is not None]) Tensor.realize(*[x.grad for x in nn.state.get_parameters(layers) if x.grad is not None])
# *** image *** # *** image ***

View File

@@ -7,7 +7,7 @@ from tinygrad.uop.ops import Ops, UOp, sym_infer, sint, Variable, ssimplify, Gro
from tinygrad.dtype import AddrSpace, PtrDType from tinygrad.dtype import AddrSpace, PtrDType
if TYPE_CHECKING: if TYPE_CHECKING:
from tinygrad.codegen.opt.tc import TensorCore from tinygrad.codegen.opt.tc import TensorCore
from tinygrad.codegen.opt.kernel import Opt from tinygrad.codegen.opt import Opt
@dataclass(frozen=True) @dataclass(frozen=True)
class Estimates: class Estimates: