Skip to content

[ty] Track list literal elements as individual places#22929

Closed
ibraheemdev wants to merge 1 commit intomainfrom
ibraheem/list-element-places
Closed

[ty] Track list literal elements as individual places#22929
ibraheemdev wants to merge 1 commit intomainfrom
ibraheem/list-element-places

Conversation

@ibraheemdev
Copy link
Member

@ibraheemdev ibraheemdev commented Jan 28, 2026

Extends #22882 to list literals.

@ibraheemdev ibraheemdev added ty Multi-file analysis & type inference ecosystem-analyzer labels Jan 28, 2026
@astral-sh-bot
Copy link

astral-sh-bot bot commented Jan 28, 2026

Typing conformance results

No changes detected ✅

@astral-sh-bot
Copy link

astral-sh-bot bot commented Jan 28, 2026

mypy_primer results

Changes were detected when running on open source projects
rich (https://github.com/Textualize/rich)
- tests/test_pretty.py:319:5: warning[possibly-missing-attribute] Attribute `append` may be missing on object of type `Unknown | int | list[Unknown]`
- Found 354 diagnostics
+ Found 353 diagnostics

ignite (https://github.com/pytorch/ignite)
- tests/ignite/engine/test_deterministic.py:880:12: warning[possibly-missing-attribute] Attribute `device` may be missing on object of type `Unknown | tuple[Any, ...]`
- tests/ignite/metrics/test_metric.py:1226:9: error[unresolved-attribute] Unresolved attribute `_numerator` on type `Metric`
- tests/ignite/metrics/test_metric.py:1227:9: error[unresolved-attribute] Unresolved attribute `_denominator` on type `Metric`
- tests/ignite/metrics/test_metric.py:1228:9: error[unresolved-attribute] Unresolved attribute `_weight` on type `Metric`
- tests/ignite/metrics/test_metric.py:1229:9: error[unresolved-attribute] Unresolved attribute `_updated` on type `Metric`
- tests/ignite/metrics/test_metric.py:1231:9: error[unresolved-attribute] Unresolved attribute `_numerator` on type `Metric`
- tests/ignite/metrics/test_metric.py:1232:9: error[unresolved-attribute] Unresolved attribute `_denominator` on type `Metric`
- tests/ignite/metrics/test_metric.py:1233:9: error[unresolved-attribute] Unresolved attribute `_weight` on type `Metric`
- tests/ignite/metrics/test_metric.py:1234:9: error[unresolved-attribute] Unresolved attribute `_updated` on type `Metric`
- Found 2072 diagnostics
+ Found 2063 diagnostics

pip (https://github.com/pypa/pip)
- src/pip/_vendor/pygments/lexers/__init__.py:340:12: error[call-non-callable] Object of type `int` is not callable
- src/pip/_vendor/pygments/lexers/__init__.py:340:12: error[call-non-callable] Object of type `float` is not callable
- Found 625 diagnostics
+ Found 623 diagnostics

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

freqtrade (https://github.com/freqtrade/freqtrade)
- freqtrade/rpc/discord.py:57:21: warning[possibly-missing-attribute] Attribute `append` may be missing on object of type `Unknown | str | int | list[Unknown]`
- Found 655 diagnostics
+ Found 654 diagnostics

mkdocs (https://github.com/mkdocs/mkdocs)
- mkdocs/tests/structure/nav_tests.py:96:18: error[invalid-argument-type] Argument to bound method `__init__` is incorrect: Expected `str`, found `Unknown | str | dict[Unknown | str, Unknown | str]`
- mkdocs/tests/structure/nav_tests.py:97:18: error[invalid-argument-type] Method `__getitem__` of type `Overload[(key: SupportsIndex | slice[Any, Any, Any], /) -> LiteralString, (key: SupportsIndex | slice[Any, Any, Any], /) -> str]` cannot be called with key of type `Literal["About"]` on object of type `str`
- Found 221 diagnostics
+ Found 219 diagnostics

sphinx (https://github.com/sphinx-doc/sphinx)
+ sphinx/search/ja.py:506:31: error[unresolved-attribute] Object of type `tuple[str, ...]` has no attribute `strip`
+ sphinx/search/ja.py:512:13: error[unsupported-operator] Operator `+=` is not supported between objects of type `tuple[str, ...]` and `Unknown | str`
- Found 344 diagnostics
+ Found 346 diagnostics

apprise (https://github.com/caronc/apprise)
- apprise/plugins/discord.py:386:25: error[invalid-assignment] Cannot assign to a subscript on an object of type `str`
- apprise/plugins/discord.py:386:25: error[invalid-assignment] Cannot assign to a subscript on an object of type `int`
- apprise/plugins/discord.py:386:25: error[invalid-assignment] Cannot assign to a subscript on an object of type `tuple[int, int, int]`
- apprise/plugins/line.py:174:13: error[invalid-assignment] Cannot assign to a subscript on an object of type `str`
- apprise/plugins/slack.py:504:17: warning[possibly-missing-attribute] Attribute `insert` may be missing on object of type `Unknown | list[Unknown | dict[Unknown | str, Unknown | str | dict[Unknown | str, Unknown | str]]] | str | int | tuple[int, int, int]`
- apprise/plugins/slack.py:544:17: warning[possibly-missing-attribute] Attribute `append` may be missing on object of type `Unknown | list[Unknown | dict[Unknown | str, Unknown | str | dict[Unknown | str, Unknown | str]]] | str | int | tuple[int, int, int]`
- Found 2676 diagnostics
+ Found 2670 diagnostics

setuptools (https://github.com/pypa/setuptools)
- setuptools/_distutils/tests/test_build_ext.py:380:16: warning[possibly-missing-attribute] Attribute `undef_macros` may be missing on object of type `Unknown | tuple[str, dict[Unknown | str, Unknown | list[Unknown | str] | str | list[Unknown | tuple[str, str, str] | str]]]`
- setuptools/_distutils/tests/test_build_ext.py:381:16: warning[possibly-missing-attribute] Attribute `define_macros` may be missing on object of type `Unknown | tuple[str, dict[Unknown | str, Unknown | list[Unknown | str] | str | list[Unknown | tuple[str, str, str] | str]]]`
+ setuptools/_distutils/tests/test_build_ext.py:380:16: error[unresolved-attribute] Object of type `tuple[Literal["foo.bar"], dict[Unknown | str, Unknown | list[Unknown | str] | str | list[Unknown | tuple[str, str, str] | str]]]` has no attribute `undef_macros`
+ setuptools/_distutils/tests/test_build_ext.py:381:16: error[unresolved-attribute] Object of type `tuple[Literal["foo.bar"], dict[Unknown | str, Unknown | list[Unknown | str] | str | list[Unknown | tuple[str, str, str] | str]]]` has no attribute `define_macros`

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

scikit-learn (https://github.com/scikit-learn/scikit-learn)
- sklearn/model_selection/tests/test_classification_threshold.py:393:20: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- Found 2465 diagnostics
+ Found 2464 diagnostics

dd-trace-py (https://github.com/DataDog/dd-trace-py)
- ddtrace/llmobs/_integrations/langchain.py:697:33: error[invalid-argument-type] Argument to function `len` is incorrect: Expected `Sized`, found `Unknown | list[int | float] | list[list[int | float]] | int | float`
+ ddtrace/llmobs/_integrations/langchain.py:697:33: error[invalid-argument-type] Argument to function `len` is incorrect: Expected `Sized`, found `list[int | float] | list[list[int | float]] | Unknown | int | float`
- tests/appsec/ai_guard/api/test_api_client.py:272:9: warning[possibly-missing-attribute] Attribute `append` may be missing on object of type `Unknown | list[ToolCall] | None`
+ tests/appsec/ai_guard/api/test_api_client.py:272:9: warning[possibly-missing-attribute] Attribute `append` may be missing on object of type `list[ToolCall] | None`

pandas (https://github.com/pandas-dev/pandas)
- pandas/core/frame.py:14699:20: error[invalid-return-type] Return type does not match returned value: expected `DataFrame`, found `Unknown | DataFrame | Series`
+ pandas/core/frame.py:14699:20: error[invalid-return-type] Return type does not match returned value: expected `DataFrame`, found `DataFrame | Series | Unknown`
- pandas/io/parsers/python_parser.py:736:57: error[invalid-argument-type] Argument to bound method `_handle_usecols` is incorrect: Expected `list[str | bytes | date | ... omitted 11 union elements]`, found `Unknown | list[int]`
+ pandas/io/parsers/python_parser.py:736:57: error[invalid-argument-type] Argument to bound method `_handle_usecols` is incorrect: Expected `list[str | bytes | date | ... omitted 11 union elements]`, found `list[int]`
- pandas/tests/extension/test_arrow.py:3307:30: warning[possibly-missing-attribute] Attribute `unit` may be missing on object of type `Unknown | Timedelta | NAType | Timestamp`
- pandas/tests/indexes/datetimes/test_constructors.py:1020:13: warning[possibly-missing-attribute] Attribute `tz_localize` may be missing on object of type `Unknown | Timestamp | str | int`
- pandas/tests/series/methods/test_astype.py:127:13: warning[possibly-missing-attribute] Attribute `tz_localize` may be missing on object of type `Unknown | Timestamp | str | int`
- pandas/tests/test_aggregation.py:39:28: error[too-many-positional-arguments] Too many positional arguments: expected 1, got 2
- pandas/tests/test_aggregation.py:40:28: error[too-many-positional-arguments] Too many positional arguments: expected 1, got 3
- pandas/tests/test_aggregation.py:41:28: error[too-many-positional-arguments] Too many positional arguments: expected 1, got 2
- pandas/tests/test_aggregation.py:41:31: error[unknown-argument] Argument `b` does not match any known parameter
- pandas/tests/util/test_hashing.py:95:21: error[invalid-argument-type] Argument to function `hash_tuples` is incorrect: Expected `MultiIndex | Iterable[tuple[Hashable, ...]]`, found `Unknown | tuple[int, str]`
+ pandas/tests/util/test_hashing.py:95:21: error[invalid-argument-type] Argument to function `hash_tuples` is incorrect: Expected `MultiIndex | Iterable[tuple[Hashable, ...]]`, found `tuple[Literal[1], Literal["one"]]`
- Found 3763 diagnostics
+ Found 3756 diagnostics

materialize (https://github.com/MaterializeInc/materialize)
- misc/python/materialize/cli/orchestratord.py:312:9: error[invalid-assignment] Cannot assign to a subscript on an object of type `str`
- Found 535 diagnostics
+ Found 534 diagnostics

zulip (https://github.com/zulip/zulip)
- zerver/lib/user_groups.py:1145:50: warning[possibly-missing-attribute] Attribute `id` may be missing on object of type `Unknown | NamedUserGroup`
+ zerver/lib/user_groups.py:1145:50: error[unresolved-attribute] Object of type `NamedUserGroup` has no attribute `id`

rotki (https://github.com/rotki/rotki)
+ rotkehlchen/tests/api/test_history_base_entry.py:1266:60: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
+ rotkehlchen/tests/api/test_history_base_entry.py:1950:60: warning[unused-type-ignore-comment] Unused blanket `type: ignore` directive
+ rotkehlchen/tests/unit/accounting/test_basic.py:320:138: error[unresolved-attribute] Object of type `tuple[SwapEvent, ...]` has no attribute `timestamp`
- Found 2050 diagnostics
+ Found 2053 diagnostics

sympy (https://github.com/sympy/sympy)
+ sympy/functions/elementary/hyperbolic.py:744:20: warning[division-by-zero] Cannot divide object of type `Literal[0]` by zero
- sympy/functions/elementary/trigonometric.py:1186:20: warning[possibly-missing-attribute] Attribute `subs` may be missing on object of type `Unknown | int | float`
+ sympy/functions/elementary/trigonometric.py:1186:20: error[unresolved-attribute] Object of type `float` has no attribute `subs`
+ sympy/functions/elementary/trigonometric.py:1186:21: warning[division-by-zero] Cannot divide object of type `Literal[0]` by zero
- sympy/functions/elementary/trigonometric.py:1575:20: warning[possibly-missing-attribute] Attribute `subs` may be missing on object of type `Unknown | int | float`
+ sympy/functions/elementary/trigonometric.py:1575:20: error[unresolved-attribute] Object of type `float` has no attribute `subs`
+ sympy/functions/elementary/trigonometric.py:1575:21: warning[division-by-zero] Cannot divide object of type `Literal[0]` by zero
- sympy/polys/polyroots.py:636:9: error[invalid-assignment] Cannot assign to a subscript on an object of type `None`
- sympy/polys/polyroots.py:637:9: error[invalid-assignment] Cannot assign to a subscript on an object of type `None`
- sympy/polys/polyroots.py:638:9: error[invalid-assignment] Cannot assign to a subscript on an object of type `None`
- sympy/polys/polyroots.py:639:9: error[invalid-assignment] Cannot assign to a subscript on an object of type `None`
- sympy/polys/polyroots.py:645:10: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:646:12: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:649:25: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:650:18: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:665:20: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:669:24: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:672:22: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/polys/polyroots.py:673:22: error[not-subscriptable] Cannot subscript object of type `None` with no `__getitem__` method
- sympy/printing/tests/test_llvmjit.py:141:17: warning[possibly-missing-attribute] Attribute `subs` may be missing on object of type `Unknown | tuple[Symbol, Unknown]`
- Found 15655 diagnostics
+ Found 15645 diagnostics

core (https://github.com/home-assistant/core)
+ homeassistant/util/variance.py:47:12: error[invalid-return-type] Return type does not match returned value: expected `(**_P@ignore_variance) -> _R@ignore_variance`, found `_Wrapped[_P@ignore_variance, int | _R@ignore_variance | float | datetime, _P@ignore_variance, _R@ignore_variance | int | float | datetime]`
- Found 14507 diagnostics
+ Found 14508 diagnostics

scipy (https://github.com/scipy/scipy)
- scipy/optimize/tests/test_optimize.py:1557:28: error[unsupported-operator] Operator `>` is not supported between objects of type `Unknown | None` and `float`
+ scipy/optimize/tests/test_optimize.py:1557:28: error[unsupported-operator] Operator `>` is not supported between objects of type `None` and `float`
- scipy/optimize/tests/test_optimize.py:1557:57: error[unsupported-operator] Operator `<` is not supported between objects of type `Unknown | None` and `Literal[3]`
+ scipy/optimize/tests/test_optimize.py:1557:57: error[unsupported-operator] Operator `<` is not supported between objects of type `None` and `Literal[3]`

Memory usage changes were detected when running on open source projects
flake8 (https://github.com/pycqa/flake8)
- TOTAL MEMORY USAGE: ~66MB
+ TOTAL MEMORY USAGE: ~98MB
-     struct fields = ~3MB
+     struct fields = ~4MB
-     memo fields = ~49MB
+     memo fields = ~80MB

trio (https://github.com/python-trio/trio)
- TOTAL MEMORY USAGE: ~167MB
+ TOTAL MEMORY USAGE: ~224MB
-     struct metadata = ~10MB
+     struct metadata = ~11MB
-     memo fields = ~108MB
+     memo fields = ~176MB

sphinx (https://github.com/sphinx-doc/sphinx)
- TOTAL MEMORY USAGE: ~287MB
+ TOTAL MEMORY USAGE: ~366MB
-     struct fields = ~20MB
+     struct fields = ~21MB
-     memo fields = ~176MB
+     memo fields = ~247MB

prefect (https://github.com/PrefectHQ/prefect)
- TOTAL MEMORY USAGE: ~725MB
+ TOTAL MEMORY USAGE: ~799MB
-     memo fields = ~424MB
+     memo fields = ~490MB

@astral-sh-bot
Copy link

astral-sh-bot bot commented Jan 28, 2026

ecosystem-analyzer results

Lint rule Added Removed Changed
possibly-missing-attribute 0 14 1
unresolved-attribute 7 8 0
invalid-assignment 4 9 1
invalid-argument-type 2 2 4
not-subscriptable 0 8 0
invalid-return-type 1 0 4
division-by-zero 3 0 0
too-many-positional-arguments 0 3 0
unsupported-operator 1 0 2
call-non-callable 0 2 0
type-assertion-failure 0 2 0
unused-type-ignore-comment 2 0 0
unknown-argument 0 1 0
Total 20 49 12

Full report with detailed diff (timing results)

@ibraheemdev
Copy link
Member Author

ibraheemdev commented Jan 28, 2026

Not sure we can justify the performance/memory usage regressions on this one 🙃

@ibraheemdev ibraheemdev marked this pull request as ready for review January 28, 2026 20:55
@codspeed-hq
Copy link

codspeed-hq bot commented Jan 28, 2026

Merging this PR will degrade performance by 45.38%

❌ 14 regressed benchmarks
✅ 40 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Performance Changes

Mode Benchmark BASE HEAD Efficiency
WallTime tanjun 2.5 s 2.6 s -4.57%
WallTime altair 4.5 s 4.8 s -6.41%
Simulation ty_micro[very_large_tuple] 69.6 ms 74.5 ms -6.62%
Simulation anyio 1.2 s 1.6 s -25.78%
Simulation ty_micro[complex_constrained_attributes_1] 68.1 ms 73.3 ms -7.06%
Simulation ty_check_file[cold] 130.4 ms 136.3 ms -4.3%
Simulation ty_micro[many_tuple_assignments] 65.8 ms 70.5 ms -6.59%
Simulation ty_micro[complex_constrained_attributes_3] 71.3 ms 76.4 ms -6.7%
Simulation ty_micro[many_tuple_assignments] 67.8 ms 72.8 ms -6.78%
Simulation ty_micro[complex_constrained_attributes_2] 68 ms 73 ms -6.78%
Simulation ty_micro[many_string_assignments] 77.6 ms 82.7 ms -6.22%
Simulation DateType 235.3 ms 430.8 ms -45.38%
Simulation attrs 433.8 ms 634 ms -31.58%
Simulation hydra-zen 1.2 s 1.4 s -14.52%

Comparing ibraheem/list-element-places (3f680c8) with main (89b88c5)

Open in CodSpeed

@astral-sh-bot
Copy link

astral-sh-bot bot commented Jan 28, 2026

ruff-ecosystem results

Linter (stable)

✅ ecosystem check detected no linter changes.

Linter (preview)

✅ ecosystem check detected no linter changes.

Formatter (stable)

✅ ecosystem check detected no format changes.

Formatter (preview)

✅ ecosystem check detected no format changes.

@carljm
Copy link
Contributor

carljm commented Jan 31, 2026

Yeah I think we can drop this for now. It's possible we could bring it back with some heuristics to mitigate the perf impact, but I think there are higher priority things to do.

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

Labels

ecosystem-analyzer ty Multi-file analysis & type inference

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants