Closed
Description
To Reproduce
- Create a new environment with
pydantic==2.9.2
installed. - Create a file
t.py
:
from typing import Any
from typing_extensions import Self
from pydantic import BaseModel, model_validator
from pydantic.functional_validators import ModelWrapValidatorHandler
class WrapModelValidator(BaseModel):
@model_validator(mode='wrap') # type: ignore[arg-type] # pyright: ignore[reportArgumentType]
def no_classmethod(cls, value: Any, handler: ModelWrapValidatorHandler[Self]) -> Self: ...
- Run
mypy --cache-dir=/dev/null --python-version 3.10 --disable-error-code empty-body --warn-unused-ignores t.py
Mypy will randomly raise:
t.py:10: error: Unused "type: ignore" comment [unused-ignore]
And sometimes suceed.
Sorry I couldn't provide more details, the issue is really weird and it seems like mypy doesn't produce fully reproducible results in this case.
Your Environment
- Mypy version used: 1.13.0
- Mypy command-line flags:
--cache-dir=/dev/null --python-version 3.10 --disable-error-code empty-body --warn-unused-ignores
- Mypy configuration options from
mypy.ini
(and other config files): - Python version used:
3.12