mirror of
https://github.com/astral-sh/ruff.git
synced 2025-09-29 13:25:17 +00:00

## Summary This adds a fix for the `duplicate-bases` rule that removes the duplicate base from the class definition. ## Test Plan `cargo nextest run duplicate_bases`, `cargo insta review`.
72 lines
482 B
Python
72 lines
482 B
Python
###
|
|
# Errors.
|
|
###
|
|
class A:
|
|
...
|
|
|
|
|
|
class B:
|
|
...
|
|
|
|
|
|
# Duplicate base class is last.
|
|
class F1(A, A):
|
|
...
|
|
|
|
|
|
class F2(A, A,):
|
|
...
|
|
|
|
|
|
class F3(
|
|
A,
|
|
A
|
|
):
|
|
...
|
|
|
|
|
|
class F4(
|
|
A,
|
|
A,
|
|
):
|
|
...
|
|
|
|
|
|
# Duplicate base class is not last.
|
|
class G1(A, A, B):
|
|
...
|
|
|
|
|
|
class G2(A, A, B,):
|
|
...
|
|
|
|
|
|
class G3(
|
|
A,
|
|
A,
|
|
B
|
|
):
|
|
...
|
|
|
|
|
|
class G4(
|
|
A,
|
|
A,
|
|
B,
|
|
):
|
|
...
|
|
|
|
|
|
###
|
|
# Non-errors.
|
|
###
|
|
class C:
|
|
...
|
|
|
|
|
|
class D(C):
|
|
...
|
|
|
|
|
|
class E(A, C):
|
|
...
|