fix ensure upgrade_until shows is processed correctly

This commit is contained in:
Johan van Eck 2025-07-26 13:29:04 +03:00
parent f2c276cbbb
commit 079e77a882
27 changed files with 108 additions and 1 deletions

View file

@ -7,11 +7,15 @@
# ///
import os
import sys
import yaml
from utils.custom_formats import collect_custom_formats
from utils.regex_patterns import collect_regex_patterns
from utils.profiles import collect_profiles
# Prevent aliases from showing up
yaml.Dumper.ignore_aliases = lambda *args: True
def clear_output_dir(output_dir):
if not os.path.exists(output_dir):

View file

@ -97,10 +97,21 @@ def collect_qualities(items):
return qualities
def get_upgrade_until(quality_name, profile_qualities):
found_quality = next(
quality for quality in profile_qualities if quality["name"] == quality_name
)
if found_quality:
found_quality = found_quality.copy()
found_quality.pop("qualities", None)
return found_quality
def collect_profile(service, input_json, output_dir):
# Compose YAML structure
name = input_json.get("name", "")
trash_id = input_json.get("trash_id", "")
profile_qualities = collect_qualities(input_json.get("items", []))
yml_data = {
"name": get_file_name(name),
"description": f"""[Profile from TRaSH-Guides.](https://trash-guides.info/{service.capitalize()}/{service}-setup-quality-profiles)
@ -112,7 +123,8 @@ def collect_profile(service, input_json, output_dir):
"minCustomFormatScore": input_json.get("minFormatScore", 0),
"upgradeUntilScore": input_json.get("cutoffFormatScore", 0),
"minScoreIncrement": input_json.get("minUpgradeFormatScore", 0),
"qualities": collect_qualities(input_json.get("items", [])),
"qualities": profile_qualities,
"upgrade_until": get_upgrade_until(input_json.get("cutoff"), profile_qualities),
"custom_formats": collect_profile_formats(
input_json.get("trash_score_set"),
input_json.get("formatItems", {}),