Skip to content

Use equivalence in assert_type#2702

Closed
rchen152 wants to merge 2 commits intofacebook:mainfrom
rchen152:export-D95641740
Closed

Use equivalence in assert_type#2702
rchen152 wants to merge 2 commits intofacebook:mainfrom
rchen152:export-D95641740

Conversation

@rchen152
Copy link
Contributor

@rchen152 rchen152 commented Mar 7, 2026

Summary:
Changes assert_type to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

The test changes are because we no longer normalize Unknown to Any.

Differential Revision: D95641740

@meta-cla meta-cla bot added the cla signed label Mar 7, 2026
@meta-codesync
Copy link

meta-codesync bot commented Mar 7, 2026

@rchen152 has exported this pull request. If you are a Meta employee, you can view the originating Diff in D95641740.

rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 7, 2026
Summary:

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

The test changes are because we no longer normalize `Unknown` to `Any`.

Differential Revision: D95641740
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 7, 2026
Summary:

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Differential Revision: D95641740
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 7, 2026
Summary:
Pull Request resolved: facebook#2702

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Differential Revision: D95641740
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 7, 2026
Summary:
Pull Request resolved: facebook#2702

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Differential Revision: D95641740
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

Copy link
Contributor

@fangyi-zhou fangyi-zhou left a comment

Choose a reason for hiding this comment

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

Review automatically exported from Phabricator review in Meta.

rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 8, 2026
Summary:

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 8, 2026
Summary:
Pull Request resolved: facebook#2702

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 9, 2026
Summary:

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 9, 2026
Summary:
Pull Request resolved: facebook#2702

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

Summary: The spec says that `type` distributes over unions: https://typing.python.org/en/latest/spec/special-types.html#type, which we weren't doing in some cases.

Differential Revision: D95638889
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 9, 2026
Summary:

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
rchen152 added a commit to rchen152/pyrefly that referenced this pull request Mar 9, 2026
Summary:
Pull Request resolved: facebook#2702

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
Summary:
Pull Request resolved: facebook#2702

Changes `assert_type` to check for equivalence between types instead of normalizing types and and checking for equality. This is both more spec-compliant and simpler.

Most of the test changes are because we no longer normalize `Unknown` to `Any`. Looks like we also recognize some more types as equivalent that we previously thought were different, in numpy.

Reviewed By: fangyi-zhou

Differential Revision: D95641740
@github-actions
Copy link

github-actions bot commented Mar 9, 2026

Diff from mypy_primer, showing the effect of this PR on open source code:

urllib3 (https://github.com/urllib3/urllib3)
- ERROR test/test_connectionpool.py:53:21-39: `type[HTTPUnixConnection]` is not assignable to attribute `ConnectionCls` with type `type[BaseHTTPConnection] | type[BaseHTTPSConnection]` [bad-assignment]
+ ERROR test/test_connectionpool.py:53:21-39: `type[HTTPUnixConnection]` is not assignable to attribute `ConnectionCls` with type `type[BaseHTTPConnection | BaseHTTPSConnection]` [bad-assignment]
- ERROR src/urllib3/connectionpool.py:173:75-89: `type[HTTPConnection]` is not assignable to `type[BaseHTTPConnection] | type[BaseHTTPSConnection]` [bad-assignment]
+ ERROR src/urllib3/connectionpool.py:173:75-89: `type[HTTPConnection]` is not assignable to `type[BaseHTTPConnection | BaseHTTPSConnection]` [bad-assignment]
- ERROR src/urllib3/contrib/socks.py:166:21-36: `type[SOCKSConnection]` is not assignable to attribute `ConnectionCls` with type `type[BaseHTTPConnection] | type[BaseHTTPSConnection]` [bad-assignment]
+ ERROR src/urllib3/contrib/socks.py:166:21-36: `type[SOCKSConnection]` is not assignable to attribute `ConnectionCls` with type `type[BaseHTTPConnection | BaseHTTPSConnection]` [bad-assignment]

xarray (https://github.com/pydata/xarray)
- ERROR xarray/tests/test_indexes.py:409:43-55: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object] | type[str]` of type variable `S1` [bad-specialization]
+ ERROR xarray/tests/test_indexes.py:409:43-55: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object | str]` of type variable `S1` [bad-specialization]
- ERROR xarray/tests/test_indexes.py:410:43-54: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object] | type[str]` of type variable `S1` [bad-specialization]
+ ERROR xarray/tests/test_indexes.py:410:43-54: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object | str]` of type variable `S1` [bad-specialization]
- ERROR xarray/tests/test_indexes.py:434:43-55: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object] | type[str]` of type variable `S1` [bad-specialization]
+ ERROR xarray/tests/test_indexes.py:434:43-55: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object | str]` of type variable `S1` [bad-specialization]
- ERROR xarray/tests/test_indexes.py:435:43-54: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object] | type[str]` of type variable `S1` [bad-specialization]
+ ERROR xarray/tests/test_indexes.py:435:43-54: `_NestedSequence[bytes | complex | str] | bytes | complex | str` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object | str]` of type variable `S1` [bad-specialization]

pydantic (https://github.com/pydantic/pydantic)
- ERROR pydantic/_internal/_generate_schema.py:137:27-48: `list[type[Tuple] | type[Any]]` is not assignable to `list[type[Any]]` [bad-assignment]
- ERROR pydantic/_internal/_generate_schema.py:145:26-45: `list[type[Type] | type[Any]]` is not assignable to `list[type[Any]]` [bad-assignment]

comtypes (https://github.com/enthought/comtypes)
- ERROR comtypes/test/test_util.py:31:33-47: Argument `type[_Pointer[c_char]] | type[_Pointer[c_double]] | type[_Pointer[c_int]]` is not assignable to parameter `typ` with type `type[_Pointer[c_char]]` in function `ctypes.cast` [bad-argument-type]
+ ERROR comtypes/test/test_util.py:31:33-47: Argument `type[_Pointer[c_char] | _Pointer[c_double] | _Pointer[c_int]]` is not assignable to parameter `typ` with type `type[_Pointer[c_char]]` in function `ctypes.cast` [bad-argument-type]
- ERROR comtypes/test/test_util.py:65:33-47: Argument `type[_Pointer[c_char]] | type[_Pointer[c_double]] | type[_Pointer[c_int]]` is not assignable to parameter `typ` with type `type[_Pointer[c_char]]` in function `ctypes.cast` [bad-argument-type]
+ ERROR comtypes/test/test_util.py:65:33-47: Argument `type[_Pointer[c_char] | _Pointer[c_double] | _Pointer[c_int]]` is not assignable to parameter `typ` with type `type[_Pointer[c_char]]` in function `ctypes.cast` [bad-argument-type]

hydpy (https://github.com/hydpy-dev/hydpy)
- ERROR hydpy/tests/plugin/check_submodeladder_hooks.py:24:24-55: assert_type(Any, Model) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_submodeladder_hooks.py:24:24-55: assert_type(Unknown, Model) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:31:16-83: assert_type(SubParameters[Any], ControlParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:31:16-83: assert_type(SubParameters[Unknown], ControlParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:32:16-83: assert_type(SubParameters[Any], ControlParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:32:16-83: assert_type(SubParameters[Unknown], ControlParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:35:16-81: assert_type(SubParameters[Any], DerivedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:35:16-81: assert_type(SubParameters[Unknown], DerivedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:36:16-81: assert_type(SubParameters[Any], DerivedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:36:16-81: assert_type(SubParameters[Unknown], DerivedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:39:16-79: assert_type(SubParameters[Any], FixedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:39:16-79: assert_type(SubParameters[Unknown], FixedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:40:16-79: assert_type(SubParameters[Any], FixedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:40:16-79: assert_type(SubParameters[Unknown], FixedParameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:43:16-87: assert_type(SubParameters[Any], SolverParameters[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:43:16-87: assert_type(SubParameters[Unknown], SolverParameters[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:44:16-87: assert_type(SubParameters[Any], SolverParameters[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:44:16-87: assert_type(SubParameters[Unknown], SolverParameters[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:48:16-76: assert_type(InputSequences[Any], InputSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:48:16-76: assert_type(InputSequences[Unknown], InputSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:49:16-76: assert_type(InputSequences[Any], InputSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:49:16-76: assert_type(InputSequences[Unknown], InputSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:52:16-78: assert_type(FactorSequences[Any], FactorSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:52:16-78: assert_type(FactorSequences[Unknown], FactorSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:53:16-78: assert_type(FactorSequences[Any], FactorSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:53:16-78: assert_type(FactorSequences[Unknown], FactorSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:56:16-76: assert_type(FluxSequences[Any], FluxSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:56:16-76: assert_type(FluxSequences[Unknown], FluxSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:57:16-76: assert_type(FluxSequences[Any], FluxSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:57:16-76: assert_type(FluxSequences[Unknown], FluxSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:60:16-77: assert_type(StateSequences[Any], StateSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:60:16-77: assert_type(StateSequences[Unknown], StateSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:61:16-77: assert_type(StateSequences[Any], StateSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:61:16-77: assert_type(StateSequences[Unknown], StateSequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:64:16-84: assert_type(LogSequences[Any], LogSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:64:16-84: assert_type(LogSequences[Unknown], LogSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:65:16-84: assert_type(LogSequences[Any], LogSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:65:16-84: assert_type(LogSequences[Unknown], LogSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:68:16-74: assert_type(InletSequences[Any], InletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:68:16-74: assert_type(InletSequences[Unknown], InletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:69:16-74: assert_type(InletSequences[Any], InletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:69:16-74: assert_type(InletSequences[Unknown], InletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:72:16-76: assert_type(OutletSequences[Any], OutletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:72:16-76: assert_type(OutletSequences[Unknown], OutletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:73:16-76: assert_type(OutletSequences[Any], OutletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:73:16-76: assert_type(OutletSequences[Unknown], OutletSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:76:16-77: assert_type(ReceiverSequences[Any], ReceiverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:76:16-77: assert_type(ReceiverSequences[Unknown], ReceiverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:77:16-77: assert_type(ReceiverSequences[Any], ReceiverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:77:16-77: assert_type(ReceiverSequences[Unknown], ReceiverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:80:16-77: assert_type(ObserverSequences[Any], ObserverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:80:16-77: assert_type(ObserverSequences[Unknown], ObserverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:81:16-77: assert_type(ObserverSequences[Any], ObserverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:81:16-77: assert_type(ObserverSequences[Unknown], ObserverSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:84:16-75: assert_type(SenderSequences[Any], SenderSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:84:16-75: assert_type(SenderSequences[Unknown], SenderSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_subvariables_hook2.py:85:16-75: assert_type(SenderSequences[Any], SenderSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_subvariables_hook2.py:85:16-75: assert_type(SenderSequences[Unknown], SenderSequences[hydpy.models.dam.dam_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook1.py:14:16-76: assert_type(Parameters[Any], Parameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook1.py:14:16-76: assert_type(Parameters[Unknown], Parameters[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook1.py:15:16-75: assert_type(Parameters[Any], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook1.py:15:16-75: assert_type(Parameters[Unknown], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook1.py:16:16-73: assert_type(Sequences[Any], Sequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook1.py:16:16-73: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland.hland_model.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook1.py:17:16-72: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook1.py:17:16-72: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:13:16-33: assert_type(Parameters[Any], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:13:16-33: assert_type(Parameters[Unknown], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:18:16-33: assert_type(Parameters[Any], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:18:16-33: assert_type(Parameters[Unknown], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:23:16-31: assert_type(Parameters[Any], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:23:16-31: assert_type(Parameters[Unknown], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:28:16-32: assert_type(Parameters[Any], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:28:16-32: assert_type(Parameters[Unknown], Parameters[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:35:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:35:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:36:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:36:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:40:16-33: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:40:16-33: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:41:16-33: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:41:16-33: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:45:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:45:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:46:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:46:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:50:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:50:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:51:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:51:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:55:16-30: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:55:16-30: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:59:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:59:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:60:16-32: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:60:16-32: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:64:16-33: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:64:16-33: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:65:16-33: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:65:16-33: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:69:16-35: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:69:16-35: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:70:16-35: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:70:16-35: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:74:16-35: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:74:16-35: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:75:16-35: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:75:16-35: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:79:16-33: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:79:16-33: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
- ERROR hydpy/tests/plugin/check_variables_hook2.py:80:16-33: assert_type(Sequences[Any], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]
+ ERROR hydpy/tests/plugin/check_variables_hook2.py:80:16-33: assert_type(Sequences[Unknown], Sequences[hydpy.models.hland_96.Model]) failed [assert-type]

prefect (https://github.com/PrefectHQ/prefect)
- ERROR src/prefect/flow_runs.py:251:26-70: `type[AutomaticRunInput[@_]] | type[T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
+ ERROR src/prefect/flow_runs.py:251:26-70: `type[AutomaticRunInput[@_] | T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
- ERROR src/prefect/flow_runs.py:405:26-70: `type[AutomaticRunInput[@_]] | type[T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
+ ERROR src/prefect/flow_runs.py:405:26-70: `type[AutomaticRunInput[@_] | T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
- ERROR src/prefect/flow_runs.py:557:26-70: `type[AutomaticRunInput[@_]] | type[T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
+ ERROR src/prefect/flow_runs.py:557:26-70: `type[AutomaticRunInput[@_] | T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
- ERROR src/prefect/flow_runs.py:682:26-70: `type[AutomaticRunInput[@_]] | type[T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
+ ERROR src/prefect/flow_runs.py:682:26-70: `type[AutomaticRunInput[@_] | T]` is not assignable to variable `wait_for_input` with type `type[T] | None` [bad-assignment]
- ERROR src/prefect/input/run_input.py:772:51-774:10: `type[AutomaticRunInput[Any]] | type[BaseModel]` is not assignable to `type[AutomaticRunInput[Any]]` [bad-assignment]
+ ERROR src/prefect/input/run_input.py:772:51-774:10: `type[AutomaticRunInput[Any] | BaseModel]` is not assignable to `type[AutomaticRunInput[Any]]` [bad-assignment]
- ERROR src/prefect/input/run_input.py:798:51-800:10: `type[AutomaticRunInput[Any]] | type[BaseModel]` is not assignable to `type[AutomaticRunInput[Any]]` [bad-assignment]
+ ERROR src/prefect/input/run_input.py:798:51-800:10: `type[AutomaticRunInput[Any] | BaseModel]` is not assignable to `type[AutomaticRunInput[Any]]` [bad-assignment]
- ERROR src/prefect/input/run_input.py:858:5-18: Overload signature `(input_type: type[T], timeout: float | None = 3600, poll_interval: float = 10, raise_timeout_error: bool = False, exclude_keys: set[str] | None = None, key_prefix: str | None = None, flow_run_id: UUID | None = None, with_metadata: bool = False) -> GetAutomaticInputHandler[T]` is not consistent with implementation signature `(input_type: BaseModel | type[R] | type[T], timeout: float | None = 3600, poll_interval: float = 10, raise_timeout_error: bool = False, exclude_keys: set[str] | None = None, key_prefix: str | None = None, flow_run_id: UUID | None = None, with_metadata: bool = False) -> GetAutomaticInputHandler[T] | GetInputHandler[R]` [inconsistent-overload]
+ ERROR src/prefect/input/run_input.py:858:5-18: Overload signature `(input_type: type[T], timeout: float | None = 3600, poll_interval: float = 10, raise_timeout_error: bool = False, exclude_keys: set[str] | None = None, key_prefix: str | None = None, flow_run_id: UUID | None = None, with_metadata: bool = False) -> GetAutomaticInputHandler[T]` is not consistent with implementation signature `(input_type: BaseModel | type[R | T], timeout: float | None = 3600, poll_interval: float = 10, raise_timeout_error: bool = False, exclude_keys: set[str] | None = None, key_prefix: str | None = None, flow_run_id: UUID | None = None, with_metadata: bool = False) -> GetAutomaticInputHandler[T] | GetInputHandler[R]` [inconsistent-overload]
+ ERROR src/prefect/input/run_input.py:886:9-49: `type[AutomaticRunInput[object] | RunInput]` is not assignable to `type[AutomaticRunInput[T] | R]` [bad-assignment]
- ERROR src/prefect/server/orchestration/core_policy.py:72:9-17: Class member `CoreFlowPolicy.priority` overrides parent class `FlowRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/core_policy.py:114:9-17: Class member `CoreTaskPolicy.priority` overrides parent class `TaskRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/core_policy.py:152:9-17: Class member `ClientSideTaskOrchestrationPolicy.priority` overrides parent class `TaskRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/core_policy.py:188:9-17: Class member `BackgroundTaskPolicy.priority` overrides parent class `TaskRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/core_policy.py:221:9-17: Class member `MinimalFlowPolicy.priority` overrides parent class `FlowRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/core_policy.py:236:9-17: Class member `MarkLateRunsPolicy.priority` overrides parent class `FlowRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/core_policy.py:250:9-17: Class member `MinimalTaskPolicy.priority` overrides parent class `TaskRunOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/global_policy.py:63:9-17: Class member `GlobalFlowPolicy.priority` overrides parent class `BaseOrchestrationPolicy` in an inconsistent manner [bad-override]
- ERROR src/prefect/server/orchestration/global_policy.py:96:9-17: Class member `GlobalTaskPolicy.priority` overrides parent class `BaseOrchestrationPolicy` in an inconsistent manner [bad-override]

pandas (https://github.com/pandas-dev/pandas)
- ERROR pandas/io/pytables.py:2715:48-53: Argument `ExtensionDtype | Mapping[Hashable, ExtensionDtype | dtype | str | type[bool | complex | object | str]] | dtype | str | type[bool] | type[complex] | type[object] | type[str]` is not assignable to parameter `datetime64_dtype` with type `str` in function `_set_tz` [bad-argument-type]
+ ERROR pandas/io/pytables.py:2715:48-53: Argument `ExtensionDtype | Mapping[Hashable, ExtensionDtype | dtype | str | type[bool | complex | object | str]] | dtype | str | type[bool | complex | object | str]` is not assignable to parameter `datetime64_dtype` with type `str` in function `_set_tz` [bad-argument-type]
- ERROR pandas/io/pytables.py:2722:39-63: No matching overload found for function `numpy._core.multiarray.asarray` called with arguments: (ndarray, dtype=ExtensionDtype | Mapping[Hashable, ExtensionDtype | dtype | str | type[bool | complex | object | str]] | dtype | str | type[bool] | type[complex] | type[object] | type[str]) [no-matching-overload]
+ ERROR pandas/io/pytables.py:2722:39-63: No matching overload found for function `numpy._core.multiarray.asarray` called with arguments: (ndarray, dtype=ExtensionDtype | Mapping[Hashable, ExtensionDtype | dtype | str | type[bool | complex | object | str]] | dtype | str | type[bool | complex | object | str]) [no-matching-overload]
- ERROR pandas/io/pytables.py:2759:45-64: No matching overload found for function `numpy.ndarray.astype` called with arguments: (ExtensionDtype | Mapping[Hashable, ExtensionDtype | dtype | str | type[bool | complex | object | str]] | dtype | str | type[bool] | type[complex] | type[object] | type[str], copy=Literal[False]) [no-matching-overload]
+ ERROR pandas/io/pytables.py:2759:45-64: No matching overload found for function `numpy.ndarray.astype` called with arguments: (ExtensionDtype | Mapping[Hashable, ExtensionDtype | dtype | str | type[bool | complex | object | str]] | dtype | str | type[bool | complex | object | str], copy=Literal[False]) [no-matching-overload]

core (https://github.com/home-assistant/core)
- ERROR homeassistant/util/hass_dict.pyi:138:16-50: assert_type(dict[int, bool] | dict[Any, Any], dict[int, bool]) failed [assert-type]
+ ERROR homeassistant/util/hass_dict.pyi:138:16-50: assert_type(dict[int, bool] | dict[Unknown, Unknown], dict[int, bool]) failed [assert-type]
- ERROR homeassistant/util/hass_dict.pyi:140:16-46: assert_type(set[str] | set[Any], set[str]) failed [assert-type]
+ ERROR homeassistant/util/hass_dict.pyi:140:16-46: assert_type(set[str] | set[Unknown], set[str]) failed [assert-type]

trio (https://github.com/python-trio/trio)
- ERROR src/trio/_tests/type_tests/path.py:69:16-52: assert_type(Any, Path) failed [assert-type]
+ ERROR src/trio/_tests/type_tests/path.py:69:16-52: assert_type(Unknown, Path) failed [assert-type]
- ERROR src/trio/_tests/type_tests/path.py:86:20-43: assert_type(Any, Path) failed [assert-type]
+ ERROR src/trio/_tests/type_tests/path.py:86:20-43: assert_type(Unknown, Path) failed [assert-type]
- ERROR src/trio/_tests/type_tests/path.py:96:16-50: assert_type(Any, Path) failed [assert-type]
+ ERROR src/trio/_tests/type_tests/path.py:96:16-50: assert_type(Unknown, Path) failed [assert-type]
- ERROR src/trio/_tests/type_tests/path.py:99:16-49: assert_type(Any, Path) failed [assert-type]
+ ERROR src/trio/_tests/type_tests/path.py:99:16-49: assert_type(Unknown, Path) failed [assert-type]

sympy (https://github.com/sympy/sympy)
- ERROR sympy/utilities/tests/test_pickling.py:61:26-39: Argument `list[ModuleType]` is not assignable to parameter `iterable` with type `Iterable[int | [_T](x: _T) -> _T | [_T](x: _T, memo: dict[int, Any] | None = None, _nil: Any = ...) -> _T]` in function `list.extend` [bad-argument-type]
+ ERROR sympy/utilities/tests/test_pickling.py:61:26-39: Argument `list[ModuleType]` is not assignable to parameter `iterable` with type `Iterable[int | [_T](x: _T, memo: dict[int, Any] | None = None, _nil: Any = ...) -> _T | [_T](x: _T) -> _T]` in function `list.extend` [bad-argument-type]

streamlit (https://github.com/streamlit/streamlit)
- ERROR lib/tests/streamlit/typing/button_types.py:43:16-42: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:43:16-42: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:44:16-59: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:44:16-59: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:45:16-51: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:45:16-51: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:48:16-57: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:48:16-57: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:49:16-61: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:49:16-61: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:50:16-59: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:50:16-59: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:53:16-64: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:53:16-64: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:54:16-49: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:54:16-49: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:57:16-48: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:57:16-48: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:58:16-66: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:58:16-66: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:59:16-54: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:59:16-54: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:60:16-49: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:60:16-49: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:63:16-57: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:63:16-57: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:64:16-57: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:64:16-57: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:67:16-64: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:67:16-64: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:68:16-64: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:68:16-64: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:69:16-56: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:69:16-56: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:72:16-56: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:72:16-56: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:73:16-61: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:73:16-61: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:74:16-57: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:74:16-57: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:83:16-64: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:83:16-64: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:84:16-86: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:84:16-86: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:85:16-87:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:85:16-87:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:88:16-60: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:88:16-60: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:91:16-106:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:91:16-106:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:113:16-72: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:113:16-72: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:114:16-75: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:114:16-75: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:120:16-65: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:120:16-65: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:121:16-67: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:121:16-67: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:122:16-64: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:122:16-64: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:131:16-71: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:131:16-71: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:132:16-71: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:132:16-71: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:135:16-89: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:135:16-89: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:136:16-86: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:136:16-86: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:137:16-142:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:137:16-142:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:145:16-85: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:145:16-85: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:146:16-86: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:146:16-86: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:147:16-89: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:147:16-89: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:148:16-82: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:148:16-82: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:151:16-83: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:151:16-83: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:152:16-85: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:152:16-85: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:153:16-84: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:153:16-84: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:156:16-84: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:156:16-84: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:157:16-84: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:157:16-84: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:158:16-78: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:158:16-78: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:161:16-77: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:161:16-77: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:162:16-82: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:162:16-82: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:163:16-85: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:163:16-85: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:164:16-81: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:164:16-81: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:165:16-76: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:165:16-76: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:166:16-86: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:166:16-86: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:169:16-187:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:169:16-187:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:258:16-84: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:258:16-84: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:259:16-88: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:259:16-88: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:260:16-268:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:260:16-268:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:269:16-277:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:269:16-277:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:280:16-296:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:280:16-296:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:362:16-44: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:362:16-44: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:363:16-52: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:363:16-52: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:366:16-70: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:366:16-70: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:367:16-61: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:367:16-61: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:368:16-62: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:368:16-62: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:371:16-76: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:371:16-76: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:372:16-63: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:372:16-63: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:375:16-68: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:375:16-68: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:376:16-70: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:376:16-70: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:377:16-69: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:377:16-69: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:380:16-62: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:380:16-62: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:381:16-76: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:381:16-76: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:382:16-63: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:382:16-63: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:385:16-67: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:385:16-67: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:386:16-68: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:386:16-68: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:389:16-69: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:389:16-69: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:390:16-69: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:390:16-69: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:391:16-63: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:391:16-63: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:394:16-70: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:394:16-70: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:395:16-75: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:395:16-75: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:396:16-67: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:396:16-67: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:399:16-74: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:399:16-74: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:400:16-402:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:400:16-402:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:403:16-408:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:403:16-408:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:409:16-67: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:409:16-67: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/button_types.py:412:16-427:6: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/button_types.py:412:16-427:6: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:32:16-46: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:32:16-46: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:33:16-46: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:33:16-46: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:34:16-47: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:34:16-47: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:35:16-52: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:35:16-52: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:36:16-57: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:36:16-57: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:37:16-52: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:37:16-52: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:38:16-54: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:38:16-54: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:39:16-62: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:39:16-62: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:41:16-66: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:41:16-66: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:42:16-66: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:42:16-66: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:43:16-67: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:43:16-67: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:44:16-72: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:44:16-72: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:45:16-77: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:45:16-77: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:46:16-72: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:46:16-72: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:47:16-74: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:47:16-74: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:48:16-82: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:48:16-82: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:58:16-50: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:58:16-50: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:59:16-50: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:59:16-50: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:60:16-51: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:60:16-51: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:61:16-56: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:61:16-56: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:62:16-61: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:62:16-61: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:63:16-56: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:63:16-56: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:64:16-58: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:64:16-58: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:65:16-66: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:65:16-66: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:67:16-70: assert_type(Any, bool) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:67:16-70: assert_type(Unknown, bool) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:68:16-70: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:68:16-70: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:69:16-71: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:69:16-71: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:70:16-76: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:70:16-76: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:71:16-81: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:71:16-81: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:72:16-76: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:72:16-76: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:73:16-78: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:73:16-78: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/cache_types.py:74:16-86: assert_type(Any, None) failed [assert-type]
+ ERROR lib/tests/streamlit/typing/cache_types.py:74:16-86: assert_type(Unknown, None) failed [assert-type]
- ERROR lib/tests/streamlit/typing/chat_input_types.py:35:16-42: assert_type(Any, str | None) failed [assert-type]

... (truncated 1099 lines) ...

hydra-zen (https://github.com/mit-ll-responsible-ai/hydra-zen)
-  INFO tests/annotations/declarations.py:812:20-815:10: revealed type: type[PartialBuilds] | type[Builds[Unknown]] | type[BuildsWithSig[type[str], [x: int]]] [reveal-type]
+  INFO tests/annotations/declarations.py:812:20-815:10: revealed type: type[Builds[Unknown] | BuildsWithSig[type[str], [x: int]] | HydraPartialBuilds[Unknown] | ZenPartialBuilds[Unknown]] [reveal-type]
-  INFO tests/annotations/declarations.py:831:20-834:10: revealed type: type[PartialBuilds] | type[Builds[Unknown]] | type[BuildsWithSig[type[str], [x: int]]] [reveal-type]
+  INFO tests/annotations/declarations.py:831:20-834:10: revealed type: type[Builds[Unknown] | BuildsWithSig[type[str], [x: int]] | HydraPartialBuilds[Unknown] | ZenPartialBuilds[Unknown]] [reveal-type]
-  INFO tests/annotations/declarations.py:850:20-853:10: revealed type: type[PartialBuilds] | type[Builds[Unknown]] | type[BuildsWithSig[type[str], [x: int]]] [reveal-type]
+  INFO tests/annotations/declarations.py:850:20-853:10: revealed type: type[Builds[Unknown] | BuildsWithSig[type[str], [x: int]] | HydraPartialBuilds[Unknown] | ZenPartialBuilds[Unknown]] [reveal-type]
- ERROR tests/annotations/declarations.py:929:16-932:6: assert_type(StdBuilds[Any], StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:934:16-937:6: assert_type(StdBuilds[Any], StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:940:16-943:6: assert_type(PBuilds[Any], PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:944:16-86: assert_type(PBuilds[Any], PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:945:16-948:6: assert_type(PBuilds[Any], PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:951:16-954:6: assert_type(FullBuilds[Any] | StdBuilds[Any], FullBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:956:16-959:6: assert_type(PBuilds[Any] | StdBuilds[Any], PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:961:16-966:6: assert_type(PBuilds[Any] | StdBuilds[Any], PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:969:16-978:6: assert_type(FullBuilds[Any] | PBuilds[Any] | StdBuilds[Any], FullBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
- ERROR tests/annotations/declarations.py:980:16-989:6: assert_type(FullBuilds[Any] | PBuilds[Any] | StdBuilds[Any], FullBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | PBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None] | StdBuilds[((...) -> Any) | DataClass_ | DictConfig | Enum | ListConfig | Mapping[Any, SupportedPrimitive] | Partial[Any] | Path | PosixPath | Sequence[SupportedPrimitive] | SimpleNamespace | WindowsPath | bool | bytearray | bytes | complex | float | frozenset[SupportedPrimitive] | int | memoryview | range | set[Any] | str | timedelta | EmptyDict | tuple[SupportedPrimitive, ...] | None]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:929:16-932:6: assert_type(StdBuilds[Unknown], StdBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:934:16-937:6: assert_type(StdBuilds[Unknown], StdBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:940:16-943:6: assert_type(PBuilds[Unknown], PBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:944:16-86: assert_type(PBuilds[Unknown], PBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:945:16-948:6: assert_type(PBuilds[Unknown], PBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:951:16-954:6: assert_type(FullBuilds[Unknown] | StdBuilds[Unknown], FullBuilds[SupportedPrimitive] | StdBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:956:16-959:6: assert_type(PBuilds[Unknown] | StdBuilds[Unknown], PBuilds[SupportedPrimitive] | StdBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:961:16-966:6: assert_type(PBuilds[Unknown] | StdBuilds[Unknown], PBuilds[SupportedPrimitive] | StdBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:969:16-978:6: assert_type(FullBuilds[Unknown] | PBuilds[Unknown] | StdBuilds[Unknown], FullBuilds[SupportedPrimitive] | PBuilds[SupportedPrimitive] | StdBuilds[SupportedPrimitive]) failed [assert-type]
+ ERROR tests/annotations/declarations.py:980:16-989:6: assert_type(FullBuilds[Unknown] | PBuilds[Unknown] | StdBuilds[Unknown], FullBuilds[SupportedPrimitive] | PBuilds[SupportedPrimitive] | StdBuilds[SupportedPrimitive]) failed [assert-type]

mypy-protobuf (https://github.com/dropbox/mypy-protobuf)
- ERROR test/test_generated_mypy.py:492:16-35: assert_type(Any, UserId) failed [assert-type]
+ ERROR test/test_generated_mypy.py:492:16-35: assert_type(Unknown, UserId) failed [assert-type]
- ERROR test/test_generated_mypy.py:493:16-32: assert_type(Any, Email) failed [assert-type]
+ ERROR test/test_generated_mypy.py:493:16-32: assert_type(Unknown, Email) failed [assert-type]
- ERROR test/test_generated_mypy.py:494:16-58: assert_type(Any, ScalarMap[UserId, Email]) failed [assert-type]
+ ERROR test/test_generated_mypy.py:494:16-58: assert_type(Unknown, ScalarMap[UserId, Email]) failed [assert-type]
- ERROR test/test_generated_mypy.py:503:16-36: assert_type(Any, UserId) failed [assert-type]
+ ERROR test/test_generated_mypy.py:503:16-36: assert_type(Unknown, UserId) failed [assert-type]
- ERROR test/test_generated_mypy.py:504:16-33: assert_type(Any, Email) failed [assert-type]
+ ERROR test/test_generated_mypy.py:504:16-33: assert_type(Unknown, Email) failed [assert-type]
- ERROR test/test_generated_mypy.py:505:16-59: assert_type(Any, ScalarMap[UserId, Email]) failed [assert-type]
+ ERROR test/test_generated_mypy.py:505:16-59: assert_type(Unknown, ScalarMap[UserId, Email]) failed [assert-type]

spark (https://github.com/apache/spark)
- ERROR python/pyspark/pandas/tests/computation/test_cov.py:67:30-98: `bool | None` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object] | type[str]` of type variable `S1` [bad-specialization]
+ ERROR python/pyspark/pandas/tests/computation/test_cov.py:67:30-98: `bool | None` is not assignable to upper bound `BaseOffset | CategoricalDtype | ExtensionDtype | Interval | Period | bool | bytes | complex | date | datetime | dtype | float | int | list[str] | str | time | timedelta | type[bool | complex | object | str]` of type variable `S1` [bad-specialization]

psycopg (https://github.com/psycopg/psycopg)
- ERROR tests/pool/test_pool.py:72:16-44: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool.py:73:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool.py:73:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool.py:82:16-47: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool.py:105:16-37: assert_type(Any, test_non_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool.py:106:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool.py:106:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool_async.py:70:16-44: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_async.py:71:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool_async.py:71:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool_async.py:82:16-47: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_async.py:105:16-37: assert_type(Any, test_non_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_async.py:106:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool_async.py:106:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool_null.py:66:16-44: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_null.py:67:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool_null.py:67:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool_null.py:76:16-47: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_null.py:98:16-37: assert_type(Any, test_non_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_null.py:99:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool_null.py:99:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool_null_async.py:65:16-44: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_null_async.py:66:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool_null_async.py:66:16-29: assert_type(Unknown, MyRow) failed [assert-type]
- ERROR tests/pool/test_pool_null_async.py:77:16-47: assert_type(Any, test_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_null_async.py:97:16-37: assert_type(Any, test_non_generic_connection_type.MyConnection) failed [assert-type]
- ERROR tests/pool/test_pool_null_async.py:98:16-29: assert_type(Any, MyRow) failed [assert-type]
+ ERROR tests/pool/test_pool_null_async.py:98:16-29: assert_type(Unknown, MyRow) failed [assert-type]

static-frame (https://github.com/static-frame/static-frame)
- ERROR static_frame/core/frame.py:4589:42-84: Argument `Generator[((...) -> IndexBase) | type[Index] | type[IndexAutoConstructorFactory]]` is not assignable to parameter `iterable` with type `Iterable[TIndexCtorSpecifier]` in function `list.extend` [bad-argument-type]

pyodide (https://github.com/pyodide/pyodide)
- ERROR src/tests/test_static_typing.py:74:20-76: assert_type(list[Any], list[tuple[int, str]]) failed [assert-type]
+ ERROR src/tests/test_static_typing.py:74:20-76: assert_type(list[Unknown], list[tuple[int, str]]) failed [assert-type]

@github-actions
Copy link

github-actions bot commented Mar 9, 2026

Primer Diff Classification

❌ 1 regression(s) | ✅ 3 improvement(s) | ➖ 13 neutral | 17 project(s) total

1 regression(s) across prefect. error kinds: bad-assignment, bad-override, inconsistent-overload. caused by is_equivalent(). 3 improvement(s) across pydantic, psycopg, static-frame.

Project Verdict Changes Error Kinds Root Cause
urllib3 ➖ Neutral +3, -3 bad-assignment
xarray ➖ Neutral +4, -4 bad-specialization
pydantic ✅ Improvement -2 bad-assignment assert_type()
comtypes ➖ Neutral +2, -2 bad-argument-type
hydpy ➖ Neutral +56, -56 assert-type
prefect ❌ Regression +8, -16 bad-assignment, bad-override is_equivalent()
pandas ➖ Neutral +3, -3 bad-argument-type, no-matching-overload
core ➖ Neutral +2, -2 assert-type
trio ➖ Neutral +4, -4 assert-type
sympy ➖ Neutral +1, -1 bad-argument-type
streamlit ➖ Neutral +665, -665 assert-type
hydra-zen ➖ Neutral +13, -13 assert-type, reveal-type
mypy-protobuf ➖ Neutral +6, -6 assert-type
spark ➖ Neutral +1, -1 bad-specialization
psycopg ✅ Improvement +8, -20 assert-type assert_type()
static-frame ✅ Improvement -1 bad-argument-type is_equivalent()
pyodide ➖ Neutral +1, -1 assert-type
Detailed analysis

❌ Regression (1)

prefect (+8, -16)

The new errors contain @_ types, which are pyrefly's internal representation for type inference failures. The error messages like type[AutomaticRunInput[@_] | T] indicate that pyrefly failed to properly infer the type parameter, not that there's a genuine type error in the code. The removed errors were false positives - the bad-override errors incorrectly flagged policy priority overrides that are likely valid in Prefect's orchestration system, and the assignment/overload errors were also incorrectly strict. The PR's change from type normalization to equivalence checking in assert_type appears to have degraded type inference quality in some contexts.
Attribution: The change to assert_type in pyrefly/lib/alt/special_calls.rs replaced type normalization with equivalence checking using is_equivalent(). This change in type comparison logic caused pyrefly to infer @_ (failed inference) types in some contexts where it previously inferred concrete types, leading to the new bad-assignment errors with @_ types.

✅ Improvement (3)

pydantic (-2)

This is an improvement. The PR changed assert_type to use equivalence checking instead of type normalization, which means Unknown types are no longer automatically converted to Any before comparison. The removed errors were false positives where Unknown (representing untyped/unresolved values) was being treated as equivalent to concrete types like int after normalization. The new behavior correctly identifies that Unknown is not equivalent to concrete types, making the type checker more precise. For example, assert_type(Unknown, int) should fail because an unresolved type is not the same as a concrete int type.
Attribution: The change to assert_type() in pyrefly/lib/alt/special_calls.rs switched from normalizing types before comparison to using equivalence checking via is_equivalent(). This preserves Unknown types instead of converting them to Any, leading to more accurate type mismatch detection.

psycopg (+8, -20)

This is an improvement. The PR description explicitly states the intent: 'Changes assert_type to check for equivalence between types instead of normalizing types and checking for equality. This is both more spec-compliant and simpler. The test changes are because we no longer normalize Unknown to Any.' The removed errors were false positives where pyrefly was incorrectly claiming that concrete types like MyConnection[MyRow] were Any. Looking at the test code, row1 should indeed be of type MyRow since it comes from a connection configured with class_row(MyRow) as the row factory. The old normalization was masking the actual inferred types and producing incorrect error messages. The new approach correctly identifies that row1 has type MyRow, not Any, making the assert_type calls pass as expected.
Attribution: The change to assert_type() in pyrefly/lib/alt/special_calls.rs removed the normalization logic that was converting Unknown to Any. The new implementation uses is_equivalent() instead of normalizing both types and comparing for equality. Additionally, changes in crates/pyrefly_types/src/simplify.rs added collapse_builtins_type() which affects how union types are simplified.

static-frame (-1)

This is an improvement. The removed error was a false positive - the generator expression (index_constructors for _ in name_posterior) is perfectly valid as an argument to list.extend. Generator expressions are iterables and are commonly used with methods that accept Iterable parameters. The change to use equivalence checking instead of normalization in assert_type appears to have improved the overall type checking accuracy, removing this incorrect error while maintaining correct type safety.
Attribution: The change to assert_type implementation in pyrefly/lib/alt/special_calls.rs switched from complex type normalization to using self.[is_equivalent()](https://github.com/facebook/pyrefly/blob/main/pyrefly/lib/alt/special_calls.rs). This change also affected how type equivalence is checked throughout the system, which likely improved the accuracy of type compatibility checking and removed this false positive.

➖ Neutral (13)

urllib3 (+3, -3)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

xarray (+4, -4)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

comtypes (+2, -2)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

hydpy (+56, -56)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

pandas (+3, -3)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

core (+2, -2)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

trio (+4, -4)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

sympy (+1, -1)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

streamlit (+665, -665)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

hydra-zen (+13, -13)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

mypy-protobuf (+6, -6)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

spark (+1, -1)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

pyodide (+1, -1)

Same errors at same locations with same error kinds — message wording changed, no behavioral impact.

Suggested Fix

Summary: The change from type normalization to equivalence checking in assert_type caused type inference failures in prefect, producing @_ types instead of concrete types.

1. In assert_type() in pyrefly/lib/alt/special_calls.rs, restore minimal type normalization before equivalence checking. Add canonicalization and deep_force calls: let a = self.canonicalize_all_class_types(self.solver().deep_force(a), expr_a.range(), errors); let b = self.canonicalize_all_class_types(self.solver().deep_force(b), expr_b.range(), errors); before calling is_equivalent(). This preserves the improved equivalence logic while ensuring proper type resolution.

Files: pyrefly/lib/alt/special_calls.rs
Confidence: high
Affected projects: prefect
Fixes: bad-assignment
The regression shows @_ types appearing where concrete types should be inferred. The original normalization logic included canonicalization steps that are necessary for proper type resolution. Adding back minimal canonicalization while keeping equivalence checking should eliminate the 8 bad-assignment errors with @_ types in prefect.


Was this helpful? React with 👍 or 👎

Classification by primer-classifier (13 heuristic, 4 LLM)

@meta-codesync meta-codesync bot closed this in 85deb98 Mar 10, 2026
@meta-codesync
Copy link

meta-codesync bot commented Mar 10, 2026

This pull request has been merged in 85deb98.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants