summaryrefslogtreecommitdiff
path: root/build-logic/kotlin-plugins/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'build-logic/kotlin-plugins/src/main')
-rw-r--r--build-logic/kotlin-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/DependencyUpdatesPlugin.kt33
1 files changed, 33 insertions, 0 deletions
diff --git a/build-logic/kotlin-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/DependencyUpdatesPlugin.kt b/build-logic/kotlin-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/DependencyUpdatesPlugin.kt
new file mode 100644
index 00000000..e3d6e761
--- /dev/null
+++ b/build-logic/kotlin-plugins/src/main/kotlin/dev/msfjarvis/aps/gradle/DependencyUpdatesPlugin.kt
@@ -0,0 +1,33 @@
+package dev.msfjarvis.aps.gradle
+
+import com.github.benmanes.gradle.versions.VersionsPlugin
+import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask
+import nl.littlerobots.vcu.plugin.VersionCatalogUpdateExtension
+import nl.littlerobots.vcu.plugin.VersionCatalogUpdatePlugin
+import org.gradle.api.Plugin
+import org.gradle.api.Project
+import org.gradle.kotlin.dsl.apply
+import org.gradle.kotlin.dsl.getByType
+import org.gradle.kotlin.dsl.withType
+
+@Suppress("Unused")
+class DependencyUpdatesPlugin : Plugin<Project> {
+ override fun apply(project: Project) {
+ project.pluginManager.apply(VersionsPlugin::class)
+ project.pluginManager.apply(VersionCatalogUpdatePlugin::class)
+ project.tasks.withType<DependencyUpdatesTask>().configureEach {
+ rejectVersionIf {
+ when (candidate.group) {
+ "commons-codec",
+ "com.android.tools.build",
+ "org.eclipse.jgit" -> true
+ else -> false
+ }
+ }
+ checkForGradleUpdate = false
+ }
+ project.extensions.getByType<VersionCatalogUpdateExtension>().run {
+ keep.keepUnusedLibraries.set(true)
+ }
+ }
+}