[flake8-implicit-str-concat] Avoid invalid fix generated by autofix (ISC003)
#21517
+93
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
As reported in #19757:
While attempting ISC003 autofix for an expression with explicit string concatenation, with either operand being a string literal that wraps across multiple lines (in parentheses) - it resulted in generating a fix which caused runtime error.
Example:
was being auto-fixed to:
which raised
TypeError: 'str' object is not callableThis commit makes changes to just report diagnostic - no autofix in such cases.
Fixes #19757.
Test Plan
Added example scenarios in
crates/ruff_linter/resources/test/fixtures/flake8_implicit_str_concat/ISC.py.