Ruff mutable-dataclass-default (RUF008)
mutable-dataclass-default в Ruff проверяет код на предупреждение RUF008. Правило относится к группе Ruff-specific rules.
Почему это неправильно
Эти проверки реализованы самим Ruff и закрывают практические проблемы, которые не относятся к одному внешнему плагину.
Если валидатор показывает это предупреждение, исправьте место, на которое указывает Ruff, ориентируясь на смысл правила mutable-dataclass-default и пример ниже.
Пример ошибки
from dataclasses import dataclass
@dataclass
class A:
# A list without a `default_factory` or `ClassVar` annotation
# will raise a `ValueError`.
mutable_default: list[int] = []
Как правильно
from dataclasses import dataclass, field
@dataclass
class A:
mutable_default: list[int] = field(default_factory=list)
Автоисправление
Ruff не предлагает автоисправление для этого правила.
