Skip to content

Commit

Permalink
Fix COM812 false positive in string subscript (#4493)
Browse files Browse the repository at this point in the history
  • Loading branch information
JonathanPlasse committed May 18, 2023
1 parent 73efbeb commit 0e4d174
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 1 deletion.
8 changes: 8 additions & 0 deletions crates/ruff/resources/test/fixtures/flake8_commas/COM81.py
Original file line number Diff line number Diff line change
Expand Up @@ -631,3 +631,11 @@ def foo(
the_first_one = next(
(i for i in range(10) if i // 2 == 0) # COM812 fix should include the final bracket
)

foo = namedtuple(
name="foo",
status="bar",
message="sfdsdfsdgs fsdfsdf output!dsfdfsdjkg ghfskdjghkdssd sd fsdf s\n"[
:20
],
)
4 changes: 3 additions & 1 deletion crates/ruff/src/rules/flake8_commas/rules.rs
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ enum TokenType {
Def,
Lambda,
Colon,
String,
}

/// Simplified token specialized for the task.
Expand Down Expand Up @@ -55,6 +56,7 @@ impl<'tok> Token<'tok> {
// Import treated like a function.
Tok::Import => TokenType::Named,
Tok::Name { .. } => TokenType::Named,
Tok::String { .. } => TokenType::String,
Tok::Comma => TokenType::Comma,
Tok::Lpar => TokenType::OpeningBracket,
Tok::Lsqb => TokenType::OpeningSquareBracket,
Expand Down Expand Up @@ -265,7 +267,7 @@ pub(crate) fn trailing_commas(
}
},
TokenType::OpeningSquareBracket => match prev.type_ {
TokenType::ClosingBracket | TokenType::Named => {
TokenType::ClosingBracket | TokenType::Named | TokenType::String => {
stack.push(Context::new(ContextType::Subscript));
}
_ => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -936,5 +936,7 @@ COM81.py:632:42: COM812 [*] Trailing comma missing
632 |- (i for i in range(10) if i // 2 == 0) # COM812 fix should include the final bracket
632 |+ (i for i in range(10) if i // 2 == 0), # COM812 fix should include the final bracket
633 633 | )
634 634 |
635 635 | foo = namedtuple(


0 comments on commit 0e4d174

Please sign in to comment.