---
source: crates/ruff_linter/src/rules/refurb/mod.rs
---
FURB180.py:7:10: FURB180 [*] Use of `metaclass=abc.ABCMeta` to define abstract base class
  |
5 | # Errors
6 | 
7 | class A0(metaclass=abc.ABCMeta):
  |          ^^^^^^^^^^^^^^^^^^^^^ FURB180
8 |     @abstractmethod
9 |     def foo(self): pass
  |
  = help: Replace with `abc.ABC`

ℹ Safe fix
4 4 | 
5 5 | # Errors
6 6 | 
7   |-class A0(metaclass=abc.ABCMeta):
  7 |+class A0(abc.ABC):
8 8 |     @abstractmethod
9 9 |     def foo(self): pass
10 10 | 

FURB180.py:12:10: FURB180 [*] Use of `metaclass=abc.ABCMeta` to define abstract base class
   |
12 | class A1(metaclass=ABCMeta):
   |          ^^^^^^^^^^^^^^^^^ FURB180
13 |     @abstractmethod
14 |     def foo(self): pass
   |
   = help: Replace with `abc.ABC`

ℹ Safe fix
9  9  |     def foo(self): pass
10 10 | 
11 11 | 
12    |-class A1(metaclass=ABCMeta):
   12 |+class A1(abc.ABC):
13 13 |     @abstractmethod
14 14 |     def foo(self): pass
15 15 | 

FURB180.py:26:18: FURB180 [*] Use of `metaclass=abc.ABCMeta` to define abstract base class
   |
26 | class A2(B0, B1, metaclass=ABCMeta):
   |                  ^^^^^^^^^^^^^^^^^ FURB180
27 |     @abstractmethod
28 |     def foo(self): pass
   |
   = help: Replace with `abc.ABC`

ℹ Safe fix
23 23 |     pass
24 24 | 
25 25 | 
26    |-class A2(B0, B1, metaclass=ABCMeta):
   26 |+class A2(B0, B1, abc.ABC):
27 27 |     @abstractmethod
28 28 |     def foo(self): pass
29 29 | 

FURB180.py:31:34: FURB180 [*] Use of `metaclass=abc.ABCMeta` to define abstract base class
   |
31 | class A3(B0, before_metaclass=1, metaclass=abc.ABCMeta):
   |                                  ^^^^^^^^^^^^^^^^^^^^^ FURB180
32 |     pass
   |
   = help: Replace with `abc.ABC`

ℹ Safe fix
28 28 |     def foo(self): pass
29 29 | 
30 30 | 
31    |-class A3(B0, before_metaclass=1, metaclass=abc.ABCMeta):
   31 |+class A3(B0, abc.ABC, before_metaclass=1):
32 32 |     pass
33 33 | 
34 34 | 


