mirror of
https://github.com/astral-sh/ruff.git
synced 2025-11-01 12:25:10 +00:00
Format raise statement (#5595)
## Summary
This PR implements the formatting of `raise` statements. I haven't
looked at the black implementation, this is inspired from from the
`return` statements formatting.
## Test Plan
The black differences with insta.
I also compared manually some edge cases with very long string and call
chaining and it seems to do the same formatting as black.
There is one issue:
```python
# input
raise OsError(
"aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa"
) from a.aaaaa(aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa).a(aaaa)
# black
raise OsError(
"aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa"
) from a.aaaaa(
aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa
).a(
aaaa
)
# ruff
raise OsError(
"aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa"
) from a.aaaaa(
aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa
).a(aaaa)
```
But I'm not sure this diff is the raise formatting implementation.
---------
Co-authored-by: Louis Dispa <ldispa@deezer.com>
This commit is contained in:
parent
93bfa239b7
commit
e7e2f44440
11 changed files with 409 additions and 130 deletions
|
|
@ -35,9 +35,16 @@ e4 = (
|
|||
|
||||
# Empty tuples and comments
|
||||
f1 = (
|
||||
# empty
|
||||
# empty
|
||||
)
|
||||
f2 = ()
|
||||
f3 = ( # end-of-line
|
||||
# own-line
|
||||
) # trailing
|
||||
f4 = ( # end-of-line
|
||||
# own-line
|
||||
# own-line 2
|
||||
) # trailing
|
||||
|
||||
# Comments in other tuples
|
||||
g1 = ( # a
|
||||
|
|
|
|||
85
crates/ruff_python_formatter/resources/test/fixtures/ruff/statement/raise.py
vendored
Normal file
85
crates/ruff_python_formatter/resources/test/fixtures/ruff/statement/raise.py
vendored
Normal file
|
|
@ -0,0 +1,85 @@
|
|||
raise a from aksjdhflsakhdflkjsadlfajkslhf
|
||||
raise a from (aksjdhflsakhdflkjsadlfajkslhf,)
|
||||
raise (aaaaa.aaa(a).a) from (aksjdhflsakhdflkjsadlfajkslhf)
|
||||
|
||||
raise a from (aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa,)
|
||||
raise a from OsError("aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa")
|
||||
|
||||
# some comment
|
||||
raise a from aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa # some comment
|
||||
# some comment
|
||||
|
||||
raise OsError("aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa") from e
|
||||
|
||||
|
||||
raise OsError(
|
||||
# should i stay
|
||||
"aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa" # mhhh very long
|
||||
# or should i go
|
||||
) from e # here is e
|
||||
|
||||
raise OsError("aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa") from OsError("aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa")
|
||||
|
||||
raise OsError(
|
||||
"aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa"
|
||||
) from a.aaaaa(
|
||||
aaa
|
||||
).a(aaaa)
|
||||
|
||||
raise OsError(
|
||||
"aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa"
|
||||
) from a.aaaaa(aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa).a(aaaa)
|
||||
|
||||
raise aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + bbbbbbbbbbbbbbbbbbbbbbbbbb + cccccccccccccccccccccc + ddddddddddddddddddddddddd
|
||||
raise aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + bbbbbbbbbbbbbbbbbbbbbbbbbb + (cccccccccccccccccccccc + ddddddddddddddddddddddddd)
|
||||
raise (aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa + bbbbbbbbbbbbbbbbbbbbbbbbbb + cccccccccccccccccccccc + ddddddddddddddddddddddddd)
|
||||
|
||||
|
||||
raise ( # hey
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
# Holala
|
||||
+ bbbbbbbbbbbbbbbbbbbbbbbbbb # stay
|
||||
+ cccccccccccccccccccccc + ddddddddddddddddddddddddd # where I'm going
|
||||
# I don't know
|
||||
) # whaaaaat
|
||||
# the end
|
||||
|
||||
raise ( # hey 2
|
||||
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
|
||||
# Holala
|
||||
"bbbbbbbbbbbbbbbbbbbbbbbb" # stay
|
||||
"ccccccccccccccccccccccc" "dddddddddddddddddddddddd" # where I'm going
|
||||
# I don't know
|
||||
) # whaaaaat
|
||||
|
||||
# some comment
|
||||
raise aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:bbbbbbbbbbbbbbbbbbbbbbbbbb]
|
||||
|
||||
raise aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa < aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa <aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajlhfajfjfsaahflakjslhdfkjalhdskjfa
|
||||
|
||||
raise aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfk < (aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashdfljahlfksajl < aksjdhflsakhdflkjsadlfajkslhfdkjsaldajlahflashd) # the other end
|
||||
# sneaky comment
|
||||
|
||||
raise ( # another comment
|
||||
)
|
||||
|
||||
raise (
|
||||
) # what now
|
||||
|
||||
raise ( # sould I stay here
|
||||
# just a comment here
|
||||
) # trailing comment
|
||||
|
||||
raise hello( # sould I stay here
|
||||
# just a comment here
|
||||
) # trailing comment
|
||||
|
||||
raise ( # sould I stay here
|
||||
test,
|
||||
# just a comment here
|
||||
) # trailing comment
|
||||
|
||||
raise hello( # sould I stay here
|
||||
# just a comment here
|
||||
"hey"
|
||||
) # trailing comment
|
||||
Loading…
Add table
Add a link
Reference in a new issue