feat: add error handling for 'yes:' config issue

This commit is contained in:
Paul Gauthier (aider) 2024-10-05 11:29:44 -07:00
parent f82ab9cc6e
commit a482ef9bfa

View file

@ -361,7 +361,20 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
default_config_files = list(map(str, default_config_files))
parser = get_parser(default_config_files, git_root)
args, unknown = parser.parse_known_args(argv)
try:
args, unknown = parser.parse_known_args(argv)
except AttributeError as e:
if "'bool' object has no attribute 'strip'" in str(e):
io.tool_error("Configuration error detected.")
io.tool_output("It seems you have 'yes:' in one of your configuration files.")
io.tool_output("Please replace 'yes:' with 'yes-always:' in the relevant .aider.conf.yml file.")
io.tool_output("Configuration files are searched for in this order:")
for config_file in default_config_files:
io.tool_output(f" - {config_file}")
io.tool_output("For more information, refer to the aider documentation on configuration.")
return 1
else:
raise
if args.verbose:
print("Config files search order, if no --config:")