Break with on end-of-line trailing comments (#7685)

## Summary

Ensures that:

```python
with (
    a  # comment
):
    pass
```

Retains its parentheses.

Closes https://github.com/astral-sh/ruff/issues/6750.

## Test Plan

`cargo test`
This commit is contained in:
Charlie Marsh 2023-09-27 20:16:40 -04:00 committed by GitHub
parent 58b50a6290
commit a6d79c03b3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 118 additions and 12 deletions

View file

@ -84,9 +84,9 @@ impl FormatNodeRule<StmtWith> for FormatStmtWith {
}))
.fmt(f)?;
} else if let [item] = item.items.as_slice() {
// This is similar to `maybe_parenthesize_expression`, but we're not dealing with an
// expression here, it's a `WithItem`.
if comments.has_leading(item) || comments.has_trailing_own_line(item) {
// This is similar to `maybe_parenthesize_expression`, but we're not
// dealing with an expression here, it's a `WithItem`.
if comments.has_leading(item) || comments.has_trailing(item) {
optional_parentheses(&item.format()).fmt(f)?;
} else {
item.format().fmt(f)?;