Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[flake8-simplify] Do not emit diagnostics for expressions inside string type annotations (SIM222, SIM223) #15405

Merged
merged 2 commits into from
Jan 17, 2025

Conversation

InSyncWithFoo
Copy link
Contributor

Summary

Resolves #7127.

Test Plan

cargo nextest run and cargo insta test.

…ring type annotations (`SIM222`, `SIM223`)
Copy link
Contributor

github-actions bot commented Jan 10, 2025

ruff-ecosystem results

Linter (stable)

✅ ecosystem check detected no linter changes.

Linter (preview)

✅ ecosystem check detected no linter changes.

@charliermarsh
Copy link
Member

I think we should still emit diagnostics here; we just may not want to offer a fix.

@dhruvmanila dhruvmanila added the bug Something isn't working label Jan 16, 2025
Copy link
Member

@dhruvmanila dhruvmanila left a comment

Choose a reason for hiding this comment

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

I agree with Charlie that we should keep highlighting this but avoid providing a fix. As such, this is an invalid type expression.

@InSyncWithFoo
Copy link
Contributor Author

"'spline' or 'linear'" is not just an invalid type expression; It is a quoted invalid type expression. Such strings are very likely not intended to be type hints and would not benefit from an expression simplification.

It should be up to F722, F821 and other rules as well as type checkers to determine what to do with them.

Copy link
Member

@dhruvmanila dhruvmanila left a comment

Choose a reason for hiding this comment

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

Related #10586

I thought about this more and I think this should be fine. We've done this kind of fixes before.

@dhruvmanila dhruvmanila merged commit 556116e into astral-sh:main Jan 17, 2025
21 checks passed
@InSyncWithFoo InSyncWithFoo deleted the SIM222 branch January 17, 2025 12:52
dcreager added a commit that referenced this pull request Jan 17, 2025
* main:
  [red-knot] Inline `SubclassOfType::as_instance_type_of_metaclass()` (#15556)
  [`flake8-comprehensions`] strip parentheses around generators in `unnecessary-generator-set` (`C401`) (#15553)
  [`pylint`] Implement `redefined-slots-in-subclass` (`W0244`) (#9640)
  [`flake8-bugbear`] Do not raise error if keyword argument is present and target-python version is less or equals than 3.9 (`B903`) (#15549)
  [red-knot] `type[T]` is disjoint from `type[S]` if the metaclass of `T` is disjoint from the metaclass of `S` (#15547)
  [red-knot] Pure instance variables declared in class body (#15515)
  Update snapshots of #15507 with new annotated snipetts rendering (#15546)
  [`pylint`] Do not report methods with only one `EM101`-compatible `raise` (`PLR6301`) (#15507)
  Fix unstable f-string formatting for expressions containing a trailing comma (#15545)
  Support `knot.toml` files in project discovery (#15505)
  Add support for configuring knot in `pyproject.toml` files (#15493)
  Fix bracket spacing for single-element tuples in f-string expressions (#15537)
  [`flake8-simplify`] Do not emit diagnostics for expressions inside string type annotations (`SIM222`, `SIM223`) (#15405)
  [`flake8-pytest-style`] Do not emit diagnostics for empty `for` loops (`PT012`, `PT031`) (#15542)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Rule SIM222 cause autofix error
3 participants