refactor: move file change processing logic from io.py to watch.py

This commit is contained in:
Paul Gauthier (aider) 2024-10-25 16:10:49 -07:00
parent 2e5981ecb3
commit 0890b32425
2 changed files with 19 additions and 18 deletions

View file

@ -379,24 +379,7 @@ class InputOutput:
self.changed_files = changed
#ai move all this ...
dump(changed)
# Check if any values contain !
if any(
"!" in comment
for comments in changed.values()
if comments
for comment in comments
):
self.changed_files = [
"\n".join(
comment
for comments in changed.values()
if comments
for comment in comments
)
]
else:
self.changed_files = list(changed.keys())
self.changed_files = process_file_changes(changed)
self.interrupt_input()
break
except Exception as e:

View file

@ -135,6 +135,24 @@ def watch_source_files(
result[file] = comments
yield result
def process_file_changes(changed):
"""Process file changes and handle special ! comments"""
if any(
"!" in comment
for comments in changed.values()
if comments
for comment in comments
):
return [
"\n".join(
comment
for comments in changed.values()
if comments
for comment in comments
)
]
return list(changed.keys())
def get_ai_comment(filepath, encoding="utf-8"):
"""Extract all AI comments from a file"""
comments = []