Skip to content

[ty] Improve diagnostics for subscriptions of non-generic types#23516

Merged
AlexWaygood merged 1 commit intomainfrom
alex/tvar-spec-diags-rebased
Feb 24, 2026
Merged

[ty] Improve diagnostics for subscriptions of non-generic types#23516
AlexWaygood merged 1 commit intomainfrom
alex/tvar-spec-diags-rebased

Conversation

@AlexWaygood
Copy link
Member

@AlexWaygood AlexWaygood commented Feb 23, 2026

Summary

This PR contains some minor followups to #21840 to improve our diagnostics in a few places. I've had this patch hanging around locally for a while and can't remember exactly what I had thought there still was to do on it anymore... I think these are still worthwhile improvements, anyway!

Test Plan

Snapshots

@AlexWaygood AlexWaygood added ty Multi-file analysis & type inference diagnostics Related to reporting of diagnostics. labels Feb 23, 2026
@astral-sh-bot
Copy link

astral-sh-bot bot commented Feb 23, 2026

Typing conformance results

No changes detected ✅

@astral-sh-bot
Copy link

astral-sh-bot bot commented Feb 23, 2026

mypy_primer results

Changes were detected when running on open source projects
spack (https://github.com/spack/spack)
- lib/spack/spack/detection/path.py:169:33: error[invalid-argument-type] Argument to function `dedupe_paths` is incorrect: Expected `list[str]`, found `Unknown | list[str | Unknown | int | ... omitted 3 union elements]`
+ lib/spack/spack/detection/path.py:169:33: error[invalid-argument-type] Argument to function `dedupe_paths` is incorrect: Expected `list[str]`, found `Unknown | list[str | bytes | PathLike[str] | ... omitted 3 union elements]`

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 `Top[dict[Unknown, Unknown]] | (((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 `Top[dict[Unknown, Unknown]] | (((dict[str, Divergent], /) -> None) & ~Top[dict[Unknown, Unknown]]) | None`

artigraph (https://github.com/artigraph/artigraph)
- tests/arti/types/test_types.py:100:51: error[invalid-argument-type] Argument is incorrect: Expected `frozenset[Any]`, found `frozenset[float | Unknown | int] | list[Unknown | int | float] | tuple[float | Unknown | int, ...]`
+ tests/arti/types/test_types.py:100:51: error[invalid-argument-type] Argument is incorrect: Expected `frozenset[Any]`, found `frozenset[Unknown | int | float] | list[Unknown | int | float] | tuple[Unknown | int | float, ...]`

Expression (https://github.com/cognitedata/Expression)
- tests/test_compose.py:21:16: error[invalid-assignment] Object of type `(Never, /) -> Never` is not assignable to `(int, /) -> int`
- Found 205 diagnostics
+ Found 204 diagnostics

koda-validate (https://github.com/keithasaurus/koda-validate)
- koda_validate/dictionary.py:294:21: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:294:21: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:309:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:309:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:310:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:310:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:326:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:326:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:327:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:327:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:328:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:328:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:344:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:344:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:345:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:345:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:346:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:346:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:347:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:347:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:363:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:363:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:364:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:364:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:365:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:365:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:366:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:366:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:367:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:367:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:383:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:383:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:384:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:384:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:385:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:385:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:386:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:386:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:387:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:387:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:388:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:388:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:404:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:404:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:405:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:405:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:406:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:406:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:407:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:407:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:408:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:408:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:409:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:409:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:410:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:410:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:426:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:426:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:427:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:427:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:428:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:428:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:429:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:429:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:430:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:430:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:431:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:431:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:432:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:432:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:433:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:433:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:449:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:449:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:450:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:450:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:451:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:451:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:452:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:452:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:453:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:453:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:454:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:454:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:455:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:455:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:456:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:456:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:457:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:457:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:473:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:473:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:474:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:474:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:475:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:475:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:476:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:476:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:477:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:477:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:478:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:478:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:479:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:479:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:480:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:480:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:481:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:481:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:482:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:482:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:498:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:498:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:499:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:499:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:500:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:500:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:501:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:501:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:502:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:502:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:503:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:503:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:504:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:504:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:505:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:505:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:506:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:506:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:507:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:507:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:508:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:508:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:524:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:524:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:525:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:525:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:526:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:526:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:527:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:527:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:528:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:528:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:529:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:529:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:530:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:530:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:531:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:531:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:532:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:532:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:533:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:533:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:534:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:534:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:535:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:535:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:551:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:551:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:552:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:552:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:553:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:553:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:554:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:554:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:555:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:555:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:556:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:556:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:557:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:557:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:558:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:558:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:559:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:559:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:560:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:560:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:561:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:561:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:562:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:562:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:563:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:563:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:581:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:581:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:582:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:582:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:583:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:583:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:584:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:584:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:585:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:585:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:586:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:586:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:587:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:587:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:588:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:588:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:589:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:589:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:590:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:590:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:591:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:591:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:592:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:592:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:593:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:593:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:594:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:594:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:612:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:612:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:613:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:613:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:614:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:614:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:615:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:615:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:616:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:616:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:617:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:617:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:618:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:618:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:619:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:619:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:620:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:620:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:621:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:621:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:622:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:622:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:623:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:623:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:624:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:624:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:625:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:625:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:626:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:626:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:644:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:644:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:645:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:645:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:646:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:646:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:647:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:647:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:648:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:648:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:649:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:649:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:650:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:650:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:651:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:651:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:652:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:652:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:653:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:653:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:654:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:654:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:655:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:655:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:656:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:656:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:657:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:657:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:658:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:658:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:659:13: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:659:13: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:695:19: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:695:19: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:696:19: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:696:19: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:696:37: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:696:37: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:697:19: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:697:19: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:697:37: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:697:37: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:697:55: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:697:55: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:698:19: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:698:19: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:698:37: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:698:37: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:698:55: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:698:55: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:698:73: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:698:73: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:700:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:700:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:701:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:701:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:702:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:702:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:703:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:703:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:704:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:704:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:707:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:707:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:708:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:708:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:709:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:709:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:710:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:710:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:711:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:711:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:712:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:712:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:715:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:715:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:716:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:716:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:717:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:717:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:718:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:718:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:719:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:719:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:720:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:720:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:721:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:721:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:724:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:724:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:725:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:725:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:726:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:726:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:727:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:727:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:728:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>` is already specialized
+ koda_validate/dictionary.py:728:17: error[not-subscriptable] Cannot subscript non-generic type `<class 'tuple[Hashable, Validator[A@KeyValidator]]'>`
- koda_validate/dictionary.py:729:17: error[not-subscriptable] Cannot subscript non-generic type: `<class 'tuple[Hashable, Validator[A@KeyValidator]

... (truncated 784 lines) ...

@astral-sh-bot
Copy link

astral-sh-bot bot commented Feb 23, 2026

Memory usage report

Memory usage unchanged ✅

@astral-sh-bot
Copy link

astral-sh-bot bot commented Feb 23, 2026

ecosystem-analyzer results

Lint rule Added Removed Changed
not-subscriptable 0 0 462
unsupported-operator 87 0 0
invalid-await 40 0 0
unresolved-attribute 5 0 0
invalid-argument-type 2 0 0
invalid-return-type 1 0 0
Total 135 0 462

Full report with detailed diff (timing results)

@AlexWaygood AlexWaygood marked this pull request as ready for review February 23, 2026 14:19
Copy link
Contributor

@sharkdp sharkdp left a comment

Choose a reason for hiding this comment

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

Cool, thank you!

@AlexWaygood AlexWaygood merged commit 8dab7e4 into main Feb 24, 2026
53 checks passed
@AlexWaygood AlexWaygood deleted the alex/tvar-spec-diags-rebased branch February 24, 2026 10:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

diagnostics Related to reporting of diagnostics. ecosystem-analyzer ty Multi-file analysis & type inference

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants