Переглянути джерело

Automatically look for jvm versions of packages

wip/coursier
Sindre Stephansen 2 роки тому
джерело
коміт
2b3f7c2dac
2 змінених файлів з 26 додано та 13 видалено
  1. +9
    -9
      package-list.txt
  2. +17
    -4
      update-poms.py

+ 9
- 9
package-list.txt Переглянути файл

@@ -2,8 +2,8 @@ io.quarkus.platform:quarkus-bom
io.quarkus.platform:quarkus-camel-bom
io.quarkus.platform:quarkus-maven-plugin
org.jetbrains.kotlin:kotlin-bom:1.7.20
org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm
org.jetbrains.kotlinx:kotlinx-datetime-jvm
org.jetbrains.kotlinx:kotlinx-coroutines-core
org.jetbrains.kotlinx:kotlinx-datetime
org.jetbrains.kotlin:kotlin-maven-plugin:1.7.20
org.jetbrains.kotlin:kotlin-maven-allopen:1.7.20
org.jetbrains.kotlin:kotlin-maven-noarg:1.7.20
@@ -14,7 +14,7 @@ org.slf4j:slf4j-api
com.fasterxml.jackson:jackson-bom
org.junit:junit-bom
io.kotest:kotest-bom
io.kotest:kotest-runner-junit5-jvm
io.kotest:kotest-runner-junit5
org.axonframework:axon-bom
com.google.inject:guice-bom
org.mockito:mockito-bom
@@ -47,16 +47,16 @@ org.apache.maven.plugins:maven-failsafe-plugin
org.apache.maven.plugins:maven-shade-plugin
org.apache.maven.plugins:maven-compiler-plugin
com.github.eirslett:frontend-maven-plugin
io.insert-koin:koin-core-jvm
io.insert-koin:koin-test-jvm
io.insert-koin:koin-core
io.insert-koin:koin-test
io.insert-koin:koin-test-core
io.insert-koin:koin-test-junit5
io.insert-koin:koin-ktor
org.kodein.di:kodein-di-jvm
org.kodein.di:kodein-di-framework-ktor-server-jvm
org.kodein.di:kodein-di
org.kodein.di:kodein-di-framework-ktor-server
io.ktor:ktor-bom
io.ktor:ktor-bom:2.0.1
io.mockk:mockk-jvm
io.mockk:mockk
io.quarkiverse.mockk:quarkus-junit5-mockk
org.glassfish.corba:glassfish-corba
org.glassfish.corba:glassfish-corba-tests
@@ -70,7 +70,7 @@ org.glassfish.corba:idlj
org.jetbrains.kotlin:kotlin-maven-serialization:1.6.21
org.jetbrains.kotlin:kotlin-maven-serialization
ch.qos.logback:logback-classic:1.2.11
io.github.microutils:kotlin-logging-jvm
io.github.microutils:kotlin-logging
org.snmp4j:snmp4j
io.github.microutils:kotlin-logging
org.apache.sshd:sshd


+ 17
- 4
update-poms.py Переглянути файл

@@ -111,10 +111,11 @@ class Package:
_pom: PackagePOM | None = None
_verified: bool = False

def __init__(self, groupId: str, artifactId: str, version: str | None = None):
def __init__(self, groupId: str, artifactId: str, version: str | None = None, implicit: bool = False):
self.groupId = groupId
self.artifactId = artifactId
self.version = version
self.implicit = implicit

def __str__(self) -> str:
return f'{self.groupId}:{self.artifactId}:{self.version or "----"}'
@@ -198,7 +199,11 @@ class Package:
self.version = version
logger.debug(f'{self}: Using newest version {version}')
else:
logger.warning(f'{self}: No matching packages found')
if self.implicit:
logger.debug(f'{self}: No matching packages found')
else:
logger.warning(f'{self}: No matching packages found')

self._verified = False
else:
self._verified = False
@@ -229,6 +234,16 @@ def load_package_list(list_path: Path, queue: asyncio.Queue) -> None:

queue.put_nowait(package)

if not package.artifactId.endswith('-jvm'):
queue.put_nowait(
Package(
package.groupId,
f'{package.artifactId}-jvm',
package.version,
True,
)
)


async def download(package: Package, queue: asyncio.Queue) -> None:
async with done_lock:
@@ -250,8 +265,6 @@ async def download(package: Package, queue: asyncio.Queue) -> None:
done.add(str(p))
else:
logger.warning(f'{package}: No POM for package')
else:
logger.warning(f'{package}: Package not found. Check package name and internet connection')


async def worker(queue: asyncio.Queue) -> None:


Завантаження…
Відмінити
Зберегти