diff --git a/src/black/linegen.py b/src/black/linegen.py index a2e41bf5912..fa6aba59a57 100644 --- a/src/black/linegen.py +++ b/src/black/linegen.py @@ -1231,7 +1231,6 @@ def generate_trailers_to_omit(line: Line, line_length: int) -> Iterator[Set[Leaf omit.add(id(closing_bracket)) omit.update(inner_brackets) inner_brackets.clear() - yield omit if ( prev @@ -1246,6 +1245,7 @@ def generate_trailers_to_omit(line: Line, line_length: int) -> Iterator[Set[Leaf if leaf.value: opening_bracket = leaf.opening_bracket closing_bracket = leaf + yield omit def run_transformer( diff --git a/tests/data/simple_cases/deep_trailing_commas.py b/tests/data/simple_cases/deep_trailing_commas.py new file mode 100644 index 00000000000..1eeeb92179c --- /dev/null +++ b/tests/data/simple_cases/deep_trailing_commas.py @@ -0,0 +1,33 @@ +assert foo(1, 2, 3,)[0] == {"bar": "baz"} + +a = [1,][2]() +b = [1,][2](3) + +[1, 2,]()(3, 4,)()(5, 6,)(0)(0) + +# output + + +assert foo( + 1, + 2, + 3, +)[0] == {"bar": "baz"} + +a = [ + 1, +][2]() +b = [ + 1, +][2](3) + +[ + 1, + 2, +]()( + 3, + 4, +)()( + 5, + 6, +)(0)(0)