Today Kotlin 2.4.0 was released. We use Renovate as an Dependency Automation tool. Usually Renovate detects Kotlin updates inside it’s monorepo default rule by looking up the SCM url inside the POM.
But it seems like on Gradle Plugin Portal this information is missing, which results into creating two PRs for the same Kotlin version update (one for the Kotlin runtime deps and one for the Gradle plugins).
<project
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jetbrains.kotlin.plugin.serialization</groupId>
<artifactId>org.jetbrains.kotlin.plugin.serialization.gradle.plugin</artifactId>
<version>2.4.0</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-serialization</artifactId>
<version>2.4.0</version>
</dependency>
</dependencies>
</project>
POM for the same dependency on MavenCentral:
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.jetbrains.kotlin.plugin.serialization</groupId>
<artifactId>org.jetbrains.kotlin.plugin.serialization.gradle.plugin</artifactId>
<version>2.4.0</version>
<packaging>pom</packaging>
<name>Kotlin compiler plugin for kotlinx.serialization library</name>
<description>Kotlin compiler plugin for kotlinx.serialization library</description>
<url>https://kotlinlang.org/</url>
<licenses>
<license>
<name>Apache-2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<name>Kotlin Team</name>
<organization>JetBrains</organization>
<organizationUrl>https://www.jetbrains.com</organizationUrl>
</developer>
</developers>
<scm>
<connection>scm:git:https://github.com/JetBrains/kotlin.git</connection>
<developerConnection>scm:git:https://github.com/JetBrains/kotlin.git</developerConnection>
<url>https://github.com/JetBrains/kotlin</url>
</scm>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-serialization</artifactId>
<version>2.4.0</version>
</dependency>
</dependencies>
</project>
I would assume this is not an issue on Jetbrains side, since this used to work and older POMs also do not contain these information.
Was there some behavior changed for the plugins.gradle.org Maven repository?