Skip to content

[ty] Avoid emitting Liskov repeated violations from grandparent to child#22484

Merged
charliermarsh merged 1 commit intomainfrom
charlie/lsp
Jan 10, 2026
Merged

[ty] Avoid emitting Liskov repeated violations from grandparent to child#22484
charliermarsh merged 1 commit intomainfrom
charlie/lsp

Conversation

@charliermarsh
Copy link
Member

@charliermarsh charliermarsh commented Jan 9, 2026

Summary

If parent violates LSP against grandparent, and child has the same violation (but matches parent), we no longer flag the LSP violation on child, since it can't be fixed without violating parent.

If parent violates LSP against grandparent, and child violates LSP against both parent and grandparent, we emit two diagnostics (one for each violation).

If parent violates LSP against grandparent, and child violates LSP against parent (but not grandparent), we flag it.

Closes astral-sh/ty#2000.

@charliermarsh charliermarsh added the ty Multi-file analysis & type inference label Jan 9, 2026
@astral-sh-bot
Copy link

astral-sh-bot bot commented Jan 9, 2026

Diagnostic diff on typing conformance tests

No changes detected when running ty on typing conformance tests ✅

@astral-sh-bot
Copy link

astral-sh-bot bot commented Jan 9, 2026

mypy_primer results

Changes were detected when running on open source projects
spack (https://github.com/spack/spack)
- lib/spack/spack/vendor/ruamel/yaml/comments.py:554:9: error[invalid-method-override] Invalid override of method `insert`: Definition is incompatible with `MutableSequence.insert`
- lib/spack/spack/vendor/ruamel/yaml/comments.py:563:9: error[invalid-method-override] Invalid override of method `extend`: Definition is incompatible with `MutableSequence.extend`
- Found 4320 diagnostics
+ Found 4318 diagnostics

pip (https://github.com/pypa/pip)
- src/pip/_vendor/distlib/compat.py:970:13: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
- src/pip/_vendor/distlib/compat.py:982:13: error[invalid-method-override] Invalid override of method `pop`: Definition is incompatible with `MutableSequence.pop`
- src/pip/_vendor/distlib/compat.py:994:13: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- src/pip/_vendor/pygments/token.py:28:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- src/pip/_vendor/urllib3/poolmanager.py:526:9: error[invalid-method-override] Invalid override of method `urlopen`: Definition is incompatible with `RequestMethods.urlopen`
- Found 610 diagnostics
+ Found 605 diagnostics

werkzeug (https://github.com/pallets/werkzeug)
- src/werkzeug/datastructures/accept.py:77:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
+ src/werkzeug/datastructures/structures.py:680:44: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ src/werkzeug/datastructures/structures.py:683:74: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ src/werkzeug/datastructures/structures.py:744:18: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ src/werkzeug/datastructures/structures.py:866:15: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ src/werkzeug/datastructures/structures.py:922:44: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 382 diagnostics
+ Found 386 diagnostics

twine (https://github.com/pypa/twine)
- twine/commands/check.py:53:9: error[invalid-method-override] Invalid override of method `write`: Definition is incompatible with `IO.write`
- Found 10 diagnostics
+ Found 9 diagnostics

pytest (https://github.com/pytest-dev/pytest)
- src/_pytest/_code/code.py:417:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
- src/_pytest/capture.py:217:9: error[invalid-method-override] Invalid override of method `write`: Definition is incompatible with `IO.write`
- Found 427 diagnostics
+ Found 425 diagnostics

scrapy (https://github.com/scrapy/scrapy)
+ scrapy/http/headers.py:34:18: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 1784 diagnostics
+ Found 1785 diagnostics

beartype (https://github.com/beartype/beartype)
+ beartype/_util/cache/pool/utilcachepoollistfixed.py:147:45: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- beartype/_util/cache/pool/utilcachepoollistfixed.py:251:9: error[invalid-method-override] Invalid override of method `append`: Definition is incompatible with `MutableSequence.append`
- beartype/_util/cache/pool/utilcachepoollistfixed.py:261:9: error[invalid-method-override] Invalid override of method `extend`: Definition is incompatible with `MutableSequence.extend`
- Found 497 diagnostics
+ Found 496 diagnostics

pylox (https://github.com/sco1/pylox)
- pylox/containers/array.py:162:9: error[invalid-method-override] Invalid override of method `get`: Definition is incompatible with `LoxInstance.get`
- Found 49 diagnostics
+ Found 48 diagnostics

dulwich (https://github.com/dulwich/dulwich)
- dulwich/config.py:274:17: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `AbstractSet.__contains__`
- dulwich/config.py:301:17: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `AbstractSet.__contains__`
- dulwich/line_ending.py:677:9: error[invalid-method-override] Invalid override of method `checkin_normalize`: Definition is incompatible with `FilterBlobNormalizer.checkin_normalize`
- Found 234 diagnostics
+ Found 231 diagnostics

poetry (https://github.com/python-poetry/poetry)
- src/poetry/packages/package_collection.py:28:9: error[invalid-method-override] Invalid override of method `append`: Definition is incompatible with `MutableSequence.append`
- Found 979 diagnostics
+ Found 978 diagnostics

mitmproxy (https://github.com/mitmproxy/mitmproxy)
- mitmproxy/proxy/layers/http/_http2.py:420:9: error[invalid-method-override] Invalid override of method `_handle_event`: Definition is incompatible with `Layer._handle_event`
- mitmproxy/proxy/layers/http/_http2.py:505:9: error[invalid-method-override] Invalid override of method `_handle_event`: Definition is incompatible with `Layer._handle_event`
- mitmproxy/proxy/layers/http/_http3.py:273:9: error[invalid-method-override] Invalid override of method `_handle_event`: Definition is incompatible with `Layer._handle_event`
- Found 2147 diagnostics
+ Found 2144 diagnostics

urllib3 (https://github.com/urllib3/urllib3)
- src/urllib3/_collections.py:196:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `AbstractSet.__contains__`
+ src/urllib3/http2/connection.py:143:78: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ src/urllib3/http2/connection.py:268:19: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ src/urllib3/poolmanager.py:635:19: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 304 diagnostics
+ Found 306 diagnostics

mypy (https://github.com/python/mypy)
+ mypy/typeshed/stdlib/_frozen_importlib_external.pyi:126:26: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ mypy/typeshed/stdlib/_io.pyi:266:56: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- mypy/typeshed/stdlib/configparser.pyi:333:9: error[invalid-method-override] Invalid override of method `get`: Definition is incompatible with `Mapping.get`
- mypy/typeshed/stdlib/enum.pyi:319:13: error[invalid-method-override] Invalid override of method `__or__`: Definition is incompatible with `Flag.__or__`
- mypy/typeshed/stdlib/enum.pyi:320:13: error[invalid-method-override] Invalid override of method `__and__`: Definition is incompatible with `Flag.__and__`
- mypy/typeshed/stdlib/enum.pyi:321:13: error[invalid-method-override] Invalid override of method `__xor__`: Definition is incompatible with `Flag.__xor__`
- mypy/typeshed/stdlib/enum.pyi:332:13: error[invalid-method-override] Invalid override of method `__or__`: Definition is incompatible with `Flag.__or__`
- mypy/typeshed/stdlib/enum.pyi:333:13: error[invalid-method-override] Invalid override of method `__and__`: Definition is incompatible with `Flag.__and__`
- mypy/typeshed/stdlib/enum.pyi:334:13: error[invalid-method-override] Invalid override of method `__xor__`: Definition is incompatible with `Flag.__xor__`
- mypy/typeshed/stdlib/enum.pyi:344:13: error[invalid-method-override] Invalid override of method `__or__`: Definition is incompatible with `Flag.__or__`
- mypy/typeshed/stdlib/enum.pyi:345:13: error[invalid-method-override] Invalid override of method `__and__`: Definition is incompatible with `Flag.__and__`
- mypy/typeshed/stdlib/enum.pyi:346:13: error[invalid-method-override] Invalid override of method `__xor__`: Definition is incompatible with `Flag.__xor__`
- mypy/typeshed/stdlib/logging/config.pyi:100:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
- mypy/typeshed/stdlib/logging/config.pyi:101:9: error[invalid-method-override] Invalid override of method `pop`: Definition is incompatible with `MutableSequence.pop`
- mypy/typeshed/stdlib/logging/config.pyi:116:13: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
+ mypy/typeshed/stdlib/smtpd.pyi:92:125: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- mypy/typeshed/stdlib/tkinter/ttk.pyi:437:9: error[invalid-method-override] Invalid override of method `configure`: Definition is incompatible with `Entry.configure`
- mypy/typeshed/stdlib/tkinter/ttk.pyi:465:9: error[invalid-method-override] Invalid override of method `config`: Definition is incompatible with `Entry.config`
- mypy/typeshed/stdlib/tkinter/ttk.pyi:751:5: error[invalid-method-override] Invalid override of method `forget`: Definition is incompatible with `Pack.forget`
- mypy/typeshed/stdlib/tkinter/ttk.pyi:1060:9: error[invalid-method-override] Invalid override of method `configure`: Definition is incompatible with `Entry.configure`
+ mypy/typeshed/stdlib/tkinter/ttk.pyi:1061:25: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- mypy/typeshed/stdlib/xml/dom/pulldom.pyi:96:9: error[invalid-method-override] Invalid override of method `startElementNS`: Definition is incompatible with `ContentHandler.startElementNS`
- mypy/typeshed/stdlib/xml/dom/pulldom.pyi:99:9: error[invalid-method-override] Invalid override of method `ignorableWhitespace`: Definition is incompatible with `ContentHandler.ignorableWhitespace`
- mypy/typeshed/stdlib/xml/dom/pulldom.pyi:100:9: error[invalid-method-override] Invalid override of method `characters`: Definition is incompatible with `ContentHandler.characters`
- Found 1756 diagnostics
+ Found 1740 diagnostics

tornado (https://github.com/tornadoweb/tornado)
- tornado/gen.py:255:62: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `None | Awaitable[Unknown] | list[Awaitable[Unknown]] | dict[Any, Awaitable[Unknown]] | Future[Unknown]`, found `_T@next | _VT@next | _T@next`
+ tornado/gen.py:255:62: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `None | Awaitable[Unknown] | list[Awaitable[Unknown]] | dict[Any, Awaitable[Unknown]] | Future[Unknown]`, found `_T@next | _T@next | _VT@next`

pandera (https://github.com/pandera-dev/pandera)
- pandera/api/pandas/components.py:176:9: error[invalid-method-override] Invalid override of method `strategy`: Definition is incompatible with `BaseSchema.strategy`
- Found 1579 diagnostics
+ Found 1578 diagnostics

schema_salad (https://github.com/common-workflow-language/schema_salad)
- mypy-stubs/rdflib/query.pyi:17:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- schema_salad/metaschema.py:3550:9: error[invalid-method-override] Invalid override of method `fromDoc`: Definition is incompatible with `Saveable.fromDoc`
- schema_salad/metaschema.py:3973:9: error[invalid-method-override] Invalid override of method `fromDoc`: Definition is incompatible with `Saveable.fromDoc`
- schema_salad/metaschema.py:4828:9: error[invalid-method-override] Invalid override of method `fromDoc`: Definition is incompatible with `Saveable.fromDoc`
- schema_salad/metaschema.py:5567:9: error[invalid-method-override] Invalid override of method `fromDoc`: Definition is incompatible with `Saveable.fromDoc`
- schema_salad/metaschema.py:6250:9: error[invalid-method-override] Invalid override of method `fromDoc`: Definition is incompatible with `Saveable.fromDoc`
- Found 249 diagnostics
+ Found 243 diagnostics

Tanjun (https://github.com/FasterSpeeding/Tanjun)
- tanjun/dependencies/data.py:347:12: error[invalid-return-type] Return type does not match returned value: expected `_T@cached_inject`, found `Coroutine[Any, Any, _T@cached_inject | Coroutine[Any, Any, _T@cached_inject]] | _T@cached_inject`
+ tanjun/dependencies/data.py:347:12: error[invalid-return-type] Return type does not match returned value: expected `_T@cached_inject`, found `_T@cached_inject | Coroutine[Any, Any, _T@cached_inject | Coroutine[Any, Any, _T@cached_inject]]`

pyodide (https://github.com/pyodide/pyodide)
+ src/py/pyodide/console.py:127:56: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 934 diagnostics
+ Found 935 diagnostics

openlibrary (https://github.com/internetarchive/openlibrary)
- openlibrary/plugins/openlibrary/code.py:911:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `mode.GET`
- openlibrary/plugins/upstream/covers.py:154:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `page.GET`
- openlibrary/plugins/worksearch/autocomplete.py:149:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `page.GET`
- openlibrary/plugins/worksearch/code.py:923:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `page.GET`
- openlibrary/plugins/worksearch/code.py:991:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `page.GET`
- openlibrary/plugins/worksearch/code.py:1048:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `page.GET`
- openlibrary/plugins/worksearch/publishers.py:20:9: error[invalid-method-override] Invalid override of method `GET`: Definition is incompatible with `page.GET`
- Found 1163 diagnostics
+ Found 1156 diagnostics

manticore (https://github.com/trailofbits/manticore)
- manticore/native/memory.py:1497:9: error[invalid-method-override] Invalid override of method `read`: Definition is incompatible with `Memory.read`
- manticore/native/memory.py:1529:9: error[invalid-method-override] Invalid override of method `write`: Definition is incompatible with `Memory.write`
- Found 11071 diagnostics
+ Found 11069 diagnostics

xarray (https://github.com/pydata/xarray)
- xarray/core/datatree.py:320:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `DataWithCoords.__getitem__`
+ xarray/core/datatree.py:1937:53: warning[unused-ignore-comment] Unused blanket `type: ignore` directive

cwltool (https://github.com/common-workflow-language/cwltool)
- mypy-stubs/rdflib/query.pyi:17:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- Found 258 diagnostics
+ Found 257 diagnostics

setuptools (https://github.com/pypa/setuptools)
- setuptools/_vendor/importlib_metadata/_text.py:82:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- setuptools/_vendor/jaraco/collections/__init__.py:626:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
- setuptools/_vendor/jaraco/collections/__init__.py:634:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- setuptools/_vendor/jaraco/collections/__init__.py:640:9: error[invalid-method-override] Invalid override of method `__setitem__`: Definition is incompatible with `MutableSequence.__setitem__`
- setuptools/_vendor/jaraco/collections/__init__.py:644:9: error[invalid-method-override] Invalid override of method `__delitem__`: Definition is incompatible with `MutableSequence.__delitem__`
- setuptools/_vendor/jaraco/text/__init__.py:115:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- setuptools/_vendor/jaraco/text/__init__.py:371:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- Found 1273 diagnostics
+ Found 1266 diagnostics

scipy-stubs (https://github.com/scipy/scipy-stubs)
+ scipy-stubs/_lib/_ccallback.pyi:139:61: warning[unused-ignore-comment] Unused `ty: ignore` directive
- Found 1246 diagnostics
+ Found 1247 diagnostics

prefect (https://github.com/PrefectHQ/prefect)
- src/integrations/prefect-dbt/prefect_dbt/core/settings.py:94:28: error[invalid-assignment] Object of type `T@resolve_block_document_references | dict[str, Any] | str | ... omitted 4 union elements` is not assignable to `dict[str, Any]`
+ src/integrations/prefect-dbt/prefect_dbt/core/settings.py:94:28: error[invalid-assignment] Object of type `T@resolve_block_document_references | dict[str, Any]` is not assignable to `dict[str, Any]`
- src/integrations/prefect-dbt/prefect_dbt/core/settings.py:99:28: error[invalid-assignment] Object of type `T@resolve_variables | str | int | ... omitted 4 union elements` is not assignable to `dict[str, Any]`
+ src/integrations/prefect-dbt/prefect_dbt/core/settings.py:99:28: error[invalid-assignment] Object of type `T@resolve_variables | dict[str, Any]` is not assignable to `dict[str, Any]`
- src/prefect/cli/deploy/_core.py:86:21: error[invalid-assignment] Object of type `T@resolve_block_document_references | dict[str, Any] | str | ... omitted 4 union elements` is not assignable to `dict[str, Any]`
+ src/prefect/cli/deploy/_core.py:86:21: error[invalid-assignment] Object of type `T@resolve_block_document_references | dict[str, Any]` is not assignable to `dict[str, Any]`
- src/prefect/cli/deploy/_core.py:87:21: error[invalid-assignment] Object of type `T@resolve_variables | str | int | ... omitted 4 union elements` is not assignable to `dict[str, Any]`
+ src/prefect/cli/deploy/_core.py:87:21: error[invalid-assignment] Object of type `T@resolve_variables` is not assignable to `dict[str, Any]`
- src/prefect/deployments/runner.py:795:70: warning[possibly-missing-attribute] Attribute `__name__` may be missing on object of type `Unknown | (((...) -> Any) & ((*args: object, **kwargs: object) -> object))`
+ src/prefect/deployments/runner.py:795:70: warning[possibly-missing-attribute] Attribute `__name__` may be missing on object of type `Unknown | ((...) -> Any)`
- src/prefect/deployments/steps/core.py:137:38: error[invalid-argument-type] Argument is incorrect: Expected `T@resolve_variables`, found `T@resolve_block_document_references | dict[str, Any] | str | ... omitted 4 union elements`
+ src/prefect/deployments/steps/core.py:137:38: error[invalid-argument-type] Argument is incorrect: Expected `T@resolve_variables`, found `T@resolve_block_document_references | dict[str, Any]`
+ src/prefect/flow_engine.py:812:32: error[invalid-await] `Unknown | R@FlowRunEngine | Coroutine[Any, Any, R@FlowRunEngine]` is not awaitable
+ src/prefect/flow_engine.py:1401:24: error[invalid-await] `Unknown | R@AsyncFlowRunEngine | Coroutine[Any, Any, R@AsyncFlowRunEngine]` is not awaitable
+ src/prefect/flow_engine.py:1482:43: error[invalid-argument-type] Argument to function `next` is incorrect: Expected `SupportsNext[Unknown]`, found `Unknown | R@run_generator_flow_sync`
+ src/prefect/flow_engine.py:1490:21: warning[possibly-missing-attribute] Attribute `throw` may be missing on object of type `Unknown | R@run_generator_flow_sync`
+ src/prefect/flow_engine.py:1524:44: warning[possibly-missing-attribute] Attribute `__anext__` may be missing on object of type `Unknown | R@run_generator_flow_async`
+ src/prefect/flow_engine.py:1531:25: warning[possibly-missing-attribute] Attribute `throw` may be missing on object of type `Unknown | R@run_generator_flow_async`
- src/prefect/flows.py:286:34: error[unresolved-attribute] Object of type `((**P@Flow) -> R@Flow) & ((*args: object, **kwargs: object) -> object)` has no attribute `__name__`
+ src/prefect/flows.py:286:34: error[unresolved-attribute] Object of type `(**P@Flow) -> R@Flow` has no attribute `__name__`
- src/prefect/flows.py:404:68: error[unresolved-attribute] Object of type `((**P@Flow) -> R@Flow) & ((*args: object, **kwargs: object) -> object)` has no attribute `__name__`
+ src/prefect/flows.py:404:68: error[unresolved-attribute] Object of type `(**P@Flow) -> R@Flow` has no attribute `__name__`
- src/prefect/flows.py:1750:53: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- src/prefect/utilities/templating.py:320:13: error[invalid-assignment] Invalid subscript assignment with key of type `object` and value of type `T@resolve_block_document_references | dict[str, Any] | str | ... omitted 4 union elements` on object of type `dict[str, Any]`
+ src/prefect/utilities/templating.py:320:13: error[invalid-assignment] Invalid subscript assignment with key of type `object` and value of type `T@resolve_block_document_references | dict[str, Any]` on object of type `dict[str, Any]`
- src/prefect/utilities/templating.py:323:16: error[invalid-return-type] Return type does not match returned value: expected `T@resolve_block_document_references | dict[str, Any]`, found `list[T@resolve_block_document_references | dict[str, Any] | str | ... omitted 5 union elements]`
+ src/prefect/utilities/templating.py:323:16: error[invalid-return-type] Return type does not match returned value: expected `T@resolve_block_document_references | dict[str, Any]`, found `list[T@resolve_block_document_references | dict[str, Any] | Unknown]`
- src/prefect/utilities/templating.py:437:16: error[invalid-return-type] Return type does not match returned value: expected `T@resolve_variables`, found `dict[object, T@resolve_variables | str | int | ... omitted 5 union elements]`
+ src/prefect/utilities/templating.py:437:16: error[invalid-return-type] Return type does not match returned value: expected `T@resolve_variables`, found `dict[object, T@resolve_variables | Unknown]`
- src/prefect/utilities/templating.py:442:16: error[invalid-return-type] Return type does not match returned value: expected `T@resolve_variables`, found `list[T@resolve_variables | str | int | ... omitted 5 union elements]`
+ src/prefect/utilities/templating.py:442:16: error[invalid-return-type] Return type does not match returned value: expected `T@resolve_variables`, found `list[T@resolve_variables | Unknown]`
- src/prefect/workers/base.py:232:13: error[invalid-argument-type] Argument is incorrect: Expected `T@resolve_variables`, found `T@resolve_block_document_references | dict[str, Any] | str | ... omitted 4 union elements`
+ src/prefect/workers/base.py:232:13: error[invalid-argument-type] Argument is incorrect: Expected `T@resolve_variables`, found `T@resolve_block_document_references | dict[str, Any]`
- src/prefect/workers/base.py:234:20: error[invalid-argument-type] Argument expression after ** must be a mapping type: Found `T@resolve_variables | str | int | ... omitted 4 union elements`
+ src/prefect/workers/base.py:234:20: error[invalid-argument-type] Argument expression after ** must be a mapping type: Found `T@resolve_variables`
- Found 5363 diagnostics
+ Found 5368 diagnostics

scikit-build-core (https://github.com/scikit-build/scikit-build-core)
- src/scikit_build_core/build/wheel.py:98:20: error[no-matching-overload] No overload of bound method `__init__` matches arguments
- Found 48 diagnostics
+ Found 47 diagnostics

egglog-python (https://github.com/egraphs-good/egglog-python)
- python/tests/test_typing.py:26:9: error[invalid-method-override] Invalid override of method `remove`: Definition is incompatible with `MutableSequence.remove`
- Found 1486 diagnostics
+ Found 1485 diagnostics

hydpy (https://github.com/hydpy-dev/hydpy)
- hydpy/auxs/networktools.py:184:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- hydpy/auxs/networktools.py:364:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- hydpy/core/devicetools.py:224:9: error[invalid-method-override] Invalid override of method `add`: Definition is incompatible with `MutableSet.add`
- Found 666 diagnostics
+ Found 663 diagnostics

django-stubs (https://github.com/typeddjango/django-stubs)
+ django-stubs/contrib/postgres/aggregates/general.pyi:23:98: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ django-stubs/contrib/postgres/aggregates/general.pyi:45:98: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ django-stubs/contrib/postgres/aggregates/general.pyi:58:98: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ django-stubs/db/backends/mysql/compiler.pyi:9:42: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- django-stubs/forms/fields.pyi:284:9: error[invalid-method-override] Invalid override of method `to_python`: Definition is incompatible with `Field.to_python`
- django-stubs/http/request.pyi:197:9: error[invalid-method-override] Invalid override of method `__delitem__`: Definition is incompatible with `MultiValueDict.__delitem__`
- django-stubs/test/utils.pyi:34:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
- django-stubs/test/utils.pyi:36:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`

ibis (https://github.com/ibis-project/ibis)
- ibis/backends/duckdb/converter.py:31:13: error[invalid-method-override] Invalid override of method `convert_scalar`: Definition is incompatible with `DataMapper.convert_scalar`
- ibis/backends/duckdb/converter.py:37:13: error[invalid-method-override] Invalid override of method `convert_column`: Definition is incompatible with `DataMapper.convert_column`
- ibis/backends/snowflake/converter.py:97:13: error[invalid-method-override] Invalid override of method `convert_table`: Definition is incompatible with `DataMapper.convert_table`
- ibis/backends/snowflake/converter.py:112:13: error[invalid-method-override] Invalid override of method `convert_column`: Definition is incompatible with `DataMapper.convert_column`
- ibis/backends/snowflake/converter.py:126:13: error[invalid-method-override] Invalid override of method `convert_scalar`: Definition is incompatible with `DataMapper.convert_scalar`
- ibis/backends/sql/compilers/risingwave.py:57:9: error[invalid-method-override] Invalid override of method `to_sqlglot`: Definition is incompatible with `SQLGlotCompiler.to_sqlglot`
- ibis/common/tests/test_patterns.py:1169:9: error[invalid-method-override] Invalid override of method `__coerce__`: Definition is incompatible with `Coercible.__coerce__`
- ibis/common/tests/test_patterns.py:1182:9: error[invalid-method-override] Invalid override of method `__coerce__`: Definition is incompatible with `Coercible.__coerce__`
- Found 4616 diagnostics
+ Found 4608 diagnostics

pywin32 (https://github.com/mhammond/pywin32)
- com/win32com/server/policy.py:697:9: error[invalid-method-override] Invalid override of method `_invokeex_`: Definition is incompatible with `BasicWrapPolicy._invokeex_`
- Found 2713 diagnostics
+ Found 2712 diagnostics

bokeh (https://github.com/bokeh/bokeh)
- src/bokeh/core/property/alias.py:102:9: error[invalid-method-override] Invalid override of method `make_descriptors`: Definition is incompatible with `Property.make_descriptors`
- src/bokeh/core/property/dataspec.py:465:9: error[invalid-method-override] Invalid override of method `make_descriptors`: Definition is incompatible with `Property.make_descriptors`
- src/bokeh/core/property/dataspec.py:529:9: error[invalid-method-override] Invalid override of method `prepare_value`: Definition is incompatible with `Property.prepare_value`
- Found 880 diagnostics
+ Found 877 diagnostics

static-frame (https://github.com/static-frame/static-frame)
- static_frame/core/bus.py:675:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[Bus[Any], object_]`, found `InterGetItemILocReduces[Self@iloc | Bus[Any], object_ | Self@iloc]`
+ static_frame/core/bus.py:671:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemLocReduces[Bus[Any], object_]`, found `InterGetItemLocReduces[Bus[Any] | Bottom[Index[Any]] | Bottom[Series[Any, Any]] | ... omitted 6 union elements, object_]`
+ static_frame/core/bus.py:675:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[Bus[Any], object_]`, found `InterGetItemILocReduces[Bus[Any] | Bottom[Index[Any]] | TypeBlocks | ... omitted 6 union elements, object_ | Self@iloc]`
- static_frame/core/node_selector.py:526:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemLocReduces[TVContainer_co@InterfaceSelectQuartet, Any]`, found `InterGetItemLocReduces[Bottom[Series[Any, Any]] | Unknown, Any]`
+ static_frame/core/node_selector.py:526:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemLocReduces[TVContainer_co@InterfaceSelectQuartet, Any]`, found `InterGetItemLocReduces[Unknown | Bottom[Series[Any, Any]], Any]`
- static_frame/core/series.py:772:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[Series[Any, Any], TVDtype@Series]`, found `InterGetItemILocReduces[Series[Any, Any] | Bottom[Index[Any]] | TypeBlocks | ... omitted 6 union elements, TVDtype@Series]`
+ static_frame/core/series.py:772:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[Series[Any, Any], TVDtype@Series]`, found `InterGetItemILocReduces[Series[Any, Any] | ndarray[Never, Never] | TypeBlocks | ... omitted 6 union elements, TVDtype@Series]`
- static_frame/core/series.py:4072:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[SeriesHE[Any, Any], TVDtype@SeriesHE]`, found `InterGetItemILocReduces[Bottom[Series[Any, Any]] | Bottom[Index[Any]] | TypeBlocks | ... omitted 7 union elements, TVDtype@SeriesHE]`
+ static_frame/core/series.py:4072:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[SeriesHE[Any, Any], TVDtype@SeriesHE]`, found `InterGetItemILocReduces[Bottom[Series[Any, Any]] | ndarray[Never, Never] | TypeBlocks | ... omitted 7 union elements, TVDtype@SeriesHE]`
+ static_frame/core/www.py:39:49: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ static_frame/core/www.py:42:46: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- static_frame/core/yarn.py:418:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[Yarn[Any], object_]`, found `InterGetItemILocReduces[Yarn[Any] | Bottom[Index[Any]] | TypeBlocks | ... omitted 6 union elements, object_]`
+ static_frame/core/yarn.py:418:16: error[invalid-return-type] Return type does not match returned value: expected `InterGetItemILocReduces[Yarn[Any], object_]`, found `InterGetItemILocReduces[Yarn[Any] | ndarray[Never, Never] | TypeBlocks | ... omitted 6 union elements, object_]`
- Found 1837 diagnostics
+ Found 1840 diagnostics

jax (https://github.com/google/jax)
- jax/_src/pallas/mosaic_gpu/core.py:511:7: error[invalid-method-override] Invalid override of method `update`: Definition is incompatible with `AbstractValue.update`
- jax/_src/pallas/mosaic_gpu/core.py:1231:7: error[invalid-method-override] Invalid override of method `update`: Definition is incompatible with `AbstractValue.update`
- jax/_src/pallas/mosaic_gpu/core.py:1259:7: error[invalid-method-override] Invalid override of method `update`: Definition is incompatible with `AbstractValue.update`
- jax/_src/scipy/spatial/transform.py:124:7: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- Found 2803 diagnostics
+ Found 2799 diagnostics

dd-trace-py (https://github.com/DataDog/dd-trace-py)
- tests/internal/test_wrapping.py:654:13: error[invalid-method-override] Invalid override of method `__exit__`: Definition is incompatible with `BaseWrappingContext.__exit__`
- Found 8473 diagnostics
+ Found 8472 diagnostics

zulip (https://github.com/zulip/zulip)
+ zerver/lib/markdown/__init__.py:583:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:1690:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:1711:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:1779:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:1825:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:1857:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:1894:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:2043:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:2116:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ zerver/lib/markdown/__init__.py:2193:23: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 3662 diagnostics
+ Found 3672 diagnostics

pandas (https://github.com/pandas-dev/pandas)
+ pandas/_libs/tslibs/timestamps.pyi:149:53: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas/_libs/tslibs/timestamps.pyi:150:53: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas/_libs/tslibs/timestamps.pyi:151:53: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas/_libs/tslibs/timestamps.pyi:152:53: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- pandas/_libs/tslibs/timestamps.pyi:162:9: error[invalid-method-override] Invalid override of method `__sub__`: Definition is incompatible with `date.__sub__`
- pandas/core/arrays/datetimelike.py:385:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `ExtensionArray.__getitem__`
+ pandas/core/computation/pytables.py:358:34: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas/core/computation/pytables.py:409:34: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- pandas/core/indexes/frozen.py:73:15: error[invalid-method-override] Invalid override of method `__iadd__`: Definition is incompatible with `MutableSequence.__iadd__`
- pandas/core/indexes/frozen.py:75:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `MutableSequence.__getitem__`
- pandas/core/resample.py:2243:9: error[invalid-method-override] Invalid override of method `_upsample`: Definition is incompatible with `Resampler._upsample`
+ pandas/plotting/_matplotlib/core.py:1777:17: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas/plotting/_matplotlib/core.py:2091:17: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 3789 diagnostics
+ Found 3792 diagnostics

pandas-stubs (https://github.com/pandas-dev/pandas-stubs)
+ pandas-stubs/_libs/tslibs/timestamps.pyi:184:18: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/_libs/tslibs/timestamps.pyi:194:18: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/_libs/tslibs/timestamps.pyi:204:18: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/_libs/tslibs/timestamps.pyi:214:18: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/_libs/tslibs/timestamps.pyi:238:19: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/_typing.pyi:1232:16: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas-stubs/core/indexes/timedeltas.pyi:109:21: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/core/indexes/timedeltas.pyi:115:21: warning[unused-ignore-comment] Unused `ty: ignore` directive
+ pandas-stubs/core/series.pyi:2273:60: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ pandas-stubs/core/series.pyi:3016:60: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- Found 5160 diagnostics
+ Found 5170 diagnostics

rotki (https://github.com/rotki/rotki)
- rotkehlchen/chain/decoding/tools.py:96:44: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
- rotkehlchen/chain/decoding/tools.py:99:13: error[invalid-argument-type] Argument to function `decode_transfer_direction` is incorrect: Expected `Sequence[A@BaseDecoderTools]`, found `Unknown | tuple[BTCAddress, ...] | tuple[ChecksumAddress, ...] | tuple[SubstrateAddress, ...] | tuple[SolanaAddress, ...]`
- rotkehlchen/chain/decoding/tools.py:100:62: warning[unused-ignore-comment] Unused blanket `type: ignore` directive
+ rotkehlchen/chain/decoding/tools.py:97:13: error[invalid-argument-type] Argument to function `decode_transfer_direction` is incorrect: Expected `BTCAddress | ChecksumAddress | SubstrateAddress | SolanaAddress`, found `A@BaseDecoderTools`
+ rotkehlchen/chain/decoding/tools.py:98:13: error[invalid-argument-type] Argument to function `decode_transfer_direction` is incorrect: Expected `BTCAddress | ChecksumAddress | SubstrateAddress | SolanaAddress | None`, found `A@BaseDecoderTools | None`
- Found 2103 diagnostics
+ Found 2102 diagnostics

sympy (https://github.com/sympy/sympy)
- sympy/combinatorics/free_groups.py:435:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- sympy/combinatorics/free_groups.py:463:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `Sequence.__contains__`
- sympy/functions/elementary/exponential.py:198:9: error[invalid-method-override] Invalid override of method `_eval_power`: Definition is incompatible with `Expr._eval_power`
- sympy/functions/special/bessel.py:179:9: error[invalid-method-override] Invalid override of method `eval`: Definition is incompatible with `Application.eval`
- sympy/functions/special/bessel.py:327:9: error[invalid-method-override] Invalid override of method `eval`: Definition is incompatible with `Application.eval`
- sympy/functions/special/bessel.py:482:9: error[invalid-method-override] Invalid override of method `eval`: Definition is incompatible with `Application.eval`
- sympy/functions/special/bessel.py:649:9: error[invalid-method-override] Invalid override of method `eval`: Definition is incompatible with `Application.eval`
- sympy/functions/special/bessel.py:999:9: error[invalid-method-override] Invalid override of method `eval`: Definition is incompatible with `Application.eval`
- sympy/geometry/ellipse.py:617:9: error[invalid-method-override] Invalid override of method `intersection`: Definition is incompatible with `Set.intersection`
- sympy/geometry/ellipse.py:1652:9: error[invalid-method-override] Invalid override of method `intersection`: Definition is incompatible with `Set.intersection`
- sympy/geometry/parabola.py:292:9: error[invalid-method-override] Invalid override of method `intersection`: Definition is incompatible with `Set.intersection`
- sympy/geometry/point.py:919:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `GeometryEntity.__contains__`
- sympy/geometry/point.py:1127:9: error[invalid-method-override] Invalid override of method `__contains__`: Definition is incompatible with `GeometryEntity.__contains__`
- sympy/geometry/point.py:1217:9: error[invalid-method-override] Invalid override of method `intersection`: Definition is incompatible with `GeometryEntity.intersection`
- sympy/geometry/polygon.py:901:9: error[invalid-method-override] Invalid override of method `intersection`: Definition is incompatible with `Set.intersection`
- sympy/matrices/expressions/blockmatrix.py:552:9: error[invalid-method-override] Invalid override of method `equals`: Definition is incompatible with `Expr.equals`
- sympy/matrices/expressions/permutation.py:87:9: error[invalid-method-override] Invalid override of method `_eval_power`: Definition is incompatible with `Expr._eval_power`
- sympy/matrices/expressions/special.py:42:9: error[invalid-method-override] Invalid override of method `_eval_power`: Definition is incompatible with `Expr._eval_power`
- sympy/matrices/expressions/special.py:180:9: error[invalid-method-override] Invalid override of method `_eval_power`: Definition is incompatible with `Expr._eval_power`
- sympy/matrices/expressions/special.py:275:9: error[invalid-method-override] Invalid override of method `_eval_power`: Definition is incompatible with `Expr._eval_power`
- sympy/physics/quantum/gate.py:721:9: error[invalid-method-override] Invalid override of method `plot_gate`: Definition is incompatible with `Gate.plot_gate`
- sympy/physics/quantum/spin.py:1482:9: error[invalid-method-override] Invalid override of method `_eval_hilbert_space`: Definition is incompatible with `QExpr._eval_hilbert_space`
- sympy/polys/domains/gaussiandomains.py:518:9: error[invalid-method-override] Invalid override of method `gcd`: Definition is incompatible with `Domain.gcd`
- sympy/polys/domains/gaussiandomains.py:525:9: error[invalid-method-override] Invalid override of method `gcdex`: Definition is incompatible with `Domain.gcdex`
- sympy/polys/domains/gaussiandomains.py:543:9: error[invalid-method-override] Invalid override of method `lcm`: Definition is incompatible with `Domain.lcm`
- sympy/polys/domains/old_polynomialring.py:244:9: error[invalid-method-override] Invalid override of method `new`: Definition is incompatible with `Domain.new`
- sympy/polys/domains/old_polynomialring.py:330:9: error[invalid-method-override] Invalid override of method `new`: Definition is incompatible with `Domain.new`
- sympy/solvers/diophantine/diophantine.py:114:9: error[invalid-method-override] Invalid override of method `add`: Definition is incompatible with `MutableSet.add`
- Found 15633 diagnostics
+ Found 15605 diagnostics

scipy (https://github.com/scipy/scipy)
- scipy/_lib/_ccallback.py:125:9: error[invalid-method-override] Invalid override of method `__getitem__`: Definition is incompatible with `Sequence.__getitem__`
- scipy/interpolate/_fitpack2.py:2308:9: error[invalid-method-override] Invalid override of method `__call__`: Definition is incompatible with `_BivariateSplineBase.__call__`
- scipy/interpolate/_fitpack2.py:2462:9: error[invalid-method-override] Invalid override of method `__call__`: Definition is incompatible with `_BivariateSplineBase.__call__`
- scipy/interpolate/_fitpack2.py:2748:9: error[invalid-method-override] Invalid override of method `__call__`: Definition is incompatible with `_BivariateSplineBase.__call__`
- scipy/stats/_continuous_distns.py:3804:9: error[invalid-method-override] Invalid override of method `_fitstart`: Definition is incompatible with `rv_continuous._fitstart`
- scipy/stats/_distribution_infrastructure.py:512:9: error[invalid-method-override] Invalid override of method `contains`: Definition is incompatible with `_Domain.contains`
- Found 8078 diagnostics
+ Found 8072 diagnostics

No memory usage changes detected ✅

@charliermarsh charliermarsh marked this pull request as ready for review January 9, 2026 20:55
Copy link
Contributor

@carljm carljm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

@charliermarsh charliermarsh merged commit c88e1a0 into main Jan 10, 2026
49 checks passed
@charliermarsh charliermarsh deleted the charlie/lsp branch January 10, 2026 00:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ty Multi-file analysis & type inference

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Don't emit Liskov violations w.r.t. grandparent class if the violation cannot be fixed without breaking Liskov w.r.t. the parent class

2 participants