Parcourir la source

Rename group default version tag

main
Sindre Stephansen il y a 2 ans
Parent
révision
5c4a466c97
Signé par: sindre <sindre@sindrestephansen.com> ID de la clé GPG: B06FC67D17A46ADE
2 fichiers modifiés avec 41 ajouts et 43 suppressions
  1. +2
    -2
      package-list.yaml
  2. +39
    -41
      sync/src/config/packages.py

+ 2
- 2
package-list.yaml Voir le fichier

@@ -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']

+ 39
- 41
sync/src/config/packages.py Voir le fichier

@@ -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

Chargement…
Annuler
Enregistrer