diff --git a/package-list.yaml b/package-list.yaml index 8661b37..ff287a9 100644 --- a/package-list.yaml +++ b/package-list.yaml @@ -37,12 +37,12 @@ configurations: packages: org.jetbrains.kotlinx:kotlinx-datetime: "0.4.0" com.expediagroup: - _versions: ["latest", "stable"] + _default: ["latest", "stable"] graphql-kotlin-ktor-server: ["latest"] graphql-kotlin-client: [] graphql-kotlin-client-generator: [] io.insert-koin: - _versions: ['3.3.0', '3.2.2'] + _default: ['3.3.0', '3.2.2'] koin-core: [] koin-ktor: ['default', '-3.3.0', '3.2.1'] diff --git a/sync/src/config/packages.py b/sync/src/config/packages.py index 50b4381..073e74e 100644 --- a/sync/src/config/packages.py +++ b/sync/src/config/packages.py @@ -18,54 +18,52 @@ class Package: def handle_packages(section) -> list[Package]: - ignore = ['_versions'] result: list[Package] = [] for entry in section: - if entry not in ignore: - if ':' in entry: - try: - group_id, artifact_id = entry.split(':') - except ValueError: - logger.exception( - f'Illegal package identifier "{entry}". Should be on the format "groupId:artifactId"') - continue + if ':' in entry: + try: + group_id, artifact_id = entry.split(':') + except ValueError: + logger.exception( + f'Illegal package identifier "{entry}". Should be on the format "groupId:artifactId"') + continue - value = section[entry] - if isinstance(value, str): - result.append(Package(group_id, artifact_id, value)) - elif isinstance(value, list): - for version in value: - result.append(Package(group_id, artifact_id, version)) - else: - logger.warning(f'Invalid version "{value}" for "{entry}". Should be a string or list.') - elif isinstance(section[entry], dict): - group_id = entry - group_section = section[entry] - default_versions = group_section.get('_versions', []) + value = section[entry] + if isinstance(value, str): + result.append(Package(group_id, artifact_id, value)) + elif isinstance(value, list): + for version in value: + result.append(Package(group_id, artifact_id, version)) + else: + logger.warning(f'Invalid version "{value}" for "{entry}". Should be a string or list.') + elif isinstance(section[entry], dict): + group_id = entry + group_section = section[entry] + default_versions = group_section.get('_default', []) - for artifact_id, value in group_section.items(): - if artifact_id not in ignore: - if not value and default_versions: - value = default_versions + for artifact_id, value in group_section.items(): + if not artifact_id.startswith('_'): + if not value and default_versions: + value = default_versions - if isinstance(value, str): - result.append(Package(group_id, artifact_id, value)) - elif isinstance(value, list): - versions: set[str] = set() + if isinstance(value, str): + result.append(Package(group_id, artifact_id, value)) + elif isinstance(value, list): + versions: set[str] = set() - for version in value: - if version == 'default': - versions.update(default_versions) - elif version.startswith('-'): - versions.remove(version[1:]) - else: - versions.add(version) + for version in value: + if version == 'default': + versions.update(default_versions) + elif version.startswith('-'): + versions.remove(version[1:]) + else: + versions.add(version) - result.extend([Package(group_id, artifact_id, version) for version in versions]) - else: - logger.warning(f'Invalid versions "{value}" for "{group_id}:{artifact_id}"') - else: - logger.warning(f'Invalid package spec "{entry}". Should be a full spec or a group ID') + result.extend([Package(group_id, artifact_id, version) for version in versions]) + else: + logger.warning(f'Invalid versions "{value}" for "{group_id}:{artifact_id}"') + else: + logger.warning(f'Invalid package spec "{entry}". Should be a full spec or a group ID') return result