mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-29 08:44:59 +00:00
refactor: ensure 'name' field appears first in YAML output
This commit is contained in:
parent
d54b13e80a
commit
f2512d1ff1
1 changed files with 7 additions and 6 deletions
|
@ -1409,22 +1409,23 @@ def print_matching_models(io, search):
|
||||||
|
|
||||||
def get_model_settings_as_yaml():
|
def get_model_settings_as_yaml():
|
||||||
import yaml
|
import yaml
|
||||||
|
from dataclasses import fields
|
||||||
|
|
||||||
model_settings_list = []
|
model_settings_list = []
|
||||||
for ms in MODEL_SETTINGS:
|
for ms in MODEL_SETTINGS:
|
||||||
# Create ordered dict with name first
|
# Create dict with explicit field order
|
||||||
model_settings_dict = {"name": ms.name}
|
model_settings_dict = {}
|
||||||
# Add remaining fields in order
|
|
||||||
for field in fields(ModelSettings):
|
for field in fields(ModelSettings):
|
||||||
if field.name != "name":
|
model_settings_dict[field.name] = getattr(ms, field.name)
|
||||||
model_settings_dict[field.name] = getattr(ms, field.name)
|
|
||||||
model_settings_list.append(model_settings_dict)
|
model_settings_list.append(model_settings_dict)
|
||||||
# Add blank line between entries
|
# Add blank line between entries
|
||||||
model_settings_list.append(None)
|
model_settings_list.append(None)
|
||||||
|
|
||||||
# Filter out None values before dumping
|
# Filter out None values before dumping
|
||||||
yaml_str = yaml.dump(
|
yaml_str = yaml.dump(
|
||||||
[ms for ms in model_settings_list if ms is not None], default_flow_style=False
|
[ms for ms in model_settings_list if ms is not None],
|
||||||
|
default_flow_style=False,
|
||||||
|
sort_keys=False # Preserve field order from dataclass
|
||||||
)
|
)
|
||||||
# Add actual blank lines between entries
|
# Add actual blank lines between entries
|
||||||
return yaml_str.replace("\n- ", "\n\n- ")
|
return yaml_str.replace("\n- ", "\n\n- ")
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue