chore: migrate to version catalog, Gropify

This commit is contained in:
2025-11-12 17:55:33 +08:00
parent 1ac51ac09f
commit 28c31b0386
9 changed files with 187 additions and 217 deletions

View File

@@ -2,11 +2,11 @@ import org.jetbrains.kotlin.gradle.dsl.JvmTarget
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
plugins {
autowire(libs.plugins.android.application) apply false
autowire(libs.plugins.android.library) apply false
autowire(libs.plugins.kotlin.jvm) apply false
autowire(libs.plugins.kotlin.android) apply false
autowire(libs.plugins.kotlin.ksp) apply false
alias(libs.plugins.android.application) apply false
alias(libs.plugins.android.library) apply false
alias(libs.plugins.kotlin.jvm) apply false
alias(libs.plugins.kotlin.android) apply false
alias(libs.plugins.kotlin.ksp) apply false
}
allprojects {

65
gradle/libs.versions.toml Normal file
View File

@@ -0,0 +1,65 @@
[versions]
agp = "8.13.1"
kotlin = "2.2.21"
ksp = "2.2.21-2.0.4"
maven-publish = "0.35.0"
rovo89-xposed-api = "82"
hiddenapibypass = "6.1"
auto-service-annotations = "1.1.1"
auto-service-ksp = "1.2.0"
kavaref-core = "1.0.2"
kavaref-extension = "1.0.1"
hikage-core = "1.0.2"
hikage-compiler = "1.0.1"
hikage-extension = "1.0.1"
hikage-widget-androidx = "1.0.1"
hikage-widget-material = "1.0.1"
betterandroid-ui-component = "1.0.8"
betterandroid-ui-extension = "1.0.7"
betterandroid-system-extension = "1.0.3"
androidx-annotation = "1.9.1"
androidx-preference-ktx = "1.2.1"
androidx-core-ktx = "1.17.0"
androidx-appcompat = "1.7.1"
androidx-lifecycle-viewmodel-ktx = "2.9.4"
# noinspection GradleDependency
material = "1.11.0"
androidx-constraintlayout = "2.2.1"
junit = "4.13.2"
androidx-test-ext-junit = "1.3.0"
androidx-test-espresso-core = "3.7.0"
[plugins]
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlin-ksp = { id = "com.google.devtools.ksp", version.ref = "ksp" }
android-application = { id = "com.android.application", version.ref = "agp" }
android-library = { id = "com.android.library", version.ref = "agp" }
maven-publish = { id = "com.vanniktech.maven.publish", version.ref = "maven-publish" }
[libraries]
rovo89-xposed-api = { module = "de.robv.android.xposed:api", version.ref = "rovo89-xposed-api" }
hiddenapibypass = { module = "org.lsposed.hiddenapibypass:hiddenapibypass", version.ref = "hiddenapibypass" }
symbol-processing-api = { module = "com.google.devtools.ksp:symbol-processing-api", version.ref = "ksp" }
auto-service-annotations = { module = "com.google.auto.service:auto-service-annotations", version.ref = "auto-service-annotations" }
auto-service-ksp = { module = "dev.zacsweers.autoservice:auto-service-ksp", version.ref = "auto-service-ksp" }
kavaref-core = { module = "com.highcapable.kavaref:kavaref-core", version.ref = "kavaref-core" }
kavaref-extension = { module = "com.highcapable.kavaref:kavaref-extension", version.ref = "kavaref-extension" }
hikage-core = { module = "com.highcapable.hikage:hikage-core", version.ref = "hikage-core" }
hikage-compiler = { module = "com.highcapable.hikage:hikage-compiler", version.ref = "hikage-compiler" }
hikage-extension = { module = "com.highcapable.hikage:hikage-extension", version.ref = "hikage-extension" }
hikage-widget-androidx = { module = "com.highcapable.hikage:hikage-widget-androidx", version.ref = "hikage-widget-androidx" }
hikage-widget-material = { module = "com.highcapable.hikage:hikage-widget-material", version.ref = "hikage-widget-material" }
betterandroid-ui-component = { module = "com.highcapable.betterandroid:ui-component", version.ref = "betterandroid-ui-component" }
betterandroid-ui-extension = { module = "com.highcapable.betterandroid:ui-extension", version.ref = "betterandroid-ui-extension" }
betterandroid-system-extension = { module = "com.highcapable.betterandroid:system-extension", version.ref = "betterandroid-system-extension" }
androidx-annotation = { module = "androidx.annotation:annotation", version.ref = "androidx-annotation" }
androidx-preference-ktx = { module = "androidx.preference:preference-ktx", version.ref = "androidx-preference-ktx" }
androidx-core-ktx = { module = "androidx.core:core-ktx", version.ref = "androidx-core-ktx" }
androidx-appcompat = { module = "androidx.appcompat:appcompat", version.ref = "androidx-appcompat" }
androidx-lifecycle-viewmodel-ktx = { module = "androidx.lifecycle:lifecycle-viewmodel-ktx", version.ref = "androidx-lifecycle-viewmodel-ktx" }
material = { module = "com.google.android.material:material", version.ref = "material" }
androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintlayout" }
junit = { module = "junit:junit", version.ref = "junit" }
androidx-test-ext-junit = { module = "androidx.test.ext:junit", version.ref = "androidx-test-ext-junit" }
androidx-test-espresso-core = { module = "androidx.test.espresso:espresso-core", version.ref = "androidx-test-espresso-core" }

View File

@@ -1,110 +0,0 @@
preferences:
autowire-on-sync-mode: UPDATE_OPTIONAL_DEPENDENCIES
repositories-mode: FAIL_ON_PROJECT_REPOS
repositories:
gradle-plugin-portal:
scope: PLUGINS
google:
maven-central:
jit-pack:
rovo89-xposed-api:
scope: LIBRARIES
url: https://api.xposed.info/
content:
include:
group:
de.robv.android.xposed
plugins:
org.jetbrains.kotlin.jvm:
alias: kotlin-jvm
version: 2.2.20
org.jetbrains.kotlin.android:
alias: kotlin-android
version-ref: kotlin-jvm
com.google.devtools.ksp:
alias: kotlin-ksp
version: 2.2.20-2.0.3
com.android.application:
alias: android-application
version: 8.13.0
com.android.library:
alias: android-library
version-ref: android-application
com.vanniktech.maven.publish:
alias: maven-publish
version: 0.34.0
libraries:
de.robv.android.xposed:
api:
version: 82
repositories:
rovo89-xposed-api
org.lsposed.hiddenapibypass:
hiddenapibypass:
version: 6.1
com.google.devtools.ksp:
symbol-processing-api:
version-ref: <plugins>::kotlin-ksp
com.google.auto.service:
auto-service-annotations:
version: 1.1.1
dev.zacsweers.autoservice:
auto-service-ksp:
version: 1.2.0
com.highcapable.kavaref:
kavaref-core:
version: 1.0.2
kavaref-extension:
version: 1.0.1
com.highcapable.hikage:
hikage-core:
version: 1.0.2
hikage-compiler:
version: 1.0.1
hikage-extension:
version: 1.0.1
hikage-widget-androidx:
version: 1.0.1
hikage-widget-material:
version: 1.0.1
com.highcapable.betterandroid:
ui-component:
version: 1.0.8
ui-extension:
version: 1.0.7
system-extension:
version: 1.0.3
androidx.annotation:
annotation:
version: 1.9.1
androidx.preference:
preference-ktx:
version: 1.2.1
androidx.core:
core-ktx:
version: 1.17.0
androidx.appcompat:
appcompat:
version: 1.7.1
androidx.lifecycle:
lifecycle-viewmodel-ktx:
version: 2.9.4
com.google.android.material:
material:
version: 1.11.0
auto-update: false
androidx.constraintlayout:
constraintlayout:
version: 2.2.1
androidx.test.ext:
junit:
version: 1.3.0
androidx.test.espresso:
espresso-core:
version: 3.7.0
junit:
junit:
version: 4.13.2

View File

@@ -1,19 +1,19 @@
plugins {
autowire(libs.plugins.android.application)
autowire(libs.plugins.kotlin.android)
autowire(libs.plugins.kotlin.ksp)
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.ksp)
}
android {
namespace = property.project.samples.demo.app.packageName
compileSdk = property.project.android.compileSdk
namespace = gropify.project.samples.demo.app.packageName
compileSdk = gropify.project.android.compileSdk
defaultConfig {
applicationId = property.project.samples.demo.app.packageName
minSdk = property.project.android.minSdk
targetSdk = property.project.android.targetSdk
versionName = property.project.samples.demo.app.versionName
versionCode = property.project.samples.demo.app.versionCode
applicationId = gropify.project.samples.demo.app.packageName
minSdk = gropify.project.android.minSdk
targetSdk = gropify.project.android.targetSdk
versionName = gropify.project.samples.demo.app.versionName
versionCode = gropify.project.samples.demo.app.versionCode
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
@@ -34,20 +34,20 @@ android {
}
dependencies {
ksp(com.highcapable.hikage.hikage.compiler)
implementation(com.highcapable.hikage.hikage.core)
implementation(com.highcapable.hikage.hikage.extension)
implementation(com.highcapable.hikage.hikage.widget.androidx)
implementation(com.highcapable.hikage.hikage.widget.material)
implementation(com.highcapable.betterandroid.ui.component)
implementation(com.highcapable.betterandroid.ui.extension)
implementation(com.highcapable.betterandroid.system.extension)
implementation(androidx.core.core.ktx)
implementation(androidx.appcompat.appcompat)
implementation(androidx.lifecycle.lifecycle.viewmodel.ktx)
implementation(com.google.android.material.material)
implementation(androidx.constraintlayout.constraintlayout)
testImplementation(junit.junit)
androidTestImplementation(androidx.test.ext.junit)
androidTestImplementation(androidx.test.espresso.espresso.core)
ksp(libs.hikage.compiler)
implementation(libs.hikage.core)
implementation(libs.hikage.extension)
implementation(libs.hikage.widget.androidx)
implementation(libs.hikage.widget.material)
implementation(libs.betterandroid.ui.component)
implementation(libs.betterandroid.ui.extension)
implementation(libs.betterandroid.system.extension)
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.androidx.lifecycle.viewmodel.ktx)
implementation(libs.material)
implementation(libs.androidx.constraintlayout)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.test.ext.junit)
androidTestImplementation(libs.androidx.test.espresso.core)
}

View File

@@ -1,19 +1,19 @@
plugins {
autowire(libs.plugins.android.application)
autowire(libs.plugins.kotlin.android)
autowire(libs.plugins.kotlin.ksp)
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.ksp)
}
android {
namespace = property.project.samples.demo.module.packageName
compileSdk = property.project.android.compileSdk
namespace = gropify.project.samples.demo.module.packageName
compileSdk = gropify.project.android.compileSdk
defaultConfig {
applicationId = property.project.samples.demo.module.packageName
minSdk = property.project.android.minSdk
targetSdk = property.project.android.targetSdk
versionName = property.project.samples.demo.module.versionName
versionCode = property.project.samples.demo.module.versionCode
applicationId = gropify.project.samples.demo.module.packageName
minSdk = gropify.project.android.minSdk
targetSdk = gropify.project.android.targetSdk
versionName = gropify.project.samples.demo.module.versionName
versionCode = gropify.project.samples.demo.module.versionCode
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
@@ -35,26 +35,26 @@ android {
}
dependencies {
compileOnly(de.robv.android.xposed.api)
compileOnly(libs.rovo89.xposed.api)
implementation(projects.yukihookapiCore)
ksp(projects.yukihookapiKspXposed)
ksp(com.highcapable.hikage.hikage.compiler)
implementation(com.highcapable.kavaref.kavaref.core)
implementation(com.highcapable.kavaref.kavaref.extension)
implementation(com.highcapable.hikage.hikage.core)
implementation(com.highcapable.hikage.hikage.extension)
implementation(com.highcapable.hikage.hikage.widget.androidx)
implementation(com.highcapable.hikage.hikage.widget.material)
implementation(com.highcapable.betterandroid.ui.component)
implementation(com.highcapable.betterandroid.ui.extension)
implementation(com.highcapable.betterandroid.system.extension)
implementation(androidx.preference.preference.ktx)
implementation(androidx.core.core.ktx)
implementation(androidx.appcompat.appcompat)
implementation(androidx.lifecycle.lifecycle.viewmodel.ktx)
implementation(com.google.android.material.material)
implementation(androidx.constraintlayout.constraintlayout)
testImplementation(junit.junit)
androidTestImplementation(androidx.test.ext.junit)
androidTestImplementation(androidx.test.espresso.espresso.core)
ksp(libs.hikage.compiler)
implementation(libs.kavaref.core)
implementation(libs.kavaref.extension)
implementation(libs.hikage.core)
implementation(libs.hikage.extension)
implementation(libs.hikage.widget.androidx)
implementation(libs.hikage.widget.material)
implementation(libs.betterandroid.ui.component)
implementation(libs.betterandroid.ui.extension)
implementation(libs.betterandroid.system.extension)
implementation(libs.androidx.preference.ktx)
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.androidx.lifecycle.viewmodel.ktx)
implementation(libs.material)
implementation(libs.androidx.constraintlayout)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.test.ext.junit)
androidTestImplementation(libs.androidx.test.espresso.core)
}

View File

@@ -6,21 +6,36 @@ pluginManagement {
mavenCentral()
}
}
plugins {
id("com.highcapable.sweetdependency") version "1.0.4"
id("com.highcapable.sweetproperty") version "1.0.8"
}
sweetProperty {
global {
sourcesCode {
includeKeys("^project\\..*\$".toRegex())
isEnableRestrictedAccess = true
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven("https://jitpack.io")
maven("https://api.xposed.info/") {
content {
includeGroup("de.robv.android.xposed")
}
}
}
rootProject { all { isEnable = false } }
project(":samples") { all { isEnable = false } }
project(":samples:demo-app", ":samples:demo-module", ":yukihookapi-stub") { sourcesCode { isEnable = false } }
project(":yukihookapi-core", ":yukihookapi-ksp-xposed") { sourcesCode { className = rootProject.name } }
}
plugins {
id("com.highcapable.gropify") version "1.0.0"
}
gropify {
global {
android {
includeKeys("^project\\..*\$".toRegex())
isRestrictedAccessEnabled = true
}
}
rootProject { common { isEnabled = false } }
projects(":samples") { common { isEnabled = false } }
projects(":samples:demo-app", ":samples:demo-module", ":yukihookapi-stub") { android { isEnabled = false } }
projects(":yukihookapi-core", ":yukihookapi-ksp-xposed") {
android { className = rootProject.name }
jvm { className = rootProject.name }
}
}
rootProject.name = "YukiHookAPI"
include(":samples:demo-app", ":samples:demo-module")

View File

@@ -1,20 +1,20 @@
import com.vanniktech.maven.publish.AndroidSingleVariantLibrary
plugins {
autowire(libs.plugins.android.library)
autowire(libs.plugins.kotlin.android)
autowire(libs.plugins.maven.publish)
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.maven.publish)
}
group = property.project.groupName
version = property.project.yukihookapi.core.version
group = gropify.project.groupName
version = gropify.project.yukihookapi.core.version
android {
namespace = property.project.groupName
compileSdk = property.project.android.compileSdk
namespace = gropify.project.groupName
compileSdk = gropify.project.android.compileSdk
defaultConfig {
minSdk = property.project.android.minSdk
minSdk = gropify.project.android.minSdk
consumerProguardFiles("consumer-rules.pro")
}
buildTypes {
@@ -31,23 +31,23 @@ android {
}
dependencies {
compileOnly(de.robv.android.xposed.api)
compileOnly(libs.rovo89.xposed.api)
compileOnly(projects.yukihookapiStub)
implementation(org.lsposed.hiddenapibypass.hiddenapibypass)
implementation(com.highcapable.kavaref.kavaref.core)
implementation(com.highcapable.kavaref.kavaref.extension)
implementation(com.highcapable.betterandroid.ui.extension)
implementation(com.highcapable.betterandroid.system.extension)
implementation(androidx.core.core.ktx)
implementation(androidx.appcompat.appcompat)
implementation(androidx.preference.preference.ktx)
implementation(libs.hiddenapibypass)
implementation(libs.kavaref.core)
implementation(libs.kavaref.extension)
implementation(libs.betterandroid.ui.extension)
implementation(libs.betterandroid.system.extension)
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.androidx.preference.ktx)
}
mavenPublishing {
configure(AndroidSingleVariantLibrary(publishJavadocJar = false))
coordinates(
groupId = group.toString(),
artifactId = property.project.yukihookapi.core.moduleName,
artifactId = gropify.project.yukihookapi.core.moduleName,
version = version.toString()
)
}

View File

@@ -1,11 +1,11 @@
plugins {
autowire(libs.plugins.kotlin.jvm)
autowire(libs.plugins.kotlin.ksp)
autowire(libs.plugins.maven.publish)
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.kotlin.ksp)
alias(libs.plugins.maven.publish)
}
group = property.project.groupName
version = property.project.yukihookapi.ksp.xposed.version
group = gropify.project.groupName
version = gropify.project.yukihookapi.ksp.xposed.version
java {
sourceCompatibility = JavaVersion.VERSION_17
@@ -27,15 +27,15 @@ kotlin {
}
dependencies {
implementation(com.google.auto.service.auto.service.annotations)
compileOnly(com.google.devtools.ksp.symbol.processing.api)
ksp(dev.zacsweers.autoservice.auto.service.ksp)
implementation(libs.auto.service.annotations)
compileOnly(libs.symbol.processing.api)
ksp(libs.auto.service.ksp)
}
mavenPublishing {
coordinates(
groupId = group.toString(),
artifactId = property.project.yukihookapi.ksp.xposed.moduleName,
artifactId = gropify.project.yukihookapi.ksp.xposed.moduleName,
version = version.toString()
)
}

View File

@@ -1,14 +1,14 @@
plugins {
autowire(libs.plugins.android.library)
autowire(libs.plugins.kotlin.android)
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
}
android {
namespace = property.project.groupName
compileSdk = property.project.android.compileSdk
namespace = gropify.project.groupName
compileSdk = gropify.project.android.compileSdk
defaultConfig {
minSdk = property.project.android.minSdk
minSdk = gropify.project.android.minSdk
consumerProguardFiles("consumer-rules.pro")
}
buildTypes {
@@ -25,5 +25,5 @@ android {
}
dependencies {
implementation(androidx.annotation.annotation)
implementation(libs.androidx.annotation)
}