Skip to content

Conversation

@AlexWaygood
Copy link
Member

Summary

This PR is a pure refactor to reduce the amount of indentation and nested scopes in TypeInferenceBuilder::infer_attribute_load. With this change, rustfmt is once again prepared to autoformat this function 🎉 (It gives up on main.)

The motivation here is to make the function more readable, and also make it easier to add more subdiagnostic hints when we report unresolved attributes.

Test Plan

All existing tests pass. This PR should have no functional change at all.

@AlexWaygood AlexWaygood added the internal An internal refactor or improvement label Nov 21, 2025
@AlexWaygood AlexWaygood added the ty Multi-file analysis & type inference label Nov 21, 2025
@AlexWaygood AlexWaygood enabled auto-merge (squash) November 21, 2025 14:09
@astral-sh-bot
Copy link

astral-sh-bot bot commented Nov 21, 2025

Diagnostic diff on typing conformance tests

No changes detected when running ty on typing conformance tests ✅

@astral-sh-bot
Copy link

astral-sh-bot bot commented Nov 21, 2025

mypy_primer results

Changes were detected when running on open source projects
scikit-build-core (https://github.com/scikit-build/scikit-build-core)
- src/scikit_build_core/build/wheel.py:98:20: error[no-matching-overload] No overload of bound method `__init__` matches arguments
- Found 45 diagnostics
+ Found 44 diagnostics

No memory usage changes detected ✅

@AlexWaygood AlexWaygood merged commit 762c445 into main Nov 21, 2025
42 checks passed
@AlexWaygood AlexWaygood deleted the alex/submodule-attribute-hint branch November 21, 2025 14:12
dcreager added a commit that referenced this pull request Nov 24, 2025
…d-typevar

* origin/main: (24 commits)
  [ty] Remove brittle constraint set reveal tests (#21568)
  [`ruff`] Catch more dummy variable uses (`RUF052`) (#19799)
  [ty] Use the same snapshot handling as other tests (#21564)
  [ty] suppress autocomplete suggestions during variable binding (#21549)
  Set severity for non-rule diagnostics (#21559)
  [ty] Add `with_type` convenience to display code (#21563)
  [ty] Implement docstring rendering to markdown (#21550)
  [ty] Reduce indentation of `TypeInferenceBuilder::infer_attribute_load` (#21560)
  Bump 0.14.6 (#21558)
  [ty] Improve debug messages when imports fail (#21555)
  [ty] Add support for relative import completions
  [ty] Refactor detection of import statements for completions
  [ty] Use dedicated collector for completions
  [ty] Attach subdiagnostics to `unresolved-import` errors for relative imports as well as absolute imports (#21554)
  [ty] support PEP 613 type aliases (#21394)
  [ty] More low-hanging fruit for inlay hint goto-definition (#21548)
  [ty] implement `TypedDict` structural assignment (#21467)
  [ty] Add more random TypeDetails and tests (#21546)
  [ty] Add goto for `Unknown` when it appears in an inlay hint (#21545)
  [ty] Add type definitions for `Type::SpecialForm`s (#21544)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

internal An internal refactor or improvement ty Multi-file analysis & type inference

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants