[ty] Separate out upper and lower bound constraints#22400
Conversation
Typing conformance resultsNo changes detected ✅Current numbersThe percentage of diagnostics emitted that were expected errors held steady at 91.94%. The percentage of expected errors that received a diagnostic held steady at 87.09%. The number of fully passing files held steady at 92/134. |
|
Merging this PR will degrade performance by 4.54%
|
| Mode | Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|---|
| ❌ | Memory | ty_check_file[incremental] |
164.3 KB | 173.4 KB | -5.22% |
| ❌ | Simulation | ty_check_file[incremental] |
8.8 ms | 9.5 ms | -7.28% |
| ❌ | Simulation | hydra-zen |
3.5 s | 7 s | -49.28% |
| ❌ | Simulation | ty_check_file[cold] |
164.4 ms | 180.6 ms | -8.99% |
| ❌ | Simulation | anyio |
1.4 s | 1.7 s | -17.49% |
| ❌ | Simulation | attrs |
600.6 ms | 756.8 ms | -20.65% |
| ⚡ | WallTime | pydantic |
34.7 s | 20 s | +73.6% |
| ❌ | WallTime | multithreaded |
2.3 s | 2.6 s | -10.39% |
| ❌ | WallTime | freqtrade |
11.3 s | 14.7 s | -22.77% |
| ❌ | WallTime | altair |
7.5 s | 10.1 s | -25.39% |
| ❌ | WallTime | pandas |
82.5 s | 109.8 s | -24.89% |
| ❌ | WallTime | tanjun |
3.7 s | 4.6 s | -19.66% |
| ❌ | Simulation | ty_micro[typevar_mapping_small_accumulations] |
210.5 ms | 221.3 ms | -4.89% |
| ⚡ | Simulation | ty_micro[typevar_mapping_accumulation] |
1.2 s | 1.2 s | +4.7% |
| ❌ | Simulation | ty_micro[typeis_narrowing] |
198.2 ms | 207.1 ms | -4.31% |
| ⚡ | Simulation | ty_micro[pydantic_core_schema_dict] |
419.9 ms | 116.2 ms | ×3.6 |
| ❌ | WallTime | colour_science |
51.7 s | 62.7 s | -17.54% |
| ❌ | WallTime | static_frame |
26 s | 33.6 s | -22.63% |
| ⚡ | Memory | ty_micro[typevar_mapping_accumulation] |
106 MB | 94.9 MB | +11.7% |
| ⚡ | Memory | ty_micro[pydantic_core_schema_dict] |
20.8 MB | 18.6 MB | +11.96% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing dcreager/separate-constraints (56ace79) with main (7e1bc1e)
Footnotes
-
61 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩
832131f to
4989e39
Compare
Memory usage reportSummary
Significant changesClick to expand detailed breakdownprefect
sphinx
trio
flake8
|
4989e39 to
56ace79
Compare
|
| Project | Old Status | New Status | Old Return Code | New Return Code |
|---|---|---|---|---|
sympy |
success | timeout | 1 |
None |
Diagnostic changes:
| Lint rule | Added | Removed | Changed |
|---|---|---|---|
type-assertion-failure |
8 | 26 | 1 |
invalid-argument-type |
6 | 2 | 9 |
unsupported-operator |
0 | 11 | 0 |
invalid-return-type |
0 | 0 | 8 |
no-matching-overload |
0 | 8 | 0 |
invalid-assignment |
3 | 0 | 4 |
missing-argument |
2 | 0 | 0 |
| Total | 19 | 47 | 22 |
Large timing changes:
| Project | Old Time | New Time | Change |
|---|---|---|---|
hydra-zen |
0.71s | 2.65s | +271% |
sockeye |
0.11s | 0.37s | +249% |
svcs |
0.05s | 0.13s | +166% |
freqtrade |
0.28s | 0.66s | +139% |
manticore |
4.27s | 9.05s | +112% |
cloud-init |
0.49s | 0.98s | +100% |
rotki |
0.62s | 1.15s | +86% |
xarray |
0.61s | 1.13s | +85% |
ibis |
0.56s | 0.91s | +63% |
more-itertools |
0.20s | 0.32s | +62% |
pydantic |
2.13s | 0.89s | -58% |
schemathesis |
0.26s | 0.41s | +58% |
setuptools |
0.37s | 0.57s | +54% |
Raw diff (88 changes)
Expression (https://github.com/cognitedata/Expression)
- tests/test_map.py:74:21 error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Map[str, int] | Unknown, /) -> Unknown | Map[str, int] | _A'return@curry_flip`, found `(_A'return@curry_flip, /) -> _A'return@curry_flip`
+ tests/test_map.py:74:21 error[invalid-argument-type] Argument to function `pipe` is incorrect: Expected `(Map[str, int] | Unknown, /) -> _A'return@curry_flip | Unknown | Map[str, int]`, found `(_A'return@curry_flip, /) -> _A'return@curry_flip`
Tanjun (https://github.com/FasterSpeeding/Tanjun)
- tanjun/clients.py:2801:16 error[invalid-return-type] Return type does not match returned value: expected `((...) -> Coroutine[Any, Any, _T@get_callback_override] | _T@get_callback_override) | None`, found `((...) -> Coroutine[Any, Any, _T@get_callback_override | Coroutine[Any, Any, _T@get_callback_override]] | _T@get_callback_override) | None`
+ tanjun/clients.py:2801:16 error[invalid-return-type] Return type does not match returned value: expected `((...) -> Coroutine[Any, Any, _T@get_callback_override] | _T@get_callback_override) | None`, found `((...) -> Coroutine[Any, Any, Coroutine[Any, Any, _T@get_callback_override] | _T@get_callback_override] | _T@get_callback_override) | None`
- tanjun/dependencies/data.py:171:32 error[invalid-argument-type] Argument to bound method `LazyConstant.set_value` is incorrect: Expected `_T@make_lc_resolver`, found `_T@make_lc_resolver | Coroutine[Any, Any, _T@make_lc_resolver]`
+ tanjun/dependencies/data.py:171:32 error[invalid-argument-type] Argument to bound method `LazyConstant.set_value` is incorrect: Expected `_T@make_lc_resolver`, found `Coroutine[Any, Any, _T@make_lc_resolver] | _T@make_lc_resolver`
- tanjun/dependencies/data.py:172:20 error[invalid-return-type] Return type does not match returned value: expected `_T@make_lc_resolver`, found `_T@make_lc_resolver | Coroutine[Any, Any, _T@make_lc_resolver]`
+ tanjun/dependencies/data.py:172:20 error[invalid-return-type] Return type does not match returned value: expected `_T@make_lc_resolver`, found `Coroutine[Any, Any, _T@make_lc_resolver] | _T@make_lc_resolver`
- tanjun/dependencies/data.py:220:12 error[invalid-return-type] Return type does not match returned value: expected `_T@inject_lc`, found `_T@inject_lc | Coroutine[Any, Any, _T@inject_lc]`
+ tanjun/dependencies/data.py:220:12 error[invalid-return-type] Return type does not match returned value: expected `_T@inject_lc`, found `Coroutine[Any, Any, _T@inject_lc] | _T@inject_lc`
- tanjun/dependencies/data.py:265:13 error[invalid-assignment] Object of type `_T@_CacheCallback | Coroutine[Any, Any, _T@_CacheCallback]` is not assignable to attribute `_result` of type `_T@_CacheCallback | Literal[_DefaultFlag.NO_DEFAULT]`
+ tanjun/dependencies/data.py:265:13 error[invalid-assignment] Object of type `Coroutine[Any, Any, _T@_CacheCallback] | _T@_CacheCallback` is not assignable to attribute `_result` of type `_T@_CacheCallback | Literal[_DefaultFlag.NO_DEFAULT]`
- tanjun/dependencies/data.py:269:20 error[invalid-return-type] Return type does not match returned value: expected `_T@_CacheCallback`, found `_T@_CacheCallback | Coroutine[Any, Any, _T@_CacheCallback]`
+ tanjun/dependencies/data.py:269:20 error[invalid-return-type] Return type does not match returned value: expected `_T@_CacheCallback`, found `Coroutine[Any, Any, _T@_CacheCallback] | _T@_CacheCallback`
- tanjun/dependencies/data.py:301:12 error[invalid-return-type] Return type does not match returned value: expected `(...) -> Coroutine[Any, Any, _T@cache_callback]`, found `_CacheCallback[_T@cache_callback | Coroutine[Any, Any, _T@cache_callback]]`
+ tanjun/dependencies/data.py:301:12 error[invalid-return-type] Return type does not match returned value: expected `(...) -> Coroutine[Any, Any, _T@cache_callback]`, found `_CacheCallback[_T@_CacheCallback]`
+ tanjun/dependencies/data.py:301:12 error[invalid-argument-type] Argument to `_CacheCallback.__init__` is incorrect: Expected `_CacheCallback[_T@cache_callback] | _CacheCallback[Coroutine[Any, Any, Coroutine[Any, Any, _T@cache_callback] | _T@cache_callback] | _T@cache_callback]`, found `_CacheCallback[Coroutine[Any, Any, _T@cache_callback] | _T@cache_callback]`
- tanjun/dependencies/data.py:347:12 error[invalid-return-type] Return type does not match returned value: expected `_T@cached_inject`, found `_T@cached_inject | Coroutine[Any, Any, _T@cached_inject | Coroutine[Any, Any, _T@cached_inject]]`
+ tanjun/dependencies/data.py:347:12 error[invalid-return-type] Return type does not match returned value: expected `_T@cached_inject`, found `Coroutine[Any, Any, Coroutine[Any, Any, _T@cached_inject] | _T@cached_inject] | _T@cached_inject`
anyio (https://github.com/agronholm/anyio)
- src/anyio/from_thread.py:382:60 error[invalid-argument-type] Argument to bound method `BlockingPortal._spawn_task_from_thread` is incorrect: Expected `Future[T_Retval@start_task_soon | Awaitable[T_Retval@start_task_soon]]`, found `Future[T_Retval@start_task_soon]`
+ src/anyio/from_thread.py:382:60 error[invalid-argument-type] Argument to bound method `BlockingPortal._spawn_task_from_thread` is incorrect: Expected `Future[Awaitable[T_Retval@start_task_soon] | T_Retval@start_task_soon]`, found `Future[T_Retval@start_task_soon]`
bokeh (https://github.com/bokeh/bokeh)
- src/bokeh/settings.py:775:46 error[invalid-argument-type] Argument to `PrioritizedSetting.__init__` is incorrect: Expected `((str | int | None, /) -> str | int | None) | None`, found `def convert_logging(value: str | int) -> int | None`
+ src/bokeh/settings.py:775:46 error[invalid-argument-type] Argument to `PrioritizedSetting.__init__` is incorrect: Expected `((str, /) -> str) | None`, found `def convert_logging(value: str | int) -> int | None`
dd-trace-py (https://github.com/DataDog/dd-trace-py)
+ ddtrace/debugging/_encoding.py:161:9 error[invalid-assignment] Object of type `enumerate[str]` is not assignable to attribute `_iter` of type `enumerate[LiteralString]`
discord.py (https://github.com/Rapptz/discord.py)
- discord/app_commands/checks.py:390:42 error[invalid-assignment] Object of type `Cooldown | None | Coroutine[Any, Any, Cooldown | None]` is not assignable to `Cooldown | None`
+ discord/app_commands/checks.py:390:42 error[invalid-assignment] Object of type `Coroutine[Any, Any, Cooldown | None] | None | Cooldown` is not assignable to `Cooldown | None`
ibis (https://github.com/ibis-project/ibis)
- ibis/backends/bigquery/tests/system/test_client.py:516:21 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `(Iterable[list[str]] | Iterable[list[bytes]], /) -> dict[str, str] | dict[bytes, bytes]`, found `<class 'dict'>`
jax (https://github.com/google/jax)
+ jax/_src/numpy/einsum.py:498:55 error[invalid-argument-type] Method `__getitem__` of type `bound method Counter[LiteralString].__getitem__(key: LiteralString, /) -> int` cannot be called with key of type `str` on object of type `Counter[LiteralString]`
- jax/_src/pallas/fuser/block_spec.py:1792:21 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `(Element | Squeezed | Blocked | ... omitted 4 union elements, /) -> int | None`, found `def _block_size(dim: Element | int | None) -> int | None`
+ jax/_src/pallas/fuser/block_spec.py:1792:21 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `(Element | int | None | ... omitted 4 union elements, /) -> int | None`, found `def _block_size(dim: Element | int | None) -> int | None`
- jax/_src/pallas/fuser/block_spec.py:1792:34 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `Iterable[Element | Squeezed | Blocked | ... omitted 4 union elements]`, found `Sequence[Element | Squeezed | Blocked | ... omitted 4 union elements] | None`
+ jax/_src/pallas/fuser/block_spec.py:1792:34 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `Iterable[Element | int | None | ... omitted 4 union elements]`, found `Sequence[Element | Squeezed | Blocked | ... omitted 4 union elements] | None`
pandas (https://github.com/pandas-dev/pandas)
- pandas/tests/arithmetic/test_datetime64.py:2217:36 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `(Unknown, str, /) -> timedelta64[int] | timedelta64[None] | timedelta64[timedelta]`, found `<class 'timedelta64'>`
+ pandas/tests/arithmetic/test_datetime64.py:2217:36 error[invalid-argument-type] Argument to constructor `map.__new__` is incorrect: Expected `(str | bytes | None | ... omitted 7 union elements, str | Literal[b"Y", b"M", b"W", b"D", b"h", ... omitted 8 literals] | tuple[Literal["Y", "M", "W", "D", "h", ... omitted 22 literals], SupportsIndex], /) -> timedelta64[None] | timedelta64[int] | timedelta64[timedelta]`, found `<class 'timedelta64'>`
- pandas/tests/io/json/test_readlines.py:417:35 error[invalid-argument-type] Argument is incorrect: Expected `DataFrame`, found `DataFrame | Series | Unknown`
+ pandas/tests/io/json/test_readlines.py:417:35 error[invalid-argument-type] Argument is incorrect: Expected `DataFrame`, found `Unknown | DataFrame | Series`
pandas-stubs (https://github.com/pandas-dev/pandas-stubs)
- tests/indexes/float/test_floordiv.py:42:15 error[unsupported-operator] Operator `//` is not supported between objects of type `Index[int | float]` and `timedelta`
+ tests/indexes/float/test_floordiv.py:50:11 error[type-assertion-failure] Type `Index[int]` does not match asserted type `TimedeltaIndex`
- tests/indexes/int/test_floordiv.py:41:15 error[unsupported-operator] Operator `//` is not supported between objects of type `Index[int]` and `timedelta`
+ tests/indexes/int/test_floordiv.py:49:11 error[type-assertion-failure] Type `Index[int]` does not match asserted type `TimedeltaIndex`
- tests/indexes/str/test_add.py:32:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Index[str]`
- tests/indexes/str/test_add.py:32:23 error[unsupported-operator] Operator `+` is not supported between objects of type `Index[str]` and `Literal["right"]`
- tests/indexes/test_add.py:112:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Index[str]`
- tests/indexes/test_add.py:117:9 error[type-assertion-failure] Type `Unknown` does not match asserted type `Index[str]`
- tests/indexes/test_floordiv.py:40:15 error[unsupported-operator] Operator `//` is not supported between objects of type `Index[Any]` and `timedelta`
+ tests/indexes/test_floordiv.py:48:11 error[type-assertion-failure] Type `Index[int]` does not match asserted type `TimedeltaIndex`
- tests/series/float/test_floordiv.py:41:15 error[unsupported-operator] Operator `//` is not supported between objects of type `Series[int | float]` and `timedelta`
- tests/series/float/test_floordiv.py:57:9 error[no-matching-overload] No overload of bound method `Series.floordiv` matches arguments
+ tests/series/float/test_floordiv.py:49:11 error[type-assertion-failure] Type `Series[int]` does not match asserted type `Series[Timedelta]`
+ tests/series/float/test_floordiv.py:66:9 error[type-assertion-failure] Type `Series[int]` does not match asserted type `Series[Timedelta]`
- tests/series/int/test_floordiv.py:42:15 error[unsupported-operator] Operator `//` is not supported between objects of type `Series[int]` and `timedelta`
- tests/series/int/test_floordiv.py:58:9 error[no-matching-overload] No overload of bound method `Series.floordiv` matches arguments
+ tests/series/int/test_floordiv.py:50:11 error[type-assertion-failure] Type `Series[int]` does not match asserted type `Series[Timedelta]`
+ tests/series/int/test_floordiv.py:67:9 error[type-assertion-failure] Type `Series[int]` does not match asserted type `Series[Timedelta]`
- tests/series/str/test_add.py:32:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[str]`
- tests/series/str/test_add.py:32:23 error[unsupported-operator] Operator `+` is not supported between objects of type `Series[str]` and `Literal["right"]`
- tests/series/str/test_add.py:40:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[str]`
- tests/series/str/test_add.py:40:23 error[no-matching-overload] No overload of bound method `Series.add` matches arguments
- tests/series/str/test_add.py:59:15 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[str]`
- tests/series/str/test_add.py:59:27 error[unsupported-operator] Operator `+` is not supported between objects of type `Series[str]` and `tuple[str, ...]`
- tests/series/str/test_add.py:81:15 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[str]`
- tests/series/str/test_add.py:81:27 error[no-matching-overload] No overload of bound method `Series.add` matches arguments
- tests/series/test_add.py:193:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[str]`
- tests/series/test_add.py:195:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[str]`
+ tests/series/test_floordiv.py:48:11 error[type-assertion-failure] Type `Series[int]` does not match asserted type `Series[Timedelta]`
- tests/series/test_floordiv.py:65:9 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[Timedelta]`
+ tests/series/test_floordiv.py:65:9 error[type-assertion-failure] Type `Series[int]` does not match asserted type `Series[Timedelta]`
- tests/series/timedelta/test_floordiv.py:43:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int]`
- tests/series/timedelta/test_floordiv.py:51:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[int]`
- tests/series/timedelta/test_floordiv.py:51:23 error[unsupported-operator] Operator `//` is not supported between objects of type `timedelta` and `Series[Timedelta]`
- tests/series/timedelta/test_floordiv.py:68:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int]`
- tests/series/timedelta/test_floordiv.py:188:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int]`
- tests/series/timedelta/test_floordiv.py:196:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int]`
- tests/series/timedelta/test_truediv.py:42:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:50:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:50:23 error[unsupported-operator] Operator `/` is not supported between objects of type `timedelta` and `Series[Timedelta]`
- tests/series/timedelta/test_truediv.py:63:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:72:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:80:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:80:23 error[no-matching-overload] No overload of bound method `Series.rtruediv` matches arguments
- tests/series/timedelta/test_truediv.py:88:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:88:23 error[no-matching-overload] No overload of bound method `Series.rtruediv` matches arguments
- tests/series/timedelta/test_truediv.py:226:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:234:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:238:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:242:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:242:23 error[no-matching-overload] No overload of bound method `Series.rtruediv` matches arguments
- tests/series/timedelta/test_truediv.py:246:11 error[type-assertion-failure] Type `Unknown` does not match asserted type `Series[int | float]`
- tests/series/timedelta/test_truediv.py:246:23 error[no-matching-overload] No overload of bound method `Series.rtruediv` matches arguments
- tests/test_timefuncs.py:1750:11 error[type-assertion-failure] Type `Series[Timedelta]` does not match asserted type `Series[int | float]`
- tests/test_timefuncs.py:1753:14 error[unsupported-operator] Operator `/` is not supported between objects of type `Series[Timestamp]` and `timedelta64[timedelta]`
pip (https://github.com/pypa/pip)
+ src/pip/_internal/cli/spinners.py:54:9 error[invalid-assignment] Object of type `cycle[str]` is not assignable to attribute `_spin_cycle` of type `cycle[LiteralString]`
+ src/pip/_internal/cli/spinners.py:165:9 error[invalid-assignment] Object of type `cycle[str]` is not assignable to attribute `_spin_cycle` of type `cycle[LiteralString]`
prefect (https://github.com/PrefectHQ/prefect)
- src/prefect/utilities/asyncutils/__init__.py:198:16 error[invalid-return-type] Return type does not match returned value: expected `R@run_coro_as_sync | None`, found `CoroutineType[Any, Any, R@run_coro_as_sync | None] | R@run_coro_as_sync | None`
+ src/prefect/utilities/asyncutils/__init__.py:198:16 error[invalid-return-type] Return type does not match returned value: expected `R@run_coro_as_sync | None`, found `CoroutineType[Any, Any, R@run_coro_as_sync | None] | None | R@run_coro_as_sync`
- src/prefect/utilities/asyncutils/__init__.py:207:20 error[invalid-return-type] Return type does not match returned value: expected `R@run_coro_as_sync | None`, found `CoroutineType[Any, Any, R@run_coro_as_sync | None] | R@run_coro_as_sync | None`
+ src/prefect/utilities/asyncutils/__init__.py:207:20 error[invalid-return-type] Return type does not match returned value: expected `R@run_coro_as_sync | None`, found `CoroutineType[Any, Any, R@run_coro_as_sync | None] | None | R@run_coro_as_sync`
rotki (https://github.com/rotki/rotki)
+ rotkehlchen/chain/ethereum/oracles/uniswap.py:326:22 error[invalid-argument-type] Argument to `FVal.__init__` is incorrect: Expected `int | float | bytes | ... omitted 3 union elements`, found `SupportsMul[SupportsRMul[Never, Never] | Divergent, Never] | Literal[1]`
scikit-learn (https://github.com/scikit-learn/scikit-learn)
+ sklearn/model_selection/_search.py:177:13 error[missing-argument] No argument provided for required parameter `initial`
+ sklearn/model_selection/_search.py:177:21 error[invalid-argument-type] Argument is incorrect: Expected `Iterable[SupportsRMul[SupportsMul[SupportsRMul[SupportsMul[SupportsRMul[Never, Never], Never], SupportsMul[SupportsRMul[Never, Never], Never]], Never], SupportsMul[SupportsRMul[SupportsMul[SupportsRMul[Never, Never], Never], SupportsMul[SupportsRMul[Never, Never], Never]], Never]]]`, found `GeneratorType[int, None, None]`
sympy (https://github.com/sympy/sympy)
- FAILED old=success(1) new=timeout(None)
tornado (https://github.com/tornadoweb/tornado)
- tornado/gen.py:239:62 error[invalid-argument-type] Argument to `Runner.__init__` is incorrect: Expected `None | Awaitable[Unknown] | list[Awaitable[Unknown]] | dict[Any, Awaitable[Unknown]] | Future[Unknown]`, found `_T@next | _T@next | _VT@next`
+ tornado/gen.py:239:62 error[invalid-argument-type] Argument to `Runner.__init__` is incorrect: Expected `None | Awaitable[Unknown] | list[Awaitable[Unknown]] | dict[Any, Awaitable[Unknown]] | Future[Unknown]`, found `_T@next | _VT@next | _T@next`
vision (https://github.com/pytorch/vision)
+ torchvision/prototype/datasets/_builtin/mnist.py:51:25 error[missing-argument] No argument provided for required parameter `initial`
+ torchvision/prototype/datasets/_builtin/mnist.py:51:30 error[invalid-argument-type] Argument is incorrect: Expected `Iterable[SupportsRMul[SupportsMul[SupportsRMul[SupportsMul[SupportsRMul[Never, Never], Never], SupportsMul[SupportsRMul[Never, Never], Never]], Never], SupportsMul[SupportsRMul[SupportsMul[SupportsRMul[Never, Never], Never], SupportsMul[SupportsRMul[Never, Never], Never]], Never]]]`, found `(list[int] & ~AlwaysFalsy) | (list[Unknown] & ~AlwaysFalsy)`
+ torchvision/prototype/datasets/_builtin/mnist.py:61:45 error[invalid-argument-type] Argument is incorrect: Expected `int`, found `SupportsMul[SupportsRMul[Never, Never], Never] | Literal[1]`
xarray (https://github.com/pydata/xarray)
- xarray/core/dataarray.py:1494:29 error[invalid-assignment] Object of type `dict[Hashable, object]` is not assignable to `str | int | tuple[int, ...] | None | Mapping[Any, Resampler | str | int | tuple[int, ...] | None]`
+ xarray/core/dataarray.py:1494:29 error[invalid-assignment] Object of type `dict[object, object]` is not assignable to `str | int | tuple[int, ...] | None | Mapping[Any, Resampler | str | int | tuple[int, ...] | None]`
- xarray/core/indexes.py:1748:9 error[invalid-assignment] Object of type `dict[Any, T_PandasOrXarrayIndex@Indexes | Index | Unknown]` is not assignable to attribute `_indexes` of type `dict[Any, T_PandasOrXarrayIndex@Indexes]`
+ xarray/core/indexes.py:1748:9 error[invalid-assignment] Object of type `dict[Any, Index | T_PandasOrXarrayIndex@Indexes]` is not assignable to attribute `_indexes` of type `dict[Any, T_PandasOrXarrayIndex@Indexes]`
- xarray/structure/combine.py:40:50 error[invalid-argument-type] Argument to function `_infer_tile_ids_from_nested_list` is incorrect: Expected `NestedSequence[NestedSequence[T@_infer_concat_order_from_positions]]`, found `NestedSequence[T@_infer_concat_order_from_positions]`|
Closing in favor of #25435 |
This is a simpler alternative to #22400. Instead of completely reworking our representation of individual constraints, we just wrap the lower and upper bounds in `Option`. If either is `None`, that bound is _missing_, as opposed to having an explicit `Never` lower bound / `object` upper bound. This is much less invasive of a change! Closes astral-sh/ty#3558
A refactoring I poked at over the holiday break. Pushing up to see what CI says about the performance.
Closes astral-sh/ty#3558