Skip to content

Conversation

sharkdp
Copy link
Contributor

@sharkdp sharkdp commented Aug 28, 2025

Summary

Decrease the maximum number of literals in a union before we collapse to the supertype. The better fix for this will be astral-sh/ty#957, but it is very tempting to solve this for now by simply decreasing the limit by one, to get below the salsa limit of 200.

closes astral-sh/ty#660

Test Plan

Added a regression test that would previously lead to a "too many cycle iterations" panic.

@sharkdp sharkdp added bug Something isn't working ty Multi-file analysis & type inference labels Aug 28, 2025
Copy link
Contributor

Diagnostic diff on typing conformance tests

No changes detected when running ty on typing conformance tests ✅

Copy link
Contributor

mypy_primer results

No ecosystem changes detected ✅
No memory usage changes detected ✅

@sharkdp sharkdp merged commit 1842cfe into main Aug 28, 2025
40 checks passed
@sharkdp sharkdp deleted the david/fix-660 branch August 28, 2025 14:46
dcreager added a commit that referenced this pull request Aug 28, 2025
* main:
  Fix mdtest ignore python code blocks (#20139)
  [ty] add support for cyclic legacy generic protocols (#20125)
  [ty] add cycle detection for find_legacy_typevars (#20124)
  Use new diff rendering format in tests (#20101)
  [ty] Fix 'too many cycle iterations' for unions of literals (#20137)
  [ty] No boundness analysis for implicit instance attributes (#20128)
  Bump 0.12.11 (#20136)
  [ty] Benchmarks for problematic implicit instance attributes cases (#20133)
  [`pyflakes`] Fix `allowed-unused-imports` matching for top-level modules (`F401`) (#20115)
  Move GitLab output rendering to `ruff_db` (#20117)
  [ty] Evaluate reachability of non-definitely-bound to Ambiguous (#19579)
  [ty] Introduce a representation for the top/bottom materialization of an invariant generic (#20076)
  [`flake8-async`] Implement `blocking-http-call-httpx` (`ASYNC212`) (#20091)
  [ty] print diagnostics with fully qualified name to disambiguate some cases (#19850)
  [`ruff`] Preserve relative whitespace in multi-line expressions (`RUF033`) (#19647)
second-ed pushed a commit to second-ed/ruff that referenced this pull request Sep 9, 2025
…h#20137)

## Summary

Decrease the maximum number of literals in a union before we collapse to
the supertype. The better fix for this will be
astral-sh/ty#957, but it is very tempting to
solve this for now by simply decreasing the limit by one, to get below
the salsa limit of 200.

closes astral-sh/ty#660

## Test Plan

Added a regression test that would previously lead to a "too many cycle
iterations" panic.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working ty Multi-file analysis & type inference

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Too-many fix point iterations in growing union of literals

2 participants