Skip to content

Commit b7542d9

Browse files
fix: exclude unknown ruff schema fields from being passed to attrs constructor (#720)
1 parent 9d96490 commit b7542d9

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

monty/exts/python/ruff.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,11 @@ def all_sections(self) -> list[tuple[str, str]]:
107107
sections.append((name, content))
108108
return sections
109109

110+
@classmethod
111+
def from_dict(cls, data: dict):
112+
"""Create a Rule from a dictionary."""
113+
return cls(**{a.name: data[a.name] for a in attrs.fields(cls)})
114+
110115

111116
class Ruff(
112117
commands.Cog,
@@ -154,7 +159,7 @@ async def update_rules(self) -> dict[str, Any] | None:
154159

155160
new_rules = dict[str, Rule]()
156161
for unparsed_rule in raw_rules:
157-
parsed_rule = Rule(**unparsed_rule)
162+
parsed_rule = Rule.from_dict(unparsed_rule)
158163
new_rules[parsed_rule.code] = parsed_rule
159164

160165
self.rules.clear()

0 commit comments

Comments
 (0)