diff options
-rw-r--r-- | about/build.gradle | 2 | ||||
-rw-r--r-- | adapter/build.gradle | 6 | ||||
-rw-r--r-- | android-lib.gradle | 20 | ||||
-rw-r--r-- | build.gradle | 20 | ||||
-rw-r--r-- | buildSrc/README.md | 4 | ||||
-rw-r--r-- | buildSrc/build.gradle.kts | 9 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/ChangelogGenerator.kt (renamed from buildSrc/src/main/kotlin/ca/allanwang/kau/ChangelogGenerator.kt) | 10 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/Dependencies.kt | 11 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/Plugins.kt | 12 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/Versions.kt (renamed from buildSrc/src/main/kotlin/ca/allanwang/kau/Versions.kt) | 66 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/ca/allanwang/kau/Dependencies.kt | 14 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/ca/allanwang/kau/KauPlugin.kt | 17 | ||||
-rw-r--r-- | buildSrc/src/main/kotlin/ca/allanwang/kau/Plugins.kt | 15 | ||||
-rw-r--r-- | colorpicker/build.gradle | 4 | ||||
-rw-r--r-- | core-ui/build.gradle | 2 | ||||
-rw-r--r-- | core/build.gradle | 22 | ||||
-rw-r--r-- | kpref-activity/build.gradle | 2 | ||||
-rw-r--r-- | mediapicker/build.gradle | 6 | ||||
-rw-r--r-- | sample/build.gradle | 26 |
19 files changed, 114 insertions, 154 deletions
diff --git a/about/build.gradle b/about/build.gradle index 29f77c0..3aa9ef2 100644 --- a/about/build.gradle +++ b/about/build.gradle @@ -10,7 +10,7 @@ dependencies { implementation project(':core-ui') implementation project(':adapter') - api("com.mikepenz:aboutlibraries:${kau.aboutLibraries}@aar") { + api("com.mikepenz:aboutlibraries:${Versions.aboutLibraries}@aar") { transitive = false } } diff --git a/adapter/build.gradle b/adapter/build.gradle index a4f2583..8826c7d 100644 --- a/adapter/build.gradle +++ b/adapter/build.gradle @@ -1,12 +1,12 @@ -ext.kauSubModuleMinSdk = kau.coreMinSdk +ext.kauSubModuleMinSdk = Versions.coreMinSdk apply from: '../android-lib.gradle' dependencies { implementation project(':core') - api "com.mikepenz:fastadapter-commons:${kau.fastAdapterCommons}@aar" - api "com.mikepenz:fastadapter:${kau.fastAdapter}@aar" + api "com.mikepenz:fastadapter-commons:${Versions.fastAdapterCommons}@aar" + api "com.mikepenz:fastadapter:${Versions.fastAdapter}@aar" } apply from: '../artifacts.gradle' diff --git a/android-lib.gradle b/android-lib.gradle index 28fc945..598ddcb 100644 --- a/android-lib.gradle +++ b/android-lib.gradle @@ -6,15 +6,15 @@ apply plugin: 'com.getkeepsafe.dexcount' group = "ca.allanwang" android { - compileSdkVersion kau.targetSdk - buildToolsVersion kau.buildTools + compileSdkVersion Versions.targetSdk + buildToolsVersion Versions.buildTools androidGitVersion { codeFormat = 'MMNNPPXX' format = '%tag%%.count%%-commit%' } - def kauMinSdk = kau.minSdk + def kauMinSdk = Versions.minSdk if (project.hasProperty('kauSubModuleMinSdk')) kauMinSdk = kauSubModuleMinSdk @@ -26,7 +26,7 @@ android { defaultConfig { minSdkVersion kauMinSdk - targetSdkVersion kau.targetSdk + targetSdkVersion Versions.targetSdk versionName androidGitVersion.name() versionCode androidGitVersion.code() consumerProguardFiles 'progress-proguard.txt' @@ -87,11 +87,11 @@ android { } dependencies { - testImplementation kauDependency.kotlinTest - testImplementation kauDependency.junit + testImplementation Dependencies.kotlinTest + testImplementation Dependencies.junit - androidTestImplementation kauDependency.kotlinTest - androidTestImplementation kauDependency.espresso - androidTestImplementation kauDependency.testRules - androidTestImplementation kauDependency.testRunner + androidTestImplementation Dependencies.kotlinTest + androidTestImplementation Dependencies.espresso + androidTestImplementation Dependencies.testRules + androidTestImplementation Dependencies.testRunner }
\ No newline at end of file diff --git a/build.gradle b/build.gradle index 39aba6f..bcdff15 100644 --- a/build.gradle +++ b/build.gradle @@ -6,29 +6,25 @@ buildscript { maven { url "https://plugins.gradle.org/m2/" } } - apply plugin: "ca.allanwang.kau" - dependencies { - classpath kauPlugin.android - classpath kauPlugin.kotlin - classpath kauPlugin.androidMaven - classpath kauPlugin.playPublisher - classpath kauPlugin.dexCount - classpath kauPlugin.gitVersion - classpath kauPlugin.spotless + classpath Plugins.android + classpath Plugins.kotlin + classpath Plugins.androidMaven + classpath Plugins.playPublisher + classpath Plugins.dexCount + classpath Plugins.gitVersion + classpath Plugins.spotless } wrapper.setDistributionType(Wrapper.DistributionType.ALL) } -apply plugin: "ca.allanwang.kau" - task clean(type: Delete) { delete rootProject.buildDir } task generateChangelogMd { - kauChangelog.generate("${project.rootDir}/sample/src/main/res/xml/kau_changelog.xml") + ChangelogGenerator.generate("${project.rootDir}/sample/src/main/res/xml/kau_changelog.xml", "${project.rootDir}/docs/Changelog.md") } subprojects { diff --git a/buildSrc/README.md b/buildSrc/README.md index 91a60ac..8889675 100644 --- a/buildSrc/README.md +++ b/buildSrc/README.md @@ -65,12 +65,12 @@ The versions are taken from `Versions.groovy`, so it is always in sync. > [Dependencies.groovy](/buildSrc/src/main/groovy/ca/allanwang/kau/Dependencies.groovy) Contains the dependency string for common libraries. -You are free to use the values through `kauDependency.[tagName]`. +You are free to use the values through `Dependencies.[tagName]`. As an example, adding junit can be done through ```gradle -testImplementation kauDependency.junit +testImplementation Dependencies.junit ``` # Changelog Generator diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index 83a3370..9bd5e13 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -5,15 +5,6 @@ plugins { group = "ca.allanwang" -gradlePlugin { - plugins { - register("kau-plugin") { - id = "ca.allanwang.kau" - implementationClass = "ca.allanwang.kau.KauPlugin" - } - } -} - repositories { mavenCentral() }
\ No newline at end of file diff --git a/buildSrc/src/main/kotlin/ca/allanwang/kau/ChangelogGenerator.kt b/buildSrc/src/main/kotlin/ChangelogGenerator.kt index 5e21b7e..4be3ecf 100644 --- a/buildSrc/src/main/kotlin/ca/allanwang/kau/ChangelogGenerator.kt +++ b/buildSrc/src/main/kotlin/ChangelogGenerator.kt @@ -1,9 +1,6 @@ -package ca.allanwang.kau - import groovy.util.Node import groovy.util.XmlParser import org.gradle.api.GradleException -import org.gradle.api.Project import java.io.File /** @@ -20,7 +17,7 @@ import java.io.File * * Outputs a changelog in markdown format */ -open class ChangelogGenerator(private val project: Project) { +object ChangelogGenerator { class ChangelogException(message: String) : GradleException(message) @@ -35,6 +32,7 @@ open class ChangelogGenerator(private val project: Project) { } } + @JvmStatic fun read(inputUri: String): List<ChangelogEntry> { val input = File(inputUri) if (!input.exists()) { @@ -71,8 +69,8 @@ open class ChangelogGenerator(private val project: Project) { return entries } - @JvmOverloads - fun generate(inputUri: String, outputUri: String = "${project.rootDir}/docs/Changelog.md"): List<ChangelogEntry> { + @JvmStatic + fun generate(inputUri: String, outputUri: String): List<ChangelogEntry> { val entries = read(inputUri) val output = File(outputUri) if (output.exists()) { diff --git a/buildSrc/src/main/kotlin/Dependencies.kt b/buildSrc/src/main/kotlin/Dependencies.kt new file mode 100644 index 0000000..3fd40ed --- /dev/null +++ b/buildSrc/src/main/kotlin/Dependencies.kt @@ -0,0 +1,11 @@ +/** + * Some common dependencies, backed by the supplied versions + */ +object Dependencies { + const val kotlin = "org.jetbrains.kotlin:kotlin-stdlib:${Versions.kotlin}" + const val kotlinTest = "org.jetbrains.kotlin:kotlin-test-junit:${Versions.kotlin}" + const val junit = "junit:junit:${Versions.junit}" + const val espresso = "androidx.test.espresso:espresso-core:${Versions.espresso}" + const val testRunner = "androidx.test.ext:junit:${Versions.testRunner}" + const val testRules = "androidx.test:rules:${Versions.testRules}" +}
\ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Plugins.kt b/buildSrc/src/main/kotlin/Plugins.kt new file mode 100644 index 0000000..e321628 --- /dev/null +++ b/buildSrc/src/main/kotlin/Plugins.kt @@ -0,0 +1,12 @@ +/** + * Some common buildscript plugins, backed by the supplied versions + */ +object Plugins { + const val android = "com.android.tools.build:gradle:${Versions.gradlePlugin}" + const val kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:${Versions.kotlin}" + const val androidMaven = "com.github.dcendents:android-maven-gradle-plugin:${Versions.mavenPlugin}" + const val playPublisher = "com.github.triplet.gradle:play-publisher:${Versions.playPublishPlugin}" + const val dexCount = "com.getkeepsafe.dexcount:dexcount-gradle-plugin:${Versions.dexCountPlugin}" + const val gitVersion = "com.gladed.androidgitversion:gradle-android-git-version:${Versions.gitVersionPlugin}" + const val spotless = "com.diffplug.spotless:spotless-plugin-gradle:${Versions.spotless}" +}
\ No newline at end of file diff --git a/buildSrc/src/main/kotlin/ca/allanwang/kau/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index d48e236..7f4cdca 100644 --- a/buildSrc/src/main/kotlin/ca/allanwang/kau/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -1,80 +1,78 @@ -package ca.allanwang.kau - -open class Versions { - val coreMinSdk = 19 - val minSdk = 21 - val targetSdk = 28 +object Versions { + const val coreMinSdk = 19 + const val minSdk = 21 + const val targetSdk = 28 // https://developer.android.com/studio/releases/build-tools - val buildTools = "28.0.3" + const val buildTools = "28.0.3" // https://mvnrepository.com/artifact/androidx.appcompat/appcompat?repo=google - val appcompat = "1.0.2" + const val appcompat = "1.0.2" // https://mvnrepository.com/artifact/com.google.android.material/material - val googleMaterial = "1.0.0" + const val googleMaterial = "1.0.0" // https://mvnrepository.com/artifact/androidx.recyclerview/recyclerview - val recyclerView = "1.0.0" + const val recyclerView = "1.0.0" // https://mvnrepository.com/artifact/androidx.cardview/cardview - val cardView = "1.0.0" + const val cardView = "1.0.0" // https://mvnrepository.com/artifact/androidx.constraintlayout/constraintlayout - val constraintLayout = "1.1.3" + const val constraintLayout = "1.1.3" // https://kotlinlang.org/docs/reference/using-gradle.html - val kotlin = "1.3.31" + const val kotlin = "1.3.31" // https://github.com/Kotlin/kotlinx.coroutines/releases - val coroutines = "1.3.0-M1" + const val coroutines = "1.3.0-M1" // https://github.com/mikepenz/AboutLibraries/releases - val aboutLibraries = "6.2.3" + const val aboutLibraries = "6.2.3" // https://github.com/wasabeef/Blurry/releases - val blurry = "3.0.0" + const val blurry = "3.0.0" // https://github.com/mikepenz/FastAdapter#using-maven - val fastAdapter = "3.3.1" - val fastAdapterCommons = fastAdapter + const val fastAdapter = "3.3.1" + const val fastAdapterCommons = fastAdapter // https://github.com/bumptech/glide/releases - val glide = "4.9.0" + const val glide = "4.9.0" // https://github.com/mikepenz/Android-Iconics#1-provide-the-gradle-dependency - val iconics = "3.2.5" - val iconicsGoogle = "3.0.1.3" - val iconicsMaterial = "2.2.0.5" - val iconicsCommunity = "3.5.95.1" + const val iconics = "3.2.5" + const val iconicsGoogle = "3.0.1.3" + const val iconicsMaterial = "2.2.0.5" + const val iconicsCommunity = "3.5.95.1" // https://github.com/afollestad/material-dialogs/releases - val materialDialog = "3.0.0-rc2" + const val materialDialog = "3.0.0-rc2" // https://mvnrepository.com/artifact/androidx.test.espresso/espresso-core?repo=google - val espresso = "3.1.1" + const val espresso = "3.1.1" // https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api - val junit = "4.12" + const val junit = "4.12" - val testRunner = "1.1.0" + const val testRunner = "1.1.0" // https://mvnrepository.com/artifact/androidx.test/rules?repo=google - val testRules = "1.1.1" + const val testRules = "1.1.1" // https://github.com/diffplug/spotless/blob/master/plugin-gradle/CHANGES.md - val spotless = "3.18.0" + const val spotless = "3.18.0" // https://mvnrepository.com/artifact/com.android.tools.build/gradle?repo=google - val gradlePlugin = "3.4.1" + const val gradlePlugin = "3.4.1" // https://github.com/dcendents/android-maven-gradle-plugin/releases - val mavenPlugin = "2.1" + const val mavenPlugin = "2.1" // https://github.com/Triple-T/gradle-play-publisher/releases - val playPublishPlugin = "2.2.1" + const val playPublishPlugin = "2.2.1" // https://github.com/KeepSafe/dexcount-gradle-plugin/releases - val dexCountPlugin = "0.8.6" + const val dexCountPlugin = "0.8.6" // https://github.com/gladed/gradle-android-git-version/releases - val gitVersionPlugin = "0.4.9" + const val gitVersionPlugin = "0.4.9" }
\ No newline at end of file diff --git a/buildSrc/src/main/kotlin/ca/allanwang/kau/Dependencies.kt b/buildSrc/src/main/kotlin/ca/allanwang/kau/Dependencies.kt deleted file mode 100644 index 9e23ac4..0000000 --- a/buildSrc/src/main/kotlin/ca/allanwang/kau/Dependencies.kt +++ /dev/null @@ -1,14 +0,0 @@ -package ca.allanwang.kau - -/** - * Some common dependencies, backed by the supplied versions - */ -open class Dependencies { - private val v = Versions() - val kotlin = "org.jetbrains.kotlin:kotlin-stdlib:${v.kotlin}" - val kotlinTest = "org.jetbrains.kotlin:kotlin-test-junit:${v.kotlin}" - val junit = "junit:junit:${v.junit}" - val espresso = "androidx.test.espresso:espresso-core:${v.espresso}" - val testRunner = "androidx.test.ext:junit:${v.testRunner}" - val testRules = "androidx.test:rules:${v.testRules}" -}
\ No newline at end of file diff --git a/buildSrc/src/main/kotlin/ca/allanwang/kau/KauPlugin.kt b/buildSrc/src/main/kotlin/ca/allanwang/kau/KauPlugin.kt deleted file mode 100644 index 6be15e5..0000000 --- a/buildSrc/src/main/kotlin/ca/allanwang/kau/KauPlugin.kt +++ /dev/null @@ -1,17 +0,0 @@ -package ca.allanwang.kau - -import org.gradle.api.Plugin -import org.gradle.api.Project -import org.gradle.kotlin.dsl.create - -class KauPlugin : Plugin<Project> { - - override fun apply(project: Project) { - project.extensions.run { - create<Versions>("kau") - create<Dependencies>("kauDependency") - create<Plugins>("kauPlugin") - create<ChangelogGenerator>("kauChangelog", project) - } - } -}
\ No newline at end of file diff --git a/buildSrc/src/main/kotlin/ca/allanwang/kau/Plugins.kt b/buildSrc/src/main/kotlin/ca/allanwang/kau/Plugins.kt deleted file mode 100644 index 30caad7..0000000 --- a/buildSrc/src/main/kotlin/ca/allanwang/kau/Plugins.kt +++ /dev/null @@ -1,15 +0,0 @@ -package ca.allanwang.kau - -/** - * Some common buildscript plugins, backed by the supplied versions - */ -open class Plugins { - private val v = Versions() - val android = "com.android.tools.build:gradle:${v.gradlePlugin}" - val kotlin = "org.jetbrains.kotlin:kotlin-gradle-plugin:${v.kotlin}" - val androidMaven = "com.github.dcendents:android-maven-gradle-plugin:${v.mavenPlugin}" - val playPublisher = "com.github.triplet.gradle:play-publisher:${v.playPublishPlugin}" - val dexCount = "com.getkeepsafe.dexcount:dexcount-gradle-plugin:${v.dexCountPlugin}" - val gitVersion = "com.gladed.androidgitversion:gradle-android-git-version:${v.gitVersionPlugin}" - val spotless = "com.diffplug.spotless:spotless-plugin-gradle:${v.spotless}" -}
\ No newline at end of file diff --git a/colorpicker/build.gradle b/colorpicker/build.gradle index 4b89e10..33e73cc 100644 --- a/colorpicker/build.gradle +++ b/colorpicker/build.gradle @@ -1,13 +1,13 @@ ext.kauSubModuleResourcePrefix = "kau_color_" -ext.kauSubModuleMinSdk = kau.coreMinSdk +ext.kauSubModuleMinSdk = Versions.coreMinSdk apply from: '../android-lib.gradle' dependencies { implementation project(':core') - implementation "com.afollestad.material-dialogs:color:${kau.materialDialog}" + implementation "com.afollestad.material-dialogs:color:${Versions.materialDialog}" } apply from: '../artifacts.gradle' diff --git a/core-ui/build.gradle b/core-ui/build.gradle index 397d4ab..816e53a 100644 --- a/core-ui/build.gradle +++ b/core-ui/build.gradle @@ -1,4 +1,4 @@ -ext.kauSubModuleMinSdk = kau.coreMinSdk +ext.kauSubModuleMinSdk = Versions.coreMinSdk apply from: '../android-lib.gradle' diff --git a/core/build.gradle b/core/build.gradle index 3ac4f36..0cba076 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -1,22 +1,22 @@ -ext.kauSubModuleMinSdk = kau.coreMinSdk +ext.kauSubModuleMinSdk = Versions.coreMinSdk apply from: '../android-lib.gradle' dependencies { - api kauDependency.kotlin + api Dependencies.kotlin - api "androidx.appcompat:appcompat:${kau.appcompat}" - api "androidx.recyclerview:recyclerview:${kau.recyclerView}" - api "androidx.cardview:cardview:${kau.cardView}" - api "androidx.constraintlayout:constraintlayout:${kau.constraintLayout}" - api "com.google.android.material:material:${kau.googleMaterial}" + api "androidx.appcompat:appcompat:${Versions.appcompat}" + api "androidx.recyclerview:recyclerview:${Versions.recyclerView}" + api "androidx.cardview:cardview:${Versions.cardView}" + api "androidx.constraintlayout:constraintlayout:${Versions.constraintLayout}" + api "com.google.android.material:material:${Versions.googleMaterial}" - api "org.jetbrains.kotlinx:kotlinx-coroutines-android:${kau.coroutines}" + api "org.jetbrains.kotlinx:kotlinx-coroutines-android:${Versions.coroutines}" - api "com.mikepenz:iconics-core:${kau.iconics}@aar" - api "com.mikepenz:google-material-typeface:${kau.iconicsGoogle}.original@aar" + api "com.mikepenz:iconics-core:${Versions.iconics}@aar" + api "com.mikepenz:google-material-typeface:${Versions.iconicsGoogle}.original@aar" - api "com.afollestad.material-dialogs:core:${kau.materialDialog}" + api "com.afollestad.material-dialogs:core:${Versions.materialDialog}" } apply from: '../artifacts.gradle' diff --git a/kpref-activity/build.gradle b/kpref-activity/build.gradle index ef91e2b..f22a4a0 100644 --- a/kpref-activity/build.gradle +++ b/kpref-activity/build.gradle @@ -1,4 +1,4 @@ -ext.kauSubModuleMinSdk = kau.coreMinSdk +ext.kauSubModuleMinSdk = Versions.coreMinSdk ext.kauSubModuleResourcePrefix = "kau_pref_" diff --git a/mediapicker/build.gradle b/mediapicker/build.gradle index 20d7750..3d4819a 100644 --- a/mediapicker/build.gradle +++ b/mediapicker/build.gradle @@ -1,4 +1,4 @@ -ext.kauSubModuleMinSdk = kau.coreMinSdk +ext.kauSubModuleMinSdk = Versions.coreMinSdk apply from: '../android-lib.gradle' apply plugin: 'kotlin-kapt' @@ -8,8 +8,8 @@ dependencies { implementation project(':adapter') //noinspection GradleDependency - api "com.github.bumptech.glide:glide:${kau.glide}" - implementation "jp.wasabeef:blurry:${kau.blurry}" + api "com.github.bumptech.glide:glide:${Versions.glide}" + implementation "jp.wasabeef:blurry:${Versions.blurry}" } apply from: '../artifacts.gradle' diff --git a/sample/build.gradle b/sample/build.gradle index d11e5bd..5f795db 100644 --- a/sample/build.gradle +++ b/sample/build.gradle @@ -9,8 +9,8 @@ play { } android { - compileSdkVersion kau.targetSdk - buildToolsVersion kau.buildTools + compileSdkVersion Versions.targetSdk + buildToolsVersion Versions.buildTools androidGitVersion { codeFormat = 'MMNNPPXX' @@ -19,8 +19,8 @@ android { defaultConfig { applicationId "ca.allanwang.kau.sample" - minSdkVersion kau.minSdk - targetSdkVersion kau.targetSdk + minSdkVersion Versions.minSdk + targetSdkVersion Versions.targetSdk versionName androidGitVersion.name() versionCode androidGitVersion.code() multiDexEnabled true @@ -127,15 +127,15 @@ dependencies { implementation project(':searchview') implementation project(':mediapicker') - implementation "com.afollestad.material-dialogs:input:${kau.materialDialog}" + implementation "com.afollestad.material-dialogs:input:${Versions.materialDialog}" - testImplementation kauDependency.kotlinTest - testImplementation kauDependency.junit + testImplementation Dependencies.kotlinTest + testImplementation Dependencies.junit - androidTestImplementation kauDependency.kotlinTest - androidTestImplementation kauDependency.espresso - androidTestImplementation "androidx.test.espresso:espresso-intents:${kau.espresso}" - androidTestImplementation "androidx.test.espresso:espresso-contrib:${kau.espresso}" - androidTestImplementation kauDependency.testRules - androidTestImplementation kauDependency.testRunner + androidTestImplementation Dependencies.kotlinTest + androidTestImplementation Dependencies.espresso + androidTestImplementation "androidx.test.espresso:espresso-intents:${Versions.espresso}" + androidTestImplementation "androidx.test.espresso:espresso-contrib:${Versions.espresso}" + androidTestImplementation Dependencies.testRules + androidTestImplementation Dependencies.testRunner } |