tony
06/28/2025, 8:45 PMMartin
06/28/2025, 9:13 PMMartin
06/28/2025, 9:13 PMkotlin-gradle-plugin is a lot less stable than kotlin-stdlib and I think it's fine?Martin
06/28/2025, 9:15 PMMartin
06/28/2025, 9:16 PMOleg Nenashev
06/29/2025, 8:27 AMThomas Broyer
06/29/2025, 9:40 AMThomas Broyer
06/29/2025, 9:42 AMThomas Broyer
06/29/2025, 9:47 AMtony
06/29/2025, 5:53 PMMartin
06/29/2025, 8:30 PMAurimas Liutikas
06/30/2025, 3:00 PMMartin
06/30/2025, 3:00 PMAurimas Liutikas
06/30/2025, 3:02 PMMartin
06/30/2025, 3:03 PMAurimas Liutikas
06/30/2025, 3:03 PMtony
06/30/2025, 6:21 PMThe development of a separate binary compatibility validator Gradle plugin has been discontinued, and all its functionality will be moved to Kotlin Gradle Plugin starting from the 2.2.0 release.that's slightly annoying, but maybe it doesn't matter in practice. I'll take a look at metalava! thanks
tony
06/30/2025, 6:22 PMcom.android.tools.metalava:metalava:1.0.0-alpha11
and then that Metalava.kt file you shared is one way in which one can use it?Aurimas Liutikas
06/30/2025, 6:23 PMAurimas Liutikas
06/30/2025, 7:52 PMMartin
06/30/2025, 8:54 PMAurimas Liutikas
06/30/2025, 9:13 PMtony
07/02/2025, 5:22 PMgoogle() repo for my build-logic, so I added it just for this dep, and this is what I ended up with in order to fully resolve it and all its dependencies
exclusiveContent {
forRepository {
maven(url = "<https://dl.google.com/dl/android/maven2/>")
}
filter {
includeGroup("com.android.tools.metalava")
includeGroup("com.android.tools")
includeGroup("com.android.tools.layoutlib")
includeGroup("com.android.tools.ddms")
includeGroup("com.android.tools.build")
includeGroup("com.android.tools.analytics-library")
includeGroup("com.android.tools.lint")
includeGroup("com.android.tools.external.com-intellij")
includeGroup("com.android.tools.external.org-jetbrains")
}
}Aurimas Liutikas
07/02/2025, 5:22 PMAurimas Liutikas
07/02/2025, 5:22 PMtony
07/02/2025, 5:23 PMAurimas Liutikas
07/02/2025, 5:23 PMtony
07/02/2025, 5:23 PMAurimas Liutikas
07/02/2025, 5:23 PMtony
07/02/2025, 5:24 PMAurimas Liutikas
07/02/2025, 5:24 PMtony
07/02/2025, 5:25 PMAurimas Liutikas
07/02/2025, 5:25 PMAurimas Liutikas
07/02/2025, 5:25 PMtony
07/02/2025, 5:25 PMtony
07/02/2025, 5:25 PMAurimas Liutikas
07/02/2025, 5:25 PMtony
07/02/2025, 5:26 PMAurimas Liutikas
07/02/2025, 5:26 PMtony
07/03/2025, 10:07 PM> Task :metalava
Exception in thread "main" java.lang.IllegalStateException: Invalid type in API surface: PsiType:<ErrorType> for element TYPE_REFERENCE in file /User
s/trobalik/Development/dependency-analysis-gradle-plugin/src/main/kotlin/com/autonomousapps/internal/utils/moshi.kt:106
at com.android.tools.metalava.model.psi.PsiTypeItemFactory.createTypeItem(PsiTypeItemFactory.kt:318)
Here's the code in question:
// the function definition is line 106 from the stacktrace
inline fun <reified K, reified V> File.bufferWriteJsonMap(
set: Map<K, V>,
withNulls: Boolean = false,
indent: String = noJsonIndent
) {
JsonWriter.of(sink().buffer()).use { writer ->
getJsonMapAdapter<K, V>(withNulls).indent(indent).toJson(writer, set)
}
}
I'm using this as a guidetony
07/03/2025, 10:09 PMval jdkHome = org.gradle.internal.jvm.Jvm.current().javaHome.absolutePathtony
07/03/2025, 10:12 PMtony
07/03/2025, 10:14 PMpublic AbstractExtension(@androidx.annotation.NonNull org.gradle.api.model.ObjectFactory objectstony
07/03/2025, 10:28 PM