aider-ce 0.88.4__py3-none-any.whl → 0.88.5__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aider-ce might be problematic. Click here for more details.
- aider/__init__.py +1 -1
- aider/_version.py +2 -2
- aider/args.py +14 -2
- aider/coders/base_coder.py +72 -3
- aider/commands.py +51 -37
- aider/io.py +10 -32
- aider/main.py +3 -0
- aider/queries/tree-sitter-languages/haskell-tags.scm +3 -0
- aider/queries/tree-sitter-languages/zig-tags.scm +3 -0
- {aider_ce-0.88.4.dist-info → aider_ce-0.88.5.dist-info}/METADATA +1 -1
- {aider_ce-0.88.4.dist-info → aider_ce-0.88.5.dist-info}/RECORD +15 -13
- {aider_ce-0.88.4.dist-info → aider_ce-0.88.5.dist-info}/WHEEL +0 -0
- {aider_ce-0.88.4.dist-info → aider_ce-0.88.5.dist-info}/entry_points.txt +0 -0
- {aider_ce-0.88.4.dist-info → aider_ce-0.88.5.dist-info}/licenses/LICENSE.txt +0 -0
- {aider_ce-0.88.4.dist-info → aider_ce-0.88.5.dist-info}/top_level.txt +0 -0
aider/__init__.py
CHANGED
aider/_version.py
CHANGED
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.88.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 88,
|
|
31
|
+
__version__ = version = '0.88.5'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 88, 5)
|
|
33
33
|
|
|
34
34
|
__commit_id__ = commit_id = None
|
aider/args.py
CHANGED
|
@@ -315,7 +315,12 @@ def get_parser(default_config_files, git_root):
|
|
|
315
315
|
" (default: current directory)"
|
|
316
316
|
),
|
|
317
317
|
)
|
|
318
|
-
|
|
318
|
+
group.add_argument(
|
|
319
|
+
"--map-memory-cache",
|
|
320
|
+
action="store_true",
|
|
321
|
+
help="Store repo map in memory (default: False)",
|
|
322
|
+
default=False,
|
|
323
|
+
)
|
|
319
324
|
##########
|
|
320
325
|
group = parser.add_argument_group("History Files")
|
|
321
326
|
default_input_history_file = (
|
|
@@ -745,7 +750,14 @@ def get_parser(default_config_files, git_root):
|
|
|
745
750
|
help="Print the system prompts and exit (debug)",
|
|
746
751
|
default=False,
|
|
747
752
|
)
|
|
748
|
-
|
|
753
|
+
group.add_argument(
|
|
754
|
+
"--linear-output",
|
|
755
|
+
action="store_true",
|
|
756
|
+
help=(
|
|
757
|
+
"Run input and output sequentially instead of us simultaneous streams (default: False)"
|
|
758
|
+
),
|
|
759
|
+
default=False,
|
|
760
|
+
)
|
|
749
761
|
##########
|
|
750
762
|
group = parser.add_argument_group("Voice settings")
|
|
751
763
|
group.add_argument(
|
aider/coders/base_coder.py
CHANGED
|
@@ -381,6 +381,7 @@ class Coder:
|
|
|
381
381
|
map_cache_dir=".",
|
|
382
382
|
repomap_in_memory=False,
|
|
383
383
|
preserve_todo_list=False,
|
|
384
|
+
linear_output=False,
|
|
384
385
|
):
|
|
385
386
|
# initialize from args.map_cache_dir
|
|
386
387
|
self.map_cache_dir = map_cache_dir
|
|
@@ -469,6 +470,7 @@ class Coder:
|
|
|
469
470
|
|
|
470
471
|
self.dry_run = dry_run
|
|
471
472
|
self.pretty = self.io.pretty
|
|
473
|
+
self.linear_output = linear_output
|
|
472
474
|
|
|
473
475
|
self.main_model = main_model
|
|
474
476
|
|
|
@@ -1058,12 +1060,67 @@ class Coder:
|
|
|
1058
1060
|
while self.io.confirmation_in_progress:
|
|
1059
1061
|
await asyncio.sleep(0.1) # Yield control and wait briefly
|
|
1060
1062
|
|
|
1063
|
+
if self.linear_output:
|
|
1064
|
+
return await self._run_linear(with_message, preproc)
|
|
1065
|
+
|
|
1061
1066
|
if self.io.prompt_session:
|
|
1062
1067
|
with patch_stdout(raw=True):
|
|
1063
1068
|
return await self._run_patched(with_message, preproc)
|
|
1064
1069
|
else:
|
|
1065
1070
|
return await self._run_patched(with_message, preproc)
|
|
1066
1071
|
|
|
1072
|
+
async def _run_linear(self, with_message=None, preproc=True):
|
|
1073
|
+
try:
|
|
1074
|
+
if with_message:
|
|
1075
|
+
self.io.user_input(with_message)
|
|
1076
|
+
await self.run_one(with_message, preproc)
|
|
1077
|
+
return self.partial_response_content
|
|
1078
|
+
|
|
1079
|
+
user_message = None
|
|
1080
|
+
await self.io.cancel_input_task()
|
|
1081
|
+
await self.io.cancel_processing_task()
|
|
1082
|
+
|
|
1083
|
+
while True:
|
|
1084
|
+
try:
|
|
1085
|
+
if self.commands.cmd_running:
|
|
1086
|
+
await asyncio.sleep(0.1)
|
|
1087
|
+
continue
|
|
1088
|
+
|
|
1089
|
+
if not self.suppress_announcements_for_next_prompt:
|
|
1090
|
+
self.show_announcements()
|
|
1091
|
+
self.suppress_announcements_for_next_prompt = True
|
|
1092
|
+
|
|
1093
|
+
self.io.input_task = asyncio.create_task(self.get_input())
|
|
1094
|
+
await asyncio.sleep(0)
|
|
1095
|
+
await self.io.input_task
|
|
1096
|
+
user_message = self.io.input_task.result()
|
|
1097
|
+
|
|
1098
|
+
self.io.processing_task = asyncio.create_task(
|
|
1099
|
+
self._processing_logic(user_message, preproc)
|
|
1100
|
+
)
|
|
1101
|
+
|
|
1102
|
+
await self.io.processing_task
|
|
1103
|
+
|
|
1104
|
+
self.io.ring_bell()
|
|
1105
|
+
user_message = None
|
|
1106
|
+
except KeyboardInterrupt:
|
|
1107
|
+
if self.io.input_task:
|
|
1108
|
+
self.io.set_placeholder("")
|
|
1109
|
+
await self.io.cancel_input_task()
|
|
1110
|
+
|
|
1111
|
+
if self.io.processing_task:
|
|
1112
|
+
await self.io.cancel_processing_task()
|
|
1113
|
+
self.io.stop_spinner()
|
|
1114
|
+
|
|
1115
|
+
self.keyboard_interrupt()
|
|
1116
|
+
except (asyncio.CancelledError, IndexError):
|
|
1117
|
+
pass
|
|
1118
|
+
except EOFError:
|
|
1119
|
+
return
|
|
1120
|
+
finally:
|
|
1121
|
+
await self.io.cancel_input_task()
|
|
1122
|
+
await self.io.cancel_processing_task()
|
|
1123
|
+
|
|
1067
1124
|
async def _run_patched(self, with_message=None, preproc=True):
|
|
1068
1125
|
try:
|
|
1069
1126
|
if with_message:
|
|
@@ -1077,6 +1134,10 @@ class Coder:
|
|
|
1077
1134
|
|
|
1078
1135
|
while True:
|
|
1079
1136
|
try:
|
|
1137
|
+
if self.commands.cmd_running:
|
|
1138
|
+
await asyncio.sleep(0.1)
|
|
1139
|
+
continue
|
|
1140
|
+
|
|
1080
1141
|
if (
|
|
1081
1142
|
not self.io.confirmation_in_progress
|
|
1082
1143
|
and not user_message
|
|
@@ -1134,6 +1195,10 @@ class Coder:
|
|
|
1134
1195
|
try:
|
|
1135
1196
|
user_message = self.io.input_task.result()
|
|
1136
1197
|
await self.io.cancel_input_task()
|
|
1198
|
+
|
|
1199
|
+
if self.commands.is_run_command(user_message):
|
|
1200
|
+
self.commands.cmd_running = True
|
|
1201
|
+
|
|
1137
1202
|
except (asyncio.CancelledError, KeyboardInterrupt):
|
|
1138
1203
|
user_message = None
|
|
1139
1204
|
|
|
@@ -1170,7 +1235,6 @@ class Coder:
|
|
|
1170
1235
|
user_message = None
|
|
1171
1236
|
|
|
1172
1237
|
except (asyncio.CancelledError, KeyboardInterrupt):
|
|
1173
|
-
print("error of some sort")
|
|
1174
1238
|
pass
|
|
1175
1239
|
|
|
1176
1240
|
# Stop spinner when processing task completes
|
|
@@ -1180,6 +1244,7 @@ class Coder:
|
|
|
1180
1244
|
self.io.processing_task = asyncio.create_task(
|
|
1181
1245
|
self._processing_logic(user_message, preproc)
|
|
1182
1246
|
)
|
|
1247
|
+
|
|
1183
1248
|
# Start spinner for processing task
|
|
1184
1249
|
self.io.start_spinner("Processing...")
|
|
1185
1250
|
|
|
@@ -1243,6 +1308,12 @@ class Coder:
|
|
|
1243
1308
|
return
|
|
1244
1309
|
|
|
1245
1310
|
if self.commands.is_command(inp):
|
|
1311
|
+
if inp[0] in "!":
|
|
1312
|
+
inp = f"/run {inp[1:]}"
|
|
1313
|
+
|
|
1314
|
+
if self.commands.is_run_command(inp):
|
|
1315
|
+
self.commands.cmd_running = True
|
|
1316
|
+
|
|
1246
1317
|
return await self.commands.run(inp)
|
|
1247
1318
|
|
|
1248
1319
|
await self.check_for_file_mentions(inp)
|
|
@@ -1254,8 +1325,6 @@ class Coder:
|
|
|
1254
1325
|
self.init_before_message()
|
|
1255
1326
|
|
|
1256
1327
|
if preproc:
|
|
1257
|
-
if user_message[0] in "!":
|
|
1258
|
-
user_message = f"/run {user_message[1:]}"
|
|
1259
1328
|
message = await self.preproc_user_input(user_message)
|
|
1260
1329
|
else:
|
|
1261
1330
|
message = user_message
|
aider/commands.py
CHANGED
|
@@ -84,6 +84,7 @@ class Commands:
|
|
|
84
84
|
|
|
85
85
|
# Store the original read-only filenames provided via args.read
|
|
86
86
|
self.original_read_only_fnames = set(original_read_only_fnames or [])
|
|
87
|
+
self.cmd_running = False
|
|
87
88
|
|
|
88
89
|
def cmd_model(self, args):
|
|
89
90
|
"Switch the Main Model to a new LLM"
|
|
@@ -256,6 +257,9 @@ class Commands:
|
|
|
256
257
|
def is_command(self, inp):
|
|
257
258
|
return inp[0] in "/!"
|
|
258
259
|
|
|
260
|
+
def is_run_command(self, inp):
|
|
261
|
+
return inp and (inp[0] in "!" or inp[:5] == "/test" or inp[:4] == "/run")
|
|
262
|
+
|
|
259
263
|
def get_raw_completions(self, cmd):
|
|
260
264
|
assert cmd.startswith("/")
|
|
261
265
|
cmd = cmd[1:]
|
|
@@ -1151,51 +1155,61 @@ class Commands:
|
|
|
1151
1155
|
|
|
1152
1156
|
async def cmd_run(self, args, add_on_nonzero_exit=False):
|
|
1153
1157
|
"Run a shell command and optionally add the output to the chat (alias: !)"
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1158
|
+
try:
|
|
1159
|
+
self.cmd_running = True
|
|
1160
|
+
exit_status, combined_output = await asyncio.to_thread(
|
|
1161
|
+
run_cmd,
|
|
1162
|
+
args,
|
|
1163
|
+
verbose=self.verbose,
|
|
1164
|
+
error_print=self.io.tool_error,
|
|
1165
|
+
cwd=self.coder.root,
|
|
1166
|
+
)
|
|
1167
|
+
self.cmd_running = False
|
|
1161
1168
|
|
|
1162
|
-
|
|
1163
|
-
|
|
1169
|
+
# This print statement, for whatever reason,
|
|
1170
|
+
# allows the thread to properly yield control of the terminal
|
|
1171
|
+
# to the main program
|
|
1172
|
+
print("")
|
|
1164
1173
|
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
k_tokens = token_count / 1000
|
|
1174
|
+
if combined_output is None:
|
|
1175
|
+
return
|
|
1168
1176
|
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
add = await self.io.confirm_ask(
|
|
1173
|
-
f"Add {k_tokens:.1f}k tokens of command output to the chat?"
|
|
1174
|
-
)
|
|
1177
|
+
# Calculate token count of output
|
|
1178
|
+
token_count = self.coder.main_model.token_count(combined_output)
|
|
1179
|
+
k_tokens = token_count / 1000
|
|
1175
1180
|
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1181
|
+
if add_on_nonzero_exit:
|
|
1182
|
+
add = exit_status != 0
|
|
1183
|
+
else:
|
|
1184
|
+
add = await self.io.confirm_ask(
|
|
1185
|
+
f"Add {k_tokens:.1f}k tokens of command output to the chat?"
|
|
1186
|
+
)
|
|
1180
1187
|
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1188
|
+
if add:
|
|
1189
|
+
num_lines = len(combined_output.strip().splitlines())
|
|
1190
|
+
line_plural = "line" if num_lines == 1 else "lines"
|
|
1191
|
+
self.io.tool_output(f"Added {num_lines} {line_plural} of output to the chat.")
|
|
1185
1192
|
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1193
|
+
msg = prompts.run_output.format(
|
|
1194
|
+
command=args,
|
|
1195
|
+
output=combined_output,
|
|
1196
|
+
)
|
|
1197
|
+
|
|
1198
|
+
self.coder.cur_messages += [
|
|
1199
|
+
dict(role="user", content=msg),
|
|
1200
|
+
dict(role="assistant", content="Ok."),
|
|
1201
|
+
]
|
|
1190
1202
|
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1203
|
+
if add_on_nonzero_exit and exit_status != 0:
|
|
1204
|
+
# Return the formatted output message for test failures
|
|
1205
|
+
return msg
|
|
1206
|
+
elif add and exit_status != 0:
|
|
1207
|
+
self.io.placeholder = "What's wrong? Fix"
|
|
1196
1208
|
|
|
1197
|
-
|
|
1198
|
-
|
|
1209
|
+
# Return None if output wasn't added or command succeeded
|
|
1210
|
+
return None
|
|
1211
|
+
finally:
|
|
1212
|
+
self.cmd_running = False
|
|
1199
1213
|
|
|
1200
1214
|
def cmd_exit(self, args):
|
|
1201
1215
|
"Exit the application"
|
aider/io.py
CHANGED
|
@@ -462,7 +462,6 @@ class InputOutput:
|
|
|
462
462
|
|
|
463
463
|
self.file_watcher = file_watcher
|
|
464
464
|
self.root = root
|
|
465
|
-
self.outstanding_confirmations = []
|
|
466
465
|
|
|
467
466
|
# Variables used to interface with base_coder
|
|
468
467
|
self.coder = None
|
|
@@ -474,7 +473,6 @@ class InputOutput:
|
|
|
474
473
|
# State tracking for confirmation input
|
|
475
474
|
self.confirmation_input_active = False
|
|
476
475
|
self.saved_input_text = ""
|
|
477
|
-
self.confirmation_future = None
|
|
478
476
|
|
|
479
477
|
# Validate color settings after console is initialized
|
|
480
478
|
self._validate_color_settings()
|
|
@@ -686,10 +684,8 @@ class InputOutput:
|
|
|
686
684
|
|
|
687
685
|
def reject_outstanding_confirmations(self):
|
|
688
686
|
"""Reject all outstanding confirmation dialogs."""
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
future.set_result(False)
|
|
692
|
-
self.outstanding_confirmations = []
|
|
687
|
+
# This method is now a no-op since we removed the confirmation_future logic
|
|
688
|
+
pass
|
|
693
689
|
|
|
694
690
|
async def get_input(
|
|
695
691
|
self,
|
|
@@ -701,7 +697,6 @@ class InputOutput:
|
|
|
701
697
|
abs_read_only_stubs_fnames=None,
|
|
702
698
|
edit_format=None,
|
|
703
699
|
):
|
|
704
|
-
self.reject_outstanding_confirmations()
|
|
705
700
|
self.rule()
|
|
706
701
|
|
|
707
702
|
rel_fnames = list(rel_fnames)
|
|
@@ -946,7 +941,7 @@ class InputOutput:
|
|
|
946
941
|
try:
|
|
947
942
|
input_task.cancel()
|
|
948
943
|
await input_task
|
|
949
|
-
except asyncio.CancelledError:
|
|
944
|
+
except (asyncio.CancelledError, IndexError):
|
|
950
945
|
pass
|
|
951
946
|
|
|
952
947
|
async def cancel_processing_task(self):
|
|
@@ -956,7 +951,7 @@ class InputOutput:
|
|
|
956
951
|
try:
|
|
957
952
|
processing_task.cancel()
|
|
958
953
|
await processing_task
|
|
959
|
-
except asyncio.CancelledError:
|
|
954
|
+
except (asyncio.CancelledError, IndexError):
|
|
960
955
|
pass
|
|
961
956
|
|
|
962
957
|
def add_to_input_history(self, inp):
|
|
@@ -1070,14 +1065,9 @@ class InputOutput:
|
|
|
1070
1065
|
|
|
1071
1066
|
question_id = (question, subject)
|
|
1072
1067
|
|
|
1073
|
-
confirmation_future = asyncio.get_running_loop().create_future()
|
|
1074
|
-
self.outstanding_confirmations.append(confirmation_future)
|
|
1075
|
-
|
|
1076
1068
|
try:
|
|
1077
1069
|
if question_id in self.never_prompts:
|
|
1078
|
-
|
|
1079
|
-
confirmation_future.set_result(False)
|
|
1080
|
-
return await confirmation_future
|
|
1070
|
+
return False
|
|
1081
1071
|
|
|
1082
1072
|
if group and not group.show_group:
|
|
1083
1073
|
group = None
|
|
@@ -1160,9 +1150,7 @@ class InputOutput:
|
|
|
1160
1150
|
res = default
|
|
1161
1151
|
break
|
|
1162
1152
|
except asyncio.CancelledError:
|
|
1163
|
-
|
|
1164
|
-
confirmation_future.set_result(False)
|
|
1165
|
-
raise
|
|
1153
|
+
return False
|
|
1166
1154
|
|
|
1167
1155
|
if not res:
|
|
1168
1156
|
res = default
|
|
@@ -1181,9 +1169,7 @@ class InputOutput:
|
|
|
1181
1169
|
self.never_prompts.add(question_id)
|
|
1182
1170
|
hist = f"{question.strip()} {res}"
|
|
1183
1171
|
self.append_chat_history(hist, linebreak=True, blockquote=True)
|
|
1184
|
-
|
|
1185
|
-
confirmation_future.set_result(False)
|
|
1186
|
-
return await confirmation_future
|
|
1172
|
+
return False
|
|
1187
1173
|
|
|
1188
1174
|
if explicit_yes_required:
|
|
1189
1175
|
is_yes = res == "y"
|
|
@@ -1201,19 +1187,11 @@ class InputOutput:
|
|
|
1201
1187
|
|
|
1202
1188
|
hist = f"{question.strip()} {res}"
|
|
1203
1189
|
self.append_chat_history(hist, linebreak=True, blockquote=True)
|
|
1204
|
-
|
|
1205
|
-
if not confirmation_future.done():
|
|
1206
|
-
confirmation_future.set_result(is_yes)
|
|
1207
|
-
|
|
1208
1190
|
except asyncio.CancelledError:
|
|
1209
|
-
|
|
1210
|
-
confirmation_future.set_result(False)
|
|
1211
|
-
raise
|
|
1191
|
+
return False
|
|
1212
1192
|
finally:
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
return await confirmation_future
|
|
1193
|
+
pass
|
|
1194
|
+
return is_yes
|
|
1217
1195
|
|
|
1218
1196
|
@restore_multiline
|
|
1219
1197
|
def prompt_ask(self, question, default="", subject=None):
|
aider/main.py
CHANGED
|
@@ -1057,6 +1057,9 @@ async def main_async(argv=None, input=None, output=None, force_git_root=None, re
|
|
|
1057
1057
|
context_compaction_max_tokens=args.context_compaction_max_tokens,
|
|
1058
1058
|
context_compaction_summary_tokens=args.context_compaction_summary_tokens,
|
|
1059
1059
|
map_cache_dir=args.map_cache_dir,
|
|
1060
|
+
repomap_in_memory=args.map_memory_cache,
|
|
1061
|
+
preserve_todo_list=args.preserve_todo_list,
|
|
1062
|
+
linear_output=args.linear_output,
|
|
1060
1063
|
)
|
|
1061
1064
|
except UnknownEditFormat as err:
|
|
1062
1065
|
io.tool_error(str(err))
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
aider/__init__.py,sha256=
|
|
1
|
+
aider/__init__.py,sha256=1DZ03r447CFeqM5FT2f7BbovXi_RlzOLcnP79PsACpU,496
|
|
2
2
|
aider/__main__.py,sha256=Vdhw8YA1K3wPMlbJQYL5WqvRzAKVeZ16mZQFO9VRmCo,62
|
|
3
|
-
aider/_version.py,sha256=
|
|
3
|
+
aider/_version.py,sha256=zZmH68H1r9949DHpJ12DEFhFY-78SXQLc-K3CKqklcc,706
|
|
4
4
|
aider/analytics.py,sha256=c5ujaCcMc3yG-9rz_0oSsqBwmVQRxJnui6iE_yDyY_M,7507
|
|
5
|
-
aider/args.py,sha256=
|
|
5
|
+
aider/args.py,sha256=r9xdhB44K4LF2ru-cbOdaoHYzvG6CyViwcw9QRewEKw,33145
|
|
6
6
|
aider/args_formatter.py,sha256=CBRnzHyZk-fFCK0ekAzb6C4PPJOU-VTpWIIsJe3qUhk,6369
|
|
7
7
|
aider/change_tracker.py,sha256=djUlUuewhwRAlC0x6jIUZNpn6_PK1YyiNTMYvlvDeTE,4884
|
|
8
|
-
aider/commands.py,sha256=
|
|
8
|
+
aider/commands.py,sha256=dbS-pqao-TSg35P9BDPiY5fRhLGwY5ZJyyIE-dAqlQw,81156
|
|
9
9
|
aider/copypaste.py,sha256=J99QrXILUED_GPdEqxt7WjGZ5if8sfy0VQTzsV2jBrE,2095
|
|
10
10
|
aider/deprecated.py,sha256=SNeAWR7ih87F5AyFpC4pxRoJAaw8measBW583w0EUT8,4277
|
|
11
11
|
aider/diffs.py,sha256=y6_rxIKe3FPCIsVy_RRkHdofguYOhYBr2Oytr5AqjHI,3028
|
|
@@ -17,10 +17,10 @@ aider/gui.py,sha256=JnHvli1JTCGHAgsOZ8HkAWOKAFxmngbyviZIJeYvjsw,17573
|
|
|
17
17
|
aider/help.py,sha256=wExA1E9vuJccKBH1VvKmH-zJqFi-vhNc0n3CD3Y-8fI,4432
|
|
18
18
|
aider/help_pats.py,sha256=syn7pSVJdcf8uMKTxnZUZBQu-r8JMAi-rrC-k2er1Fk,376
|
|
19
19
|
aider/history.py,sha256=083Gm7KxNo1PXMFHYiChigxCbRzmLkfNlesODdCC-eY,6067
|
|
20
|
-
aider/io.py,sha256=
|
|
20
|
+
aider/io.py,sha256=6CKaWP5zWngaMjzS2lpy_pT84a_mGWgDcyFsazHKlTU,56543
|
|
21
21
|
aider/linter.py,sha256=t5jwWZ1dvIzRtig1kTSjzl6u1LRfw0e19qwNIen2jAg,7998
|
|
22
22
|
aider/llm.py,sha256=dtT0mavXP1SyR0Zu_ysZXKdbs3y53q2PevvDKBUrs6s,1505
|
|
23
|
-
aider/main.py,sha256=
|
|
23
|
+
aider/main.py,sha256=3IE18moiAP2nXs-NY_PJKk8PXS_pdzMvbefoNfT9CnQ,46520
|
|
24
24
|
aider/mdstream.py,sha256=fS9iQUQmIJPEMo7o1psPGE2yYj31MI3m3msdN-jEzUw,7594
|
|
25
25
|
aider/models.py,sha256=yflYZ64oza4QH04vIPI2n7rcsdSw2Np4BRwRKlb3STQ,45455
|
|
26
26
|
aider/onboarding.py,sha256=pMWl--NOH_hb4w1wVxLmv8W0akcrilo1Pxf9XUSqBXs,16135
|
|
@@ -46,7 +46,7 @@ aider/coders/architect_coder.py,sha256=O5KIf__Ka0bgtCUhYWUmAb08aCS6Nq-CdVWWa-VNK
|
|
|
46
46
|
aider/coders/architect_prompts.py,sha256=R0_KxZjo-km_yNaeDAquDP9qfp3IdWgrdMirCWe0RIE,1658
|
|
47
47
|
aider/coders/ask_coder.py,sha256=Omk4Ih8-prefkMZ_jnRS3faoW5CQUakHOvZ-s7piM3U,210
|
|
48
48
|
aider/coders/ask_prompts.py,sha256=W6HwDUfzfOLt9q8sl6rw7fN7b5ND90FkxCZrtrWl5vY,1171
|
|
49
|
-
aider/coders/base_coder.py,sha256=
|
|
49
|
+
aider/coders/base_coder.py,sha256=5R6AGbofXg1PeW-TF3pD0o5vWl1-Tn9lND2GhQlRRvI,132707
|
|
50
50
|
aider/coders/base_prompts.py,sha256=O3bBjhf0hgvtKbQ9QyOMnRy8LrmfLyT9dVAcXxHS_3k,3659
|
|
51
51
|
aider/coders/chat_chunks.py,sha256=8HPet6cmQdgWvaA_tGpinO4ASMst53uTcSEtNVTYDXE,1981
|
|
52
52
|
aider/coders/context_coder.py,sha256=_RSzu6ptHo2lkTN7-e9TpcZKzqbQF2eNX5MkyswGm3s,1577
|
|
@@ -125,6 +125,7 @@ aider/queries/tree-sitter-languages/elixir-tags.scm,sha256=eO20nPIwI7_vq4Fob6U5R
|
|
|
125
125
|
aider/queries/tree-sitter-languages/elm-tags.scm,sha256=4qTEWJCAd7_BOfwyky0q_NYzAMtGdiq7qwo1GIhXmag,951
|
|
126
126
|
aider/queries/tree-sitter-languages/fortran-tags.scm,sha256=BD6M5CVhMpINlLR7U9bL6STRwGLYBrMmvmldOHe1-9U,419
|
|
127
127
|
aider/queries/tree-sitter-languages/go-tags.scm,sha256=mHtS5NEuxWJGfVz1rq4YlJRMYVDAl5tf7iYnm6RikVE,848
|
|
128
|
+
aider/queries/tree-sitter-languages/haskell-tags.scm,sha256=mopkZ2Py3_Vl3xvpmaryzUVwYWAzl6GaYgmMb9qKD3Q,143
|
|
128
129
|
aider/queries/tree-sitter-languages/hcl-tags.scm,sha256=yOVCBeF4C3ZrFG-gg0adWg2QkxylPcI2dbVeEgD7EPE,2137
|
|
129
130
|
aider/queries/tree-sitter-languages/java-tags.scm,sha256=7WKb-djGv0Ief6XEWQPYpfLpgJHtMPPukIUi55PegvE,627
|
|
130
131
|
aider/queries/tree-sitter-languages/javascript-tags.scm,sha256=svVct6pxbcYP_-xEBwzGy6t1SlN7ajkEUCivUkBZn_Q,2251
|
|
@@ -140,6 +141,7 @@ aider/queries/tree-sitter-languages/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUW
|
|
|
140
141
|
aider/queries/tree-sitter-languages/rust-tags.scm,sha256=9ljM1nzhfPs_ZTRw7cr2P9ToOyhGcKkCoN4_HPXSWi4,1451
|
|
141
142
|
aider/queries/tree-sitter-languages/scala-tags.scm,sha256=UxQjz80JIrrJ7Pm56uUnQyThfmQNvwk7aQzPNypB-Ao,1761
|
|
142
143
|
aider/queries/tree-sitter-languages/typescript-tags.scm,sha256=OMdCeedPiA24ky82DpgTMKXK_l2ySTuF2zrQ2fJAi9E,1253
|
|
144
|
+
aider/queries/tree-sitter-languages/zig-tags.scm,sha256=BPgov_nD_LqpL37sbdwsMYbFmHwjBOuRm76geKo29ds,124
|
|
143
145
|
aider/resources/__init__.py,sha256=09npmZFptj6XR6ZeEuekpcK2stecKEjI59zR0Vz2JU8,142
|
|
144
146
|
aider/resources/model-metadata.json,sha256=fFBW3iBFAZlhEPXyM-5_8qYEEOCx6tFqMu2Yh-5oBLI,28667
|
|
145
147
|
aider/resources/model-settings.yml,sha256=bqpgKJRNZUcSlXyuZgTKFybf61kW5NRuoIVyOMZztwc,58325
|
|
@@ -261,9 +263,9 @@ aider/website/docs/usage/tutorials.md,sha256=ZKBztbUtucHOiv9h8gvWiWTP6MTSsFyz4mA
|
|
|
261
263
|
aider/website/docs/usage/voice.md,sha256=BtX7pHRgHRWUmrNbS4JssC-SO8RrJ_OetBCtIYpO0pU,3452
|
|
262
264
|
aider/website/docs/usage/watch.md,sha256=OVF14lGtv1vhSXRE8PpxQ3YW-uXSifarUbmLBjmLRyA,7940
|
|
263
265
|
aider/website/share/index.md,sha256=P51aDw9AT8AVbsU7v6g1tWuMjly7y_plM_ZI1ScaT8Y,3172
|
|
264
|
-
aider_ce-0.88.
|
|
265
|
-
aider_ce-0.88.
|
|
266
|
-
aider_ce-0.88.
|
|
267
|
-
aider_ce-0.88.
|
|
268
|
-
aider_ce-0.88.
|
|
269
|
-
aider_ce-0.88.
|
|
266
|
+
aider_ce-0.88.5.dist-info/licenses/LICENSE.txt,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
|
|
267
|
+
aider_ce-0.88.5.dist-info/METADATA,sha256=uCUDJn4PseoYw1J-KczE4HLbg3JfANIPcjiKYkH48Zg,20820
|
|
268
|
+
aider_ce-0.88.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
269
|
+
aider_ce-0.88.5.dist-info/entry_points.txt,sha256=qUBEUd84DYNEHFSgZbgsjgsrAABxqwOj-Dwut9pHZx0,45
|
|
270
|
+
aider_ce-0.88.5.dist-info/top_level.txt,sha256=uwOA6ycgSiRLrBsaRBcIeN_eBKAX78U01_KDEHR8mBk,6
|
|
271
|
+
aider_ce-0.88.5.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|