X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/4eaec8359423df351a2c978095419e65e8dbac49..42f10670b654b2314e05fee142ec6b18a8196362:/buildSrc/src/main/kotlin/CheckLibVersionsPlugin.kt diff --git a/buildSrc/src/main/kotlin/CheckLibVersionsPlugin.kt b/buildSrc/src/main/kotlin/CheckLibVersionsPlugin.kt index 701bd6e3..ae8ae4de 100644 --- a/buildSrc/src/main/kotlin/CheckLibVersionsPlugin.kt +++ b/buildSrc/src/main/kotlin/CheckLibVersionsPlugin.kt @@ -1,19 +1,20 @@ -import groovy.util.XmlSlurper -import groovy.util.slurpersupport.GPathResult -import org.codehaus.groovy.runtime.ResourceGroovyMethods +@file:Suppress("DEPRECATION") + import org.gradle.api.Plugin import org.gradle.api.Project import org.gradle.api.Task import org.gradle.api.artifacts.Dependency +import javax.xml.parsers.DocumentBuilderFactory class CheckLibVersionsPlugin : Plugin { override fun apply(project: Project) { project.task("checkLibVersions") { - description = "Find any 3rd party libraries which have released new versions to the central Maven repo since we last upgraded." + description = + "Find any 3rd party libraries which have released new versions to the central Maven repo since we last upgraded." doLast { project.configurations.flatMap { it.allDependencies } - .toSet() - .forEach { checkDependency(it) } + .toSet() + .forEach { checkDependency(it) } } } } @@ -25,15 +26,15 @@ class CheckLibVersionsPlugin : Plugin { val name = dependency.name val metaDataUrl = "https://repo1.maven.org/maven2/$path/$name/maven-metadata.xml" try { - val url = ResourceGroovyMethods.toURL(metaDataUrl) - val metaDataText = ResourceGroovyMethods.getText(url) - val metadata = XmlSlurper().parseText(metaDataText) - val newest = (metadata.getProperty("versioning") as GPathResult).getProperty("latest") + val dbf = DocumentBuilderFactory.newInstance() + val db = dbf.newDocumentBuilder() + val doc = db.parse(metaDataUrl); + val newest = doc.getElementsByTagName("latest").item(0).textContent if (version != newest.toString()) { println("UPGRADE {\"group\": \"$group\", \"name\": \"$name\", \"current\": \"$version\", \"latest\": \"$newest\"}") } } catch (e: Throwable) { - logger.debug("Unable to download or parse $metaDataUrl: $e.message") + logger.debug("Unable to download or parse {}: {}", metaDataUrl, e.message) } } }