PyCQA/flake8-bugbear
View on GitHubB006: Case where mutable default arguments are not detected
Open
#253 opened on Apr 10, 2022
bughelp wanted
Repository metrics
- Stars
- (1,116 stars)
- PR merge metrics
- (Avg merge 4h 17m) (3 merged PRs in 30d)
Description
I realized that when using Python built-in dataclasses, the following scenario is not detected:
from dataclasses import dataclass
@dataclass
class MyClass:
val = [] # Mutable data structure
Given the presence of the dataclass decorator, the signature of the __init__ method for MyClass is the following one:
def __init__(self, val = []):
I have seen that the rule B006 is supposed to detect issues where mutable data structures are used in a function signature. This is a slightly different scenario but with the same output if this effect is not intended. I could not find any related issue. Was this issue reported before?