diff --git a/app/build.gradle.kts b/app/build.gradle.kts index c6c393e..e8343a8 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -26,7 +26,7 @@ android { namespace = "com.skydoves.colorpickerviewdemo" defaultConfig { applicationId = "com.skydoves.colorpickerviewdemo" - minSdk = Configuration.minSdk + minSdk = Configuration.minSdkDemo targetSdk = Configuration.targetSdk versionCode = Configuration.versionCode versionName = Configuration.versionName diff --git a/benchmark/build.gradle.kts b/benchmark/build.gradle.kts index ce79cbd..0edd4f2 100644 --- a/benchmark/build.gradle.kts +++ b/benchmark/build.gradle.kts @@ -24,7 +24,7 @@ android { targetProjectPath = ":app" - testOptions.managedDevices.devices { + testOptions.managedDevices.allDevices { maybeCreate("pixel6api31").apply { device = "Pixel 6" apiLevel = 31 diff --git a/build.gradle.kts b/build.gradle.kts index e5d5e86..4e1720e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -29,14 +29,14 @@ subprojects { configure { java { target("**/*.java") - targetExclude("$buildDir/**/*.java") + targetExclude("${layout.buildDirectory.get().asFile.path}/**/*.java") licenseHeaderFile(rootProject.file("spotless/copyright.kt")) trimTrailingWhitespace() endWithNewline() } kotlin { target("**/*.kt") - targetExclude("$buildDir/**/*.kt") + targetExclude("${layout.buildDirectory.get().asFile.path}/**/*.kt") ktlint().editorConfigOverride( mapOf( "indent_size" to "2", diff --git a/buildSrc/src/main/kotlin/com/skydoves/colorpicker/Configuration.kt b/buildSrc/src/main/kotlin/com/skydoves/colorpicker/Configuration.kt index 9c77908..49fc43e 100644 --- a/buildSrc/src/main/kotlin/com/skydoves/colorpicker/Configuration.kt +++ b/buildSrc/src/main/kotlin/com/skydoves/colorpicker/Configuration.kt @@ -17,9 +17,10 @@ package com.skydoves.colorpicker object Configuration { - const val compileSdk = 35 - const val targetSdk = 35 + const val compileSdk = 36 + const val targetSdk = 36 const val minSdk = 21 + const val minSdkDemo = 23 const val minSdkBenchmark = 23 const val majorVersion = 2 const val minorVersion = 4 diff --git a/colorpickerview/build.gradle.kts b/colorpickerview/build.gradle.kts index ae05d51..3318d5e 100644 --- a/colorpickerview/build.gradle.kts +++ b/colorpickerview/build.gradle.kts @@ -68,9 +68,10 @@ kotlin { jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17) } + // calling this block enables the ABI validation for the main variant. @OptIn(org.jetbrains.kotlin.gradle.dsl.abi.ExperimentalAbiValidation::class) abiValidation { - enabled.set(true) + referenceDumpDir.set(layout.projectDirectory.dir("api")) } } diff --git a/colorpickerview/src/main/java/com/skydoves/colorpickerview/kotlin/ColorPickerDialogExtension.kt b/colorpickerview/src/main/java/com/skydoves/colorpickerview/kotlin/ColorPickerDialogExtension.kt index 263c4e3..3017258 100644 --- a/colorpickerview/src/main/java/com/skydoves/colorpickerview/kotlin/ColorPickerDialogExtension.kt +++ b/colorpickerview/src/main/java/com/skydoves/colorpickerview/kotlin/ColorPickerDialogExtension.kt @@ -19,9 +19,6 @@ package com.skydoves.colorpickerview.kotlin import android.content.Context import com.skydoves.colorpickerview.ColorPickerDialog -@DslMarker -internal annotation class ColorPickerDsl - /** * Creates a lambda scope for implementing [ColorPickerDialog] using its [ColorPickerDialog.Builder]. * @@ -29,6 +26,5 @@ internal annotation class ColorPickerDsl * @return new instance of [ColorPickerDialog]. */ @JvmSynthetic -@ColorPickerDsl inline fun Context.colorPickerDialog(block: ColorPickerDialog.Builder.() -> Unit) = ColorPickerDialog.Builder(this).apply(block) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3d7191f..429003d 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,17 +1,17 @@ [versions] agp = "8.13.2" -dokka = "2.1.0" -kotlin = "2.3.10" +dokka = "2.2.0" +kotlin = "2.4.20" kotlinBinaryCompatibility = "0.18.1" jvmTarget = "17" -nexusPlugin = "0.36.0" -androidxMaterial = "1.13.0" -androidxAppcompat = "1.7.1" -androidxMacroBenchmark = "1.4.1" +nexusPlugin = "0.37.0" +androidxMaterial = "1.14.0" +androidxAppcompat = "1.8.0" +androidxMacroBenchmark = "1.5.0" androidxTest = "1.7.0" baselineProfiles = "1.4.1" -uiAutomator = "2.3.0" -spotless = "8.2.1" +uiAutomator = "2.4.0" +spotless = "8.9.0" powerMenu = "2.2.4" timber = "5.0.1" junit = "1.3.0"