From bd2b5ae5fcbbf074eb7e906d2aa8e67ff0f340e6 Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Tue, 27 Jun 2023 16:46:45 +0600 Subject: [PATCH] add versions plugin --- build.gradle | 5 +++++ gradle/libs.versions.toml | 4 ++++ versions_plugin_setup.gradle | 11 +++++++++++ 3 files changed, 20 insertions(+) create mode 100644 versions_plugin_setup.gradle diff --git a/build.gradle b/build.gradle index a16dd8dd48e..1bd84cf99f1 100644 --- a/build.gradle +++ b/build.gradle @@ -17,6 +17,10 @@ buildscript { } } +plugins { + alias(libs.plugins.versions) +} + allprojects { repositories { mavenLocal() @@ -38,3 +42,4 @@ allprojects { apply from: "./extensions.gradle" apply from: "./github_release.gradle" +apply from: "./versions_plugin_setup.gradle" diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c697d57c4a4..23791e6ff26 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -24,6 +24,8 @@ okio = "3.3.0" ksp = "1.8.20-1.0.11" kotlin-poet = "1.14.2" +versions = "0.47.0" + android-gradle = "7.4.2" dexcount = "4.0.0" @@ -109,3 +111,5 @@ buildscript-android-dexcount = { module = "com.getkeepsafe.dexcount:dexcount-gra [plugins] jb-compose = { id = "org.jetbrains.compose", version.ref = "jb-compose" } + +versions = { id = "com.github.ben-manes.versions", version.ref = "versions" } diff --git a/versions_plugin_setup.gradle b/versions_plugin_setup.gradle new file mode 100644 index 00000000000..2e971237cae --- /dev/null +++ b/versions_plugin_setup.gradle @@ -0,0 +1,11 @@ +def isNonStable = { String version -> + def stableKeyword = ['RELEASE', 'FINAL', 'GA'].any { it -> version.toUpperCase().contains(it) } + def regex = /^[0-9,.v-]+(-r)?$/ + return !stableKeyword && !(version ==~ regex) +} + +tasks.named("dependencyUpdates").configure { + rejectVersionIf { + isNonStable(it.candidate.version) + } +}