PyCQA/flake8-bugbear

B006: Case where mutable default arguments are not detected

Offen

#253 geöffnet am 10.04.2022

 (5 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)Python (116 Forks)github user discovery
bughelp wanted

Repository-Metriken

Stars
 (1.116 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 4h 17m) (3 gemergte PRs in 30 T)

Beschreibung

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?

Contributor Guide