mirror of
https://github.com/astral-sh/ruff.git
synced 2025-10-02 22:54:42 +00:00
Avoid unstable formatting in ellipsis-only body with trailing comment (#8984)
## Summary We should avoid inlining the ellipsis in: ```python def h(): ... # bye ``` Just as we omit the ellipsis in: ```python def h(): # bye ... ``` Closes https://github.com/astral-sh/ruff/issues/8905.
This commit is contained in:
parent
bfae1f1412
commit
6fe8f8a272
3 changed files with 18 additions and 3 deletions
|
@ -68,6 +68,10 @@ with True:
|
||||||
with True:
|
with True:
|
||||||
... # comment
|
... # comment
|
||||||
|
|
||||||
|
with True:
|
||||||
|
...
|
||||||
|
# comment
|
||||||
|
|
||||||
match x:
|
match x:
|
||||||
case 1:
|
case 1:
|
||||||
...
|
...
|
||||||
|
@ -99,4 +103,4 @@ try:
|
||||||
except:
|
except:
|
||||||
... # comment
|
... # comment
|
||||||
finally:
|
finally:
|
||||||
... # comment
|
... # comment
|
||||||
|
|
|
@ -511,7 +511,9 @@ pub(crate) fn contains_only_an_ellipsis(body: &[Stmt], comments: &Comments) -> b
|
||||||
let [node] = body else {
|
let [node] = body else {
|
||||||
return false;
|
return false;
|
||||||
};
|
};
|
||||||
value.is_ellipsis_literal_expr() && !comments.has_leading(node)
|
value.is_ellipsis_literal_expr()
|
||||||
|
&& !comments.has_leading(node)
|
||||||
|
&& !comments.has_trailing_own_line(node)
|
||||||
}
|
}
|
||||||
_ => false,
|
_ => false,
|
||||||
}
|
}
|
||||||
|
|
|
@ -74,6 +74,10 @@ with True:
|
||||||
with True:
|
with True:
|
||||||
... # comment
|
... # comment
|
||||||
|
|
||||||
|
with True:
|
||||||
|
...
|
||||||
|
# comment
|
||||||
|
|
||||||
match x:
|
match x:
|
||||||
case 1:
|
case 1:
|
||||||
...
|
...
|
||||||
|
@ -105,7 +109,8 @@ try:
|
||||||
except:
|
except:
|
||||||
... # comment
|
... # comment
|
||||||
finally:
|
finally:
|
||||||
... # comment```
|
... # comment
|
||||||
|
```
|
||||||
|
|
||||||
## Output
|
## Output
|
||||||
```python
|
```python
|
||||||
|
@ -163,6 +168,10 @@ with True:
|
||||||
|
|
||||||
with True: ... # comment
|
with True: ... # comment
|
||||||
|
|
||||||
|
with True:
|
||||||
|
...
|
||||||
|
# comment
|
||||||
|
|
||||||
match x:
|
match x:
|
||||||
case 1: ...
|
case 1: ...
|
||||||
case 2:
|
case 2:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue