Skip to content

[ty] Add support for typing.Concatenate#23689

Draft
dhruvmanila wants to merge 20 commits intomainfrom
dhruv/typing-concatenate
Draft

[ty] Add support for typing.Concatenate#23689
dhruvmanila wants to merge 20 commits intomainfrom
dhruv/typing-concatenate

Conversation

@dhruvmanila
Copy link
Member

@dhruvmanila dhruvmanila commented Mar 3, 2026

Summary

closes: astral-sh/ty#1535

Test Plan

@dhruvmanila dhruvmanila added the ty Multi-file analysis & type inference label Mar 3, 2026
@astral-sh-bot
Copy link

astral-sh-bot bot commented Mar 3, 2026

Typing conformance results

The percentage of diagnostics emitted that were expected errors increased from 85.05% to 85.37%. The percentage of expected errors that received a diagnostic decreased from 78.05% to 77.94%. The number of fully passing files held steady at 63/132.

Summary

How are test cases classified?

Each test case represents one expected error annotation or a group of annotations sharing a tag. Counts are per test case, not per diagnostic — multiple diagnostics on the same line count as one. Required annotations (E) are true positives when ty flags the expected location and false negatives when it does not. Optional annotations (E?) are true positives when flagged but true negatives (not false negatives) when not. Tagged annotations (E[tag]) require ty to flag exactly one of the tagged lines; tagged multi-annotations (E[tag+]) allow any number up to the tag count. Flagging unexpected locations counts as a false positive.

Metric Old New Diff Outcome
True Positives 825 823 -2 ⏬ (❌)
False Positives 145 141 -4 ⏬ (✅)
False Negatives 232 233 +1 ⏫ (❌)
Total Diagnostics 1047 1041 -6
Precision 85.05% 85.37% +0.32% ⏫ (✅)
Recall 78.05% 77.94% -0.12% ⏬ (❌)
Passing Files 63/132 63/132 +0

Test file breakdown

5 files altered
File True Positives False Positives False Negatives Status
generics_paramspec_semantics.py 0 (-5) ❌ 0 (-2) ✅ 9 (+4) ❌ 📉 Regressing
generics_paramspec_components.py 15 (+2) ✅ 0 1 (-2) ✅ 📈 Improving
generics_paramspec_basic.py 6 (+1) ✅ 0 1 (-1) ✅ 📈 Improving
aliases_explicit.py 19 0 (-1) ✅ 2 📈 Improving
aliases_implicit.py 17 0 (-1) ✅ 5 📈 Improving
Total (all files) 823 (-2) ❌ 141 (-4) ✅ 233 (+1) ❌ 63/132

True positives added (3)

3 diagnostics
Test case Diff

generics_paramspec_basic.py:27

+error[invalid-type-form] `typing.Concatenate` is not allowed in this context in a type expression

generics_paramspec_components.py:70

+error[invalid-argument-type] Argument is incorrect: Expected `int`, found `P@remove.args`
+error[invalid-argument-type] Argument is incorrect: Expected `P@remove.args`, found `Literal[1]`

generics_paramspec_components.py:72

+error[invalid-argument-type] Argument is incorrect: Expected `int`, found `P@remove.args`

False positives removed (4)

4 diagnostics
Test case Diff

aliases_explicit.py:57

-error[type-assertion-failure] Type `Unknown` does not match asserted type `(int, str, str, /) -> None`

aliases_implicit.py:68

-error[type-assertion-failure] Type `Unknown` does not match asserted type `(int, str, str, /) -> None`

generics_paramspec_semantics.py:106

-error[missing-argument] No argument provided for required parameter `**kwargs`

generics_paramspec_semantics.py:107

-error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`

True positives removed (4)

4 diagnostics
Test case Diff

generics_paramspec_semantics.py:108

-error[missing-argument] No argument provided for required parameter `**kwargs`

generics_paramspec_semantics.py:26

-error[positional-only-parameter-as-kwarg] Positional-only parameter 1 (`a`) passed as keyword argument
-error[positional-only-parameter-as-kwarg] Positional-only parameter 2 (`b`) passed as keyword argument

generics_paramspec_semantics.py:27

-error[invalid-argument-type] Argument is incorrect: Expected `bool`, found `Literal["A"]`

generics_paramspec_semantics.py:61

-error[invalid-argument-type] Argument to function `func1` is incorrect: Expected `(*, x: int) -> int`, found `def keyword_only_y(*, y: int) -> int`

Optional Diagnostics Removed (1)

1 diagnostic
Test case Diff

generics_paramspec_semantics.py:46

-error[invalid-argument-type] Argument to function `func1` is incorrect: Expected `(x: int, y: str) -> int`, found `def y_x(y: int, x: str) -> int`

@astral-sh-bot
Copy link

astral-sh-bot bot commented Mar 3, 2026

mypy_primer results

Changes were detected when running on open source projects
pytest-robotframework (https://github.com/detachhead/pytest-robotframework)
- pytest_robotframework/_internal/utils.py:51:16: error[invalid-return-type] Return type does not match returned value: expected `[**P'return](**P'return) -> T`, found `_Wrapped[(...), T@decorator, P@new_fn, T@decorator]`
- Found 175 diagnostics
+ Found 174 diagnostics

async-utils (https://github.com/mikeshardmind/async-utils)
+ src/async_utils/gen_transform.py:106:29: error[invalid-assignment] Object of type `def _consumer[**P, Y](laziness_ev: Event, queue: Queue[Y], loop: AbstractEventLoop, cancel_future: Future[None], f: (**P) -> Generator[Y, None, None], /, *args: P.args, **kwargs: P.kwargs) -> None` is not assignable to `ConsumerType[P@_sync_to_async_gen, Y@_sync_to_async_gen]`
- Found 8 diagnostics
+ Found 9 diagnostics

asynq (https://github.com/quora/asynq)
+ asynq/tests/test_decorators.py:55:33: error[too-many-positional-arguments] Too many positional arguments to bound method `__call__`: expected 1, got 2
+ asynq/tests/test_decorators.py:57:42: error[too-many-positional-arguments] Too many positional arguments to bound method `asynq`: expected 1, got 2
+ asynq/tests/test_multiple_inheritance.py:44:36: error[too-many-positional-arguments] Too many positional arguments to bound method `asynq`: expected 1, got 2
- asynq/tests/test_typing.py:47:38: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
+ asynq/tests/test_tools.py:502:9: error[too-many-positional-arguments] Too many positional arguments to bound method `asynq`: expected 1, got 2
- Found 190 diagnostics
+ Found 193 diagnostics

scrapy (https://github.com/scrapy/scrapy)
+ scrapy/middleware.py:152:33: error[invalid-argument-type] Argument is incorrect: Expected `_P@methods.args`, found `Spider`
- scrapy/utils/python.py:147:38: error[unbound-type-variable] Type variable `_SelfT` is not bound to any outer generic context
+ tests/test_contracts.py:331:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:336:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:343:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:350:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:375:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMetaMock`
+ tests/test_contracts.py:385:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `<class 'ResponseMetaMock'>`
+ tests/test_contracts.py:394:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMetaMock`
+ tests/test_contracts.py:403:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:408:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:413:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:418:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:423:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:431:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:440:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:445:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:450:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:455:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:462:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:480:26: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:576:30: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_contracts.py:590:30: error[invalid-argument-type] Argument is incorrect: Expected `Response`, found `ResponseMock`
+ tests/test_downloadermiddleware_offsite.py:90:44: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `((Response, /, *args: Any, **kwargs: Any) -> Any) | None`, found `dict[Unknown, Unknown]`
+ tests/test_http_request.py:322:54: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `((Response, /, *args: Any, **kwargs: Any) -> Any) | None`, found `Literal["a_function"]`
+ tests/test_http_request.py:328:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `((Response, /, *args: Any, **kwargs: Any) -> Any) | None`, found `Literal["a_function"]`
- Found 1794 diagnostics
+ Found 1818 diagnostics

starlette (https://github.com/encode/starlette)
- starlette/applications.py:69:25: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ServerErrorMiddleware'>`
- starlette/applications.py:71:27: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ExceptionMiddleware'>`
- tests/middleware/test_base.py:84:28: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/middleware/test_base.py:152:24: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'aMiddleware'>`
- tests/middleware/test_base.py:153:24: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'bMiddleware'>`
- tests/middleware/test_base.py:154:24: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'cMiddleware'>`
- tests/middleware/test_base.py:169:75: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/middleware/test_base.py:187:44: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/middleware/test_base.py:277:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/middleware/test_base.py:315:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/middleware/test_base.py:335:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/middleware/test_base.py:362:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/middleware/test_base.py:433:24: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/middleware/test_base.py:434:24: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ContextManagerMiddleware'>`
- tests/middleware/test_base.py:609:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:638:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:667:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:693:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:725:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:754:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:843:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:871:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'ConsumingMiddleware'>`
- tests/middleware/test_base.py:1086:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'MyMiddleware'>`
- tests/middleware/test_base.py:1220:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/middleware/test_base.py:1278:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'PassthroughMiddleware'>`
- tests/middleware/test_cors.py:20:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:81:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:132:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:181:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:222:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:255:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:285:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:310:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:382:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:413:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:431:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:446:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:465:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:480:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:503:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_cors.py:543:17: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CORSMiddleware'>`
- tests/middleware/test_gzip.py:23:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:41:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:61:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:84:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:107:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:132:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:155:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_gzip.py:180:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'GZipMiddleware'>`
- tests/middleware/test_https_redirect.py:16:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'HTTPSRedirectMiddleware'>`
- tests/middleware/test_middleware.py:16:29: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/middleware/test_middleware.py:21:36: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/middleware/test_session.py:39:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:71:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:96:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:131:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:150:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:169:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:191:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:213:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_session.py:234:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SessionMiddleware'>`
- tests/middleware/test_trusted_host.py:16:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'TrustedHostMiddleware'>`
- tests/middleware/test_trusted_host.py:44:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'TrustedHostMiddleware'>`
- tests/test_applications.py:137:26: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'TrustedHostMiddleware'>`
- tests/test_applications.py:485:28: error[invalid-argument-type] Argument to bound method `add_middleware` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'SimpleInitializableMiddleware'>`
- tests/test_applications.py:486:28: error[invalid-argument-type] Argument to bound method `add_middleware` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'NoOpMiddleware'>`
- tests/test_applications.py:520:24: error[invalid-argument-type] Argument to bound method `add_middleware` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'MiddlewareWithArgs'>`
- tests/test_applications.py:521:24: error[invalid-argument-type] Argument to bound method `add_middleware` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'MiddlewareWithArgs'>`
- tests/test_applications.py:543:24: error[invalid-argument-type] Argument to bound method `add_middleware` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `def _middleware_factory(app: (MutableMapping[str, Any], () -> Awaitable[MutableMapping[str, Any]], (MutableMapping[str, Any], /) -> Awaitable[None], /) -> Awaitable[None], arg: str) -> ((MutableMapping[str, Any], () -> Awaitable[MutableMapping[str, Any]], (MutableMapping[str, Any], /) -> Awaitable[None], /) -> Awaitable[None])`
- tests/test_applications.py:544:24: error[invalid-argument-type] Argument to bound method `add_middleware` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `((MutableMapping[str, Any], () -> Awaitable[MutableMapping[str, Any]], (MutableMapping[str, Any], /) -> Awaitable[None], /) -> Awaitable[None], str, /) -> ((MutableMapping[str, Any], () -> Awaitable[MutableMapping[str, Any]], (MutableMapping[str, Any], /) -> Awaitable[None], /) -> Awaitable[None])`
- tests/test_authentication.py:188:28: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'AuthenticationMiddleware'>`
- tests/test_authentication.py:343:28: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'AuthenticationMiddleware'>`
- tests/test_requests.py:667:79: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/test_routing.py:328:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/test_routing.py:825:36: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'AddHeadersMiddleware'>`
- tests/test_routing.py:843:36: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'AddHeadersMiddleware'>`
- tests/test_routing.py:860:36: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'AddHeadersMiddleware'>`
- tests/test_routing.py:964:40: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'NamedMiddleware'>`
- tests/test_routing.py:969:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'NamedMiddleware'>`
- tests/test_routing.py:1016:40: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'WebsocketMiddleware'>`
- tests/test_staticfiles.py:59:30: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BaseHTTPMiddleware'>`
- tests/test_templates.py:92:32: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'CustomMiddleware'>`
- tests/test_testclient.py:190:58: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `_MiddlewareFactory[(...)]`, found `<class 'BrokenMiddleware'>`
- Found 197 diagnostics
+ Found 114 diagnostics

schemathesis (https://github.com/schemathesis/schemathesis)
- src/schemathesis/specs/graphql/schemas.py:247:16: error[missing-argument] No argument provided for required parameter `*args`
- src/schemathesis/specs/openapi/_hypothesis.py:549:12: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/_hypothesis.py:798:45: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/adapter/parameters.py:120:12: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/adapter/parameters.py:183:12: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/adapter/parameters.py:211:12: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/adapter/parameters.py:247:12: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/adapter/parameters.py:620:16: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/adapter/parameters.py:1164:16: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/examples.py:96:9: error[missing-argument] No argument provided for required parameter `*args`
- src/schemathesis/specs/openapi/negative/__init__.py:182:24: error[missing-argument] No argument provided for required parameter `*args`
- src/schemathesis/specs/openapi/negative/__init__.py:204:16: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/schemas.py:536:16: error[missing-argument] No argument provided for required parameter `*args`
- src/schemathesis/specs/openapi/stateful/__init__.py:200:37: error[missing-argument] No arguments provided for required parameters `*args`, `**kwargs`
- src/schemathesis/specs/openapi/stateful/__init__.py:342:16: error[missing-argument] No argument provided for required parameter `*args`
- Found 337 diagnostics
+ Found 322 diagnostics

pydantic (https://github.com/pydantic/pydantic)
- pydantic/_internal/_core_metadata.py:87:54: error[invalid-assignment] Invalid assignment to key "pydantic_js_extra" with declared type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | ((dict[str, int | float | str | ... omitted 3 union elements], type[Any], /) -> None)` on TypedDict `CoreMetadata`: value of type `dict[object, object]`
+ pydantic/_internal/_core_metadata.py:87:54: error[invalid-assignment] Invalid assignment to key "pydantic_js_extra" with declared type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | ((dict[str, Divergent], type[Any], /) -> None)` on TypedDict `CoreMetadata`: value of type `dict[object, object]`
- pydantic/fields.py:949:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:949:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:989:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:989:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:1032:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:1032:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:1072:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:1072:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:1115:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:1115:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:1154:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:1154:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:1194:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`
+ pydantic/fields.py:1194:5: error[invalid-parameter-default] Default value of type `PydanticUndefinedType` is not assignable to annotated parameter type `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`
- pydantic/fields.py:1573:13: error[invalid-argument-type] Argument is incorrect: Expected `dict[str, int | float | str | ... omitted 3 union elements] | ((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) | None`, found `dict[str, int | float | str | ... omitted 3 union elements] | dict[Never, Never] | (((dict[str, int | float | str | ... omitted 3 union elements], /) -> None) & ~Top[dict[Unknown, Unknown]]) | None`
+ pydantic/fields.py:1573:13: error[invalid-argument-type] Argument is incorrect: Expected `dict[str, Divergent] | ((dict[str, Divergent], /) -> None) | None`, found `dict[str, Divergent] | dict[Never, Never] | (((dict[str, Divergent], /) -> None) & ~Top[dict[Unknown, Unknown]]) | None`

antidote (https://github.com/Finistere/antidote)
- tests/lib/lazy/test_lazy.py:458:35: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- tests/lib/lazy/test_lazy.py:471:33: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- tests/lib/lazy/test_lazy.py:1144:53: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- Found 237 diagnostics
+ Found 234 diagnostics

Expression (https://github.com/cognitedata/Expression)
+ expression/collections/array.py:496:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def filter[_TSource](source: TypedArray[_TSource], predicate: (_TSource, /) -> bool) -> TypedArray[_TSource]`
+ expression/collections/array.py:592:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def take[_TSource](source: TypedArray[_TSource], count: int) -> TypedArray[_TSource]`
+ expression/collections/array.py:606:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def take_last[_TSource](source: TypedArray[_TSource], count: int) -> TypedArray[_TSource]`
+ expression/collections/block.py:560:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def append[_TSource](source: Block[_TSource], other: Block[_TSource]) -> Block[_TSource]`
+ expression/collections/block.py:607:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def filter[_TSource](source: Block[_TSource], predicate: (_TSource, /) -> bool) -> Block[_TSource]`
+ expression/collections/block.py:873:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def skip[_TSource](source: Block[_TSource], count: int) -> Block[_TSource]`
+ expression/collections/block.py:887:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def skip_last[_TSource](source: Block[_TSource], count: int) -> Block[_TSource]`
+ expression/collections/block.py:901:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, reverse: bool = False) -> Never`, found `def sort[_TSourceSortable](source: Block[_TSourceSortable], reverse: bool = False) -> Block[_TSourceSortable]`
+ expression/collections/block.py:918:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def sort_with[_TSource](source: Block[_TSource], func: (_TSource, /) -> Any, reverse: bool = False) -> Block[_TSource]`
+ expression/collections/block.py:947:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def take[_TSource](source: Block[_TSource], count: int) -> Block[_TSource]`
+ expression/collections/block.py:961:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def take_last[_TSource](source: Block[_TSource], count: int) -> Block[_TSource]`
+ expression/collections/map.py:258:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def add[_Key, _Value](table: Map[_Key, _Value], key: _Key, value: _Value) -> Map[_Key, _Value]`
+ expression/collections/map.py:279:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def change[_Key, _Value](table: Map[_Key, _Value], key: _Key, fn: (Option[_Value], /) -> Option[_Value]) -> Map[_Key, _Value]`
+ expression/collections/map.py:391:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def filter[_Key, _Value](table: Map[_Key, _Value], predicate: (_Key, _Value, /) -> bool) -> Map[_Key, _Value]`
+ expression/collections/map.py:431:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def remove[_Key, _Value](table: Map[_Key, _Value], key: _Key) -> Map[_Key, _Value]`
+ expression/collections/seq.py:93:38: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Self@filter`
+ expression/collections/seq.py:287:31: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Self@skip, /) -> Unknown`, found `(Never, /) -> Never`
+ expression/collections/seq.py:316:31: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Self@take, /) -> Unknown`, found `(Never, /) -> Never`
+ expression/collections/seq.py:515:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def filter[_TSource](source: Iterable[_TSource], predicate: (_TSource, /) -> bool) -> Iterable[_TSource]`
+ expression/collections/seq.py:846:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def skip[_TSource](source: Iterable[_TSource], count: int) -> Iterable[_TSource]`
+ expression/collections/seq.py:892:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, count: int) -> Never`, found `def take[_TSource](source: Iterable[_TSource], count: int) -> Iterable[_TSource]`
+ expression/core/result.py:432:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def filter[_TSource, _TError](result: Result[_TSource, _TError], predicate: (_TSource, /) -> bool, default: _TError) -> Result[_TSource, _TError]`
+ expression/core/result.py:441:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def filter_with[_TSource, _TError](result: Result[_TSource, _TError], predicate: (_TSource, /) -> bool, default: (_TSource, /) -> _TError) -> Result[_TSource, _TError]`
+ expression/core/result.py:455:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def or_else[_TSource, _TError](result: Result[_TSource, _TError], other: Result[_TSource, _TError]) -> Result[_TSource, _TError]`
+ expression/core/result.py:460:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def or_else_with[_TSource, _TError](result: Result[_TSource, _TError], other: (_TError, /) -> Result[_TSource, _TError]) -> Result[_TSource, _TError]`
+ expression/extra/parser.py:54:39: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Parser[_B@ignore_then]`
+ expression/extra/parser.py:57:39: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Parser[Any]`
+ expression/extra/parser.py:60:24: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Self@or_else`
+ expression/extra/parser.py:86:24: error[invalid-argument-type] Argument is incorrect: Expected `(_A'return@curry & Parser[Any]) | (_B'return@curry & Parser[Any])`, found `Parser[_A@Parser]`
+ expression/extra/parser.py:86:28: error[invalid-argument-type] Argument is incorrect: Expected `(_A'return@curry & Parser[Any]) | (_B'return@curry & Parser[Any])`, found `Parser[Any]`
+ expression/extra/parser.py:145:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def or_else[_A](p1: Parser[_A], p2: Parser[_A]) -> Parser[_A]`
+ expression/extra/parser.py:353:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, *args: Unknown, **kwargs: Unknown) -> Never`, found `def then_ignore[_A](p2: Parser[Any], p1: Parser[_A]) -> Parser[_A]`
+ expression/extra/parser.py:381:1: error[invalid-argument-type] Argument is incorrect: Expected `(Never, /, p1: Parser[Any]) -> Never`, found `def ignore_then[_B](p2: Parser[_B], p1: Parser[Any]) -> Parser[_B]`
+ expression/extra/parser.py:457:33: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Parser[Block[str]]`
+ expression/extra/parser.py:490:21: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Parser[_A@between]`
+ expression/extra/parser.py:491:21: error[invalid-argument-type] Argument is incorrect: Expected `Never`, found `Parser[Any]`
+ tests/test_array.py:333:23: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(TypedArray[int], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_block.py:300:23: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Block[int], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_block.py:309:23: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Block[int], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_block.py:321:9: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Block[str], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_map.py:74:21: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Map[str, int] | Unknown, /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_result.py:296:24: error[invalid-argument-type] Argument to bound method `pipe` is incorrect: Expected `(Result[Literal[42], Any], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_result.py:320:24: error[invalid-argument-type] Argument to bound method `pipe` is incorrect: Expected `(Result[Literal[42], Any], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_result.py:513:24: error[invalid-argument-type] Argument to bound method `pipe` is incorrect: Expected `(Result[Literal[42], Any], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_result.py:540:24: error[invalid-argument-type] Argument to bound method `pipe` is incorrect: Expected `(Result[Literal[42], Any], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_seq.py:229:23: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Seq[int], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_seq.py:239:23: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Seq[int], /) -> Unknown`, found `(Never, /) -> Never`
+ tests/test_seq.py:248:19: error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Iterable[int], /) -> Unknown`, found `(Never, /) -> Never`
- Found 210 diagnostics
+ Found 258 diagnostics

Tanjun (https://github.com/FasterSpeeding/Tanjun)
+ tanjun/_internal/__init__.py:83:16: error[invalid-return-type] Return type does not match returned value: expected `bool`, found `Literal[True] | (Coroutine[Any, Any, bool] & ~AlwaysFalsy)`
+ tanjun/annotations.py:451:17: error[invalid-argument-type] Argument is incorrect: Expected `Sequence[(str, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any] | Any]`, found `(((str, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any] | Any) & Sequence[object]) | Sequence[(str, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any] | Any]`
+ tanjun/annotations.py:1538:79: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `(str, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any] | Any`, found `object`
+ tanjun/annotations.py:1538:79: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `(str, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any] | Any`, found `object`
- tanjun/checks.py:1051:23: error[invalid-type-arguments] Type `TypeVar` is not assignable to upper bound `Context` of type variable `_ContextT@_AllChecks`
+ tanjun/clients.py:1893:28: error[invalid-argument-type] Argument to bound method `add_check` is incorrect: Expected `(Context, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, bool] | bool`, found `(def _check_human(ctx: Context, /) -> bool) & ~((Context, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, bool] | bool)`
+ tanjun/parsing.py:1553:37: error[invalid-argument-type] Argument to bound method `_add_converter` is incorrect: Expected `(str, /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any] | Any`, found `object`
- Found 129 diagnostics
+ Found 134 diagnostics

discord.py (https://github.com/Rapptz/discord.py)
- discord/app_commands/commands.py:149:92: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:149:92: error[invalid-type-form] `...` is not allowed in this context in a type expression
+ discord/app_commands/commands.py:683:28: error[unresolved-attribute] Object of type `((GroupT@Command, Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__self__`
+ discord/app_commands/commands.py:684:41: error[unresolved-attribute] Object of type `((GroupT@Command, Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__func__`
+ discord/app_commands/commands.py:684:41: error[unresolved-attribute] Object of type `((GroupT@Command, Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__func__`
+ discord/app_commands/commands.py:688:97: error[unresolved-attribute] Attribute `__globals__` is not defined on `(GroupT@Command, Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]`, `(Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]` in union `((GroupT@Command, Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Interaction[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | Unknown`
- discord/app_commands/commands.py:657:43: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:675:49: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:683:28: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__self__`
- discord/app_commands/commands.py:684:41: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__func__`
- discord/app_commands/commands.py:684:41: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__func__`
- discord/app_commands/commands.py:688:97: error[unresolved-attribute] Attribute `__globals__` is not defined on `(...) -> Coroutine[Any, Any, Unknown]` in union `((...) -> Coroutine[Any, Any, Unknown]) | Unknown`
- discord/app_commands/commands.py:726:51: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:858:83: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- discord/app_commands/commands.py:859:65: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
+ discord/app_commands/commands.py:2005:55: error[unresolved-attribute] Object of type `((GroupT@decorator, Interaction[Any], /, *args: P@decorator.args, **kwargs: P@decorator.kwargs) -> Coroutine[Any, Any, T@decorator]) | ((Interaction[Any], /, *args: P@decorator.args, **kwargs: P@decorator.kwargs) -> Coroutine[Any, Any, T@decorator])` has no attribute `__name__`
+ discord/app_commands/commands.py:2066:51: error[unresolved-attribute] Object of type `((GroupT@decorator, Interaction[Any], /, *args: P@decorator.args, **kwargs: P@decorator.kwargs) -> Coroutine[Any, Any, T@decorator]) | ((Interaction[Any], /, *args: P@decorator.args, **kwargs: P@decorator.kwargs) -> Coroutine[Any, Any, T@decorator])` has no attribute `__name__`
- discord/app_commands/commands.py:1967:44: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:1992:53: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:2005:55: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__name__`
- discord/app_commands/commands.py:2026:40: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:2053:49: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/commands.py:2066:51: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__name__`
- discord/app_commands/errors.py:453:95: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__qualname__`
+ discord/app_commands/errors.py:453:95: error[unresolved-attribute] Object of type `Top[(...) -> Coroutine[Any, Any, object]]` has no attribute `__qualname__`
+ discord/app_commands/tree.py:923:55: error[unresolved-attribute] Object of type `((Group, Interaction[Any], /, *args: P@decorator.args, **kwargs: P@decorator.kwargs) -> Coroutine[Any, Any, T@decorator]) | ((Interaction[Any], /, *args: P@decorator.args, **kwargs: P@decorator.kwargs) -> Coroutine[Any, Any, T@decorator])` has no attribute `__name__`
- discord/app_commands/tree.py:862:43: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/tree.py:910:52: error[invalid-type-arguments] Too many type arguments: expected 1, got 3
- discord/app_commands/tree.py:923:55: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Unknown]` has no attribute `__name__`
- discord/ext/commands/bot.py:296:41: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/bot.py:306:50: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/bot.py:320:41: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/bot.py:330:50: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/cog.py:335:27: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, Any]` has no attribute `__name__`
+ discord/ext/commands/cog.py:335:27: error[unresolved-attribute] Object of type `((Self@__new__, Context[Any], /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any]) | ((Context[Any], /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, Any])` has no attribute `__name__`
- discord/ext/commands/core.py:433:38: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@Command]` has no attribute `__name__`
- discord/ext/commands/core.py:462:22: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@Command]` has no attribute `__commands_checks__`
- discord/ext/commands/core.py:470:24: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@Command]` has no attribute `__commands_cooldown__`
- discord/ext/commands/core.py:483:31: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@Command]` has no attribute `__commands_max_concurrency__`
- discord/ext/commands/core.py:500:29: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@Command]` has no attribute `__before_invoke__`
- discord/ext/commands/core.py:508:28: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@Command]` has no attribute `__after_invoke__`
+ discord/ext/commands/core.py:433:38: error[unresolved-attribute] Object of type `((CogT@Command, Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__name__`
+ discord/ext/commands/core.py:462:22: error[unresolved-attribute] Object of type `((CogT@Command, Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__commands_checks__`
+ discord/ext/commands/core.py:470:24: error[unresolved-attribute] Object of type `((CogT@Command, Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__commands_cooldown__`
+ discord/ext/commands/core.py:483:31: error[unresolved-attribute] Object of type `((CogT@Command, Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__commands_max_concurrency__`
+ discord/ext/commands/core.py:500:29: error[unresolved-attribute] Object of type `((CogT@Command, Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__before_invoke__`
+ discord/ext/commands/core.py:508:28: error[unresolved-attribute] Object of type `((CogT@Command, Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command]) | ((Context[Any], /, *args: P@Command.args, **kwargs: P@Command.kwargs) -> Coroutine[Any, Any, T@Command])` has no attribute `__after_invoke__`
- discord/ext/commands/core.py:623:77: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- discord/ext/commands/core.py:625:67: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- discord/ext/commands/core.py:1063:71: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- discord/ext/commands/core.py:1673:75: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
- discord/ext/commands/core.py:1949:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: Command[Any, (...), Any] | ((...) -> Coroutine[Any, Any, Any])) -> Command[Any, (...), Any] | ((...) -> Coroutine[Any, Any, Any])`
+ discord/ext/commands/core.py:1949:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: (...) -> Coroutine[Any, Any, Any]) -> ((...) -> Coroutine[Any, Any, Any])`
- discord/ext/commands/core.py:1956:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: Command[Any, (...), Any] | ((...) -> Coroutine[Any, Any, Any])) -> Command[Any, (...), Any] | ((...) -> Coroutine[Any, Any, Any])`
+ discord/ext/commands/core.py:1956:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: (...) -> Coroutine[Any, Any, Any]) -> ((...) -> Coroutine[Any, Any, Any])`
- discord/ext/commands/core.py:2373:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])) -> Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])`
- discord/ext/commands/core.py:2380:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])) -> Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])`
+ discord/ext/commands/core.py:2373:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: (...) -> Coroutine[Any, Any, Any]) -> ((...) -> Coroutine[Any, Any, Any])`
+ discord/ext/commands/core.py:2380:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: (...) -> Coroutine[Any, Any, Any]) -> ((...) -> Coroutine[Any, Any, Any])`
- discord/ext/commands/core.py:2448:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])) -> Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])`
- discord/ext/commands/core.py:2455:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])) -> Command[Unknown, (...), Unknown] | ((...) -> Coroutine[Any, Any, Any])`
+ discord/ext/commands/core.py:2448:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: (...) -> Coroutine[Any, Any, Any]) -> ((...) -> Coroutine[Any, Any, Any])`
+ discord/ext/commands/core.py:2455:9: error[unresolved-attribute] Unresolved attribute `predicate` on type `def decorator(func: (...) -> Coroutine[Any, Any, Any]) -> ((...) -> Coroutine[Any, Any, Any])`
- discord/ext/commands/hybrid.py:328:9: error[unresolved-attribute] Unresolved attribute `__signature__` on type `(...) -> Coroutine[Any, Any, T@HybridAppCommand]`
+ discord/ext/commands/hybrid.py:328:9: error[invalid-assignment] Object of type `Signature` is not assignable to attribute `__signature__` on type `((CogT@HybridAppCommand, Context[Any], /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, T@HybridAppCommand]) | ((Context[Any], /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, T@HybridAppCommand])`
- discord/ext/commands/hybrid.py:338:17: error[unresolved-attribute] Object of type `(...) -> Coroutine[Any, Any, T@HybridAppCommand]` has no attribute `__signature__`
+ discord/ext/commands/hybrid.py:338:17: error[unresolved-attribute] Object of type `((CogT@HybridAppCommand, Context[Any], /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, T@HybridAppCommand]) | ((Context[Any], /, *args: Any, **kwargs: Any) -> Coroutine[Any, Any, T@HybridAppCommand])` has no attribute `__signature__`
- discord/ext/commands/hybrid.py:512:37: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:850:42: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:860:51: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:874:42: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:884:51: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:898:38: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:936:47: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:950:38: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- discord/ext/commands/hybrid.py:970:47: error[invalid-type-arguments] Too many type arguments: expected 1, got 4
- Found 558 diagnostics
+ Found 528 diagnostics

mkdocs (https://github.com/mkdocs/mkdocs)
- mkdocs/plugins.py:490:32: error[unresolved-attribute] Attribute `__get__` is not defined on `(...) -> T@CombinedEvent` in union `Unknown | ((...) -> T@CombinedEvent)`
+ mkdocs/plugins.py:490:32: error[unresolved-attribute] Attribute `__get__` is not defined on `(Any, /, *args: P@CombinedEvent.args, **kwargs: P@CombinedEvent.kwargs) -> T@CombinedEvent` in union `Unknown | ((Any, /, *args: P@CombinedEvent.args, **kwargs: P@CombinedEvent.kwargs) -> T@CombinedEvent)`

trio (https://github.com/python-trio/trio)
- src/trio/_path.py:107:48: error[unresolved-attribute] Object of type `(...) -> Iterable[Path]` has no attribute `__name__`
+ src/trio/_path.py:107:48: error[unresolved-attribute] Object of type `(Path, /, *args: P@_wrap_method_path_iterable.args, **kwargs: P@_wrap_method_path_iterable.kwargs) -> Iterable[Path]` has no attribute `__name__`
- src/trio/_socket.py:442:54: error[unresolved-attribute] Object of type `(...) -> T@_make_simple_sock_method_wrapper` has no attribute `__name__`
+ src/trio/_socket.py:442:54: error[unresolved-attribute] Object of type `(socket, /, *args: P@_make_simple_sock_method_wrapper.args, **kwargs: P@_make_simple_sock_method_wrapper.kwargs) -> T@_make_simple_sock_method_wrapper` has no attribute `__name__`
- src/trio/_socket.py:447:71: error[unresolved-attribute] Object of type `(...) -> T@_make_simple_sock_method_wrapper` has no attribute `__name__`
+ src/trio/_socket.py:447:71: error[unresolved-attribute] Object of type `(socket, /, *args: P@_make_simple_sock_method_wrapper.args, **kwargs: P@_make_simple_sock_method_wrapper.kwargs) -> T@_make_simple_sock_method_wrapper` has no attribute `__name__`
+ src/trio/_socket.py:1034:28: error[missing-argument] No argument provided for required parameter 1
- src/trio/_socket.py:1123:12: error[invalid-assignment] Object of type `(...) -> Awaitable[bytes]` is not assignable to `def recv(self, buflen: int, flags: int = 0, /) -> Awaitable[bytes]`
+ src/trio/_socket.py:1123:12: error[invalid-assignment] Object of type `(_SocketType, bufsize: int, flags: int = 0, /) -> Awaitable[bytes]` is not assignable to `def recv(self, buflen: int, flags: int = 0, /) -> Awaitable[bytes]`
- src/trio/_socket.py:1142:17: error[invalid-assignment] Object of type `(...) -> Awaitable[int]` is not assignable to `def recv_into(self, /, buffer: Buffer, nbytes: int = 0, flags: int = 0) -> Awaitable[int]`
+ src/trio/_socket.py:1142:17: error[invalid-assignment] Object of type `(_SocketType, /, buffer: Buffer, nbytes: int = 0, flags: int = 0) -> Awaitable[int]` is not assignable to `def recv_into(self, /, buffer: Buffer, nbytes: int = 0, flags: int = 0) -> Awaitable[int]`
- src/trio/_socket.py:1160:16: error[invalid-assignment] Object of type `(...) -> Awaitable[tuple[bytes, Any]]` is not assignable to `def recvfrom(self, bufsize: int, flags: int = 0, /) -> Awaitable[tuple[bytes, Any]]`
+ src/trio/_socket.py:1160:16: error[invalid-assignment] Object of type `(_SocketType, bufsize: int, flags: int = 0, /) -> Awaitable[tuple[bytes, Any]]` is not assignable to `def recvfrom(self, bufsize: int, flags: int = 0, /) -> Awaitable[tuple[bytes, Any]]`
- src/trio/_socket.py:1179:21: error[invalid-assignment] Object of type `(...) -> Awaitable[tuple[int, Any]]` is not assignable to `def recvfrom_into(self, /, buffer: Buffer, nbytes: int = 0, flags: int = 0) -> Awaitable[tuple[int, Any]]`
+ src/trio/_socket.py:1179:21: error[invalid-assignment] Object of type `(_SocketType, /, buffer: Buffer, nbytes: int = 0, flags: int = 0) -> Awaitable[tuple[int, Any]]` is not assignable to `def recvfrom_into(self, /, buffer: Buffer, nbytes: int = 0, flags: int = 0) -> Awaitable[tuple[int, Any]]`
- src/trio/_socket.py:1201:19: error[invalid-assignment] Object of type `(...) -> Awaitable[tuple[bytes, list[tuple[int, int, bytes]], int, Any]]` is not assignable to `def recvmsg(self, bufsize: int, ancbufsize: int = 0, flags: int = 0, /) -> Awaitable[tuple[bytes, list[tuple[int, int, bytes]], int, object]]`
+ src/trio/_socket.py:1201:19: error[invalid-assignment] Object of type `(_SocketType, bufsize: int, ancbufsize: int = 0, flags: int = 0, /) -> Awaitable[tuple[bytes, list[tuple[int, int, bytes]], int, Any]]` is not assignable to `def recvmsg(self, bufsize: int, ancbufsize: int = 0, flags: int = 0, /) -> Awaitable[tuple[bytes, list[tuple[int, int, bytes]], int, object]]`
- src/trio/_socket.py:1224:24: error[invalid-assignment] Object of type `(...) -> Awaitable[tuple[int, list[tuple[int, int, bytes]], int, Any]]` is not assignable to `def recvmsg_into(self, buffers: Iterable[Buffer], ancbufsize: int = 0, flags: int = 0, /) -> Awaitable[tuple[int, list[tuple[int, int, bytes]], int, object]]`
+ src/trio/_socket.py:1224:24: error[invalid-assignment] Object of type `(_SocketType, buffers: Iterable[Buffer], ancbufsize: int = 0, flags: int = 0, /) -> Awaitable[tuple[int, list[tuple[int, int, bytes]], int, Any]]` is not assignable 

... (truncated 795 lines) ...

@astral-sh-bot
Copy link

astral-sh-bot bot commented Mar 3, 2026

Memory usage report

Summary

Project Old New Diff Outcome
prefect 701.45MB 701.48MB +0.00% (22.26kB)
sphinx 265.18MB 265.19MB +0.00% (3.15kB)
trio 117.80MB 117.80MB +0.00% (2.29kB)
flake8 47.90MB 47.90MB -0.00% (20.00B) ⬇️

Significant changes

Click to expand detailed breakdown

prefect

Name Old New Diff Outcome
CallableType 1.89MB 1.90MB +0.55% (10.62kB)
Type<'db>::apply_specialization_ 3.57MB 3.58MB +0.24% (8.76kB)
infer_definition_types 88.39MB 88.39MB +0.00% (2.40kB)
GenericContext 292.58kB 290.34kB -0.77% (2.24kB)
TupleType 690.12kB 688.45kB -0.24% (1.67kB)
FunctionType<'db>::last_definition_raw_signature_ 3.22MB 3.22MB -0.03% (1.09kB)
TypeVarInstance 399.66kB 398.62kB -0.26% (1.03kB)
is_redundant_with_impl::interned_arguments 5.34MB 5.34MB +0.02% (880.00B)
Type<'db>::class_member_with_policy_ 17.21MB 17.21MB +0.00% (728.00B)
BoundTypeVarInstance 1.34MB 1.34MB -0.05% (720.00B)
FunctionType<'db>::signature_ 3.86MB 3.86MB +0.02% (688.00B)
FunctionType 8.44MB 8.44MB +0.01% (656.00B)
StaticClassLiteral<'db>::try_mro_ 6.02MB 6.03MB +0.01% (580.00B)
Type<'db>::try_call_dunder_get_ 10.43MB 10.43MB +0.00% (532.00B)
Type<'db>::class_member_with_policy_::interned_arguments 9.31MB 9.31MB +0.01% (520.00B)
... 26 more

sphinx

Name Old New Diff Outcome
CallableType 1.08MB 1.08MB +0.09% (1008.00B)
Type<'db>::apply_specialization_ 1.66MB 1.66MB +0.05% (848.00B)
check_file_impl 5.13MB 5.13MB +0.02% (824.00B)
is_redundant_with_impl::interned_arguments 2.06MB 2.06MB -0.02% (528.00B)
infer_deferred_types 5.60MB 5.60MB +0.01% (456.00B)
IntersectionType 893.35kB 892.96kB -0.04% (400.00B)
Type<'db>::apply_specialization_::interned_arguments 1.45MB 1.45MB +0.02% (320.00B)
Specialization 1.02MB 1.02MB +0.03% (304.00B)
is_redundant_with_impl 1.80MB 1.80MB -0.02% (288.00B)
GenericContext 137.48kB 137.76kB +0.20% (280.00B)
Type<'db>::member_lookup_with_policy_ 6.10MB 6.10MB -0.00% (216.00B)
inferable_typevars_inner 81.07kB 81.27kB +0.26% (212.00B)
infer_expression_types_impl 21.50MB 21.50MB +0.00% (192.00B)
FunctionType<'db>::last_definition_signature_ 213.65kB 213.72kB +0.03% (72.00B)
GenericAlias 451.48kB 451.55kB +0.02% (72.00B)
... 1 more

trio

Name Old New Diff Outcome
CallableType 572.79kB 573.63kB +0.15% (864.00B)
Type<'db>::apply_specialization_ 737.55kB 738.12kB +0.08% (588.00B)
infer_deferred_types 2.37MB 2.37MB +0.02% (456.00B)
infer_expression_types_impl 7.06MB 7.06MB +0.00% (216.00B)
GenericContext 126.88kB 126.96kB +0.06% (84.00B)
FunctionType<'db>::signature_ 1.07MB 1.07MB +0.01% (72.00B)
BoundMethodType<'db>::into_callable_type_ 75.29kB 75.34kB +0.06% (48.00B)
check_file_impl 1.94MB 1.94MB -0.00% (48.00B)
FunctionType<'db>::last_definition_signature_ 241.62kB 241.66kB +0.01% (36.00B)
ClassType<'db>::into_callable_ 7.63kB 7.65kB +0.31% (24.00B)

flake8

Name Old New Diff Outcome
check_file_impl 344.70kB 344.68kB -0.01% (20.00B) ⬇️

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.

Support Concatenate special form

2 participants