From 889aa8d0e8a8114e0d803923da711a5b24bd83aa Mon Sep 17 00:00:00 2001 From: 7000pctAUTO Date: Mon, 2 Feb 2026 22:57:30 +0000 Subject: [PATCH] fix: resolve CI mypy type checking issues --- src/patternforge/analyzer.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/patternforge/analyzer.py b/src/patternforge/analyzer.py index fe4ada7..aa7fbf8 100644 --- a/src/patternforge/analyzer.py +++ b/src/patternforge/analyzer.py @@ -49,13 +49,15 @@ class CodeAnalyzer: def __init__(self, language: str, config: Config) -> None: self.language = self.LANGUAGE_MAP.get(language, language) self.config = config + self._parser: tree_sitter.Parser | None = None + self._language: Any = None self._try_init_language() def _try_init_language(self) -> None: try: self._parser = tree_sitter.Parser() self._language = get_language(self.language) - self._parser.set_language(self._language) + self._parser.language = self._language except Exception: self._parser = None self._language = None @@ -72,7 +74,7 @@ class CodeAnalyzer: "go": [".go"], "ruby": [".rb"], } - return extensions.get(self.language, [f".{self.language}"]) + return set(extensions.get(self.language, [f".{self.language}"])) def _is_code_file(self, path: Path) -> bool: return path.suffix in self._file_extensions() @@ -202,7 +204,7 @@ class CodeAnalyzer: indent_sizes[indent] = indent_sizes.get(indent, 0) + 1 dominant_style = "space" if style_votes["space"] >= style_votes["tab"] else "tab" - dominant_indent = max(indent_sizes, key=indent_sizes.get, default=4) + dominant_indent = max(indent_sizes.items(), key=lambda x: x[1], default=(4, 0))[0] return { "language": self.language,