Skip to content

Commit 853d1f5

Browse files
committed
fix a bunch of warnings
1 parent 88f4327 commit 853d1f5

File tree

5 files changed

+60
-38
lines changed

5 files changed

+60
-38
lines changed

firebase-dataconnect/androidTestutil/androidTestutil.gradle.kts

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
17+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
1818

1919
plugins {
2020
id("com.android.library")
@@ -31,14 +31,16 @@ android {
3131
compileSdk = compileSdkVersion
3232
defaultConfig {
3333
minSdk = minSdkVersion
34-
targetSdk = targetSdkVersion
3534
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
3635
}
3736
compileOptions {
3837
sourceCompatibility = JavaVersion.VERSION_1_8
3938
targetCompatibility = JavaVersion.VERSION_1_8
4039
}
41-
kotlinOptions { jvmTarget = "1.8" }
40+
41+
@Suppress("UnstableApiUsage") testOptions { targetSdk = targetSdkVersion }
42+
43+
lint { targetSdk = targetSdkVersion }
4244

4345
packaging {
4446
resources {
@@ -48,6 +50,13 @@ android {
4850
}
4951
}
5052

53+
kotlin {
54+
compilerOptions {
55+
jvmTarget = JvmTarget.JVM_1_8
56+
optIn.add("kotlin.RequiresOptIn")
57+
}
58+
}
59+
5160
dependencies {
5261
implementation(project(":firebase-dataconnect"))
5362
implementation(project(":firebase-dataconnect:testutil"))
@@ -66,7 +75,3 @@ dependencies {
6675
implementation(libs.truth)
6776
implementation(libs.turbine)
6877
}
69-
70-
tasks.withType<KotlinCompile>().all {
71-
kotlinOptions { freeCompilerArgs = listOf("-opt-in=kotlin.RequiresOptIn") }
72-
}

firebase-dataconnect/connectors/connectors.gradle.kts

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,9 @@
1515
*/
1616

1717
import com.google.firebase.dataconnect.gradle.plugin.UpdateDataConnectExecutableVersionsTask
18-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
18+
import org.gradle.kotlin.dsl.withType
19+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
20+
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
1921

2022
plugins {
2123
id("com.android.library")
@@ -33,23 +35,24 @@ android {
3335
compileSdk = compileSdkVersion
3436
defaultConfig {
3537
minSdk = minSdkVersion
36-
targetSdk = targetSdkVersion
3738
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
3839
}
3940
compileOptions {
4041
sourceCompatibility = JavaVersion.VERSION_1_8
4142
targetCompatibility = JavaVersion.VERSION_1_8
4243
}
43-
kotlinOptions { jvmTarget = "1.8" }
4444

4545
@Suppress("UnstableApiUsage")
4646
testOptions {
47+
targetSdk = targetSdkVersion
4748
unitTests {
4849
isIncludeAndroidResources = true
4950
isReturnDefaultValues = true
5051
}
5152
}
5253

54+
lint { targetSdk = targetSdkVersion }
55+
5356
packaging {
5457
resources {
5558
excludes.add("META-INF/LICENSE.md")
@@ -63,6 +66,13 @@ android {
6366
}
6467
}
6568

69+
kotlin {
70+
compilerOptions {
71+
jvmTarget = JvmTarget.JVM_1_8
72+
optIn.add("kotlin.RequiresOptIn")
73+
}
74+
}
75+
6676
dependencies {
6777
implementation(project(":firebase-dataconnect"))
6878
implementation(libs.kotlinx.coroutines.core)
@@ -92,21 +102,15 @@ dependencies {
92102
androidTestImplementation(libs.turbine)
93103
}
94104

95-
tasks.withType<KotlinCompile>().all {
96-
kotlinOptions { freeCompilerArgs = listOf("-opt-in=kotlin.RequiresOptIn") }
97-
}
98-
99105
// Enable Kotlin "Explicit API Mode". This causes the Kotlin compiler to fail if any
100106
// classes, methods, or properties have implicit `public` visibility. This check helps
101107
// avoid accidentally leaking elements into the public API, requiring that any public
102108
// element be explicitly declared as `public`.
103109
// https://github.com/Kotlin/KEEP/blob/master/proposals/explicit-api-mode.md
104110
// https://chao2zhang.medium.com/explicit-api-mode-for-kotlin-on-android-b8264fdd76d1
105-
tasks.withType<KotlinCompile>().all {
111+
tasks.withType<KotlinJvmCompile>().configureEach {
106112
if (!name.contains("test", ignoreCase = true)) {
107-
if (!kotlinOptions.freeCompilerArgs.contains("-Xexplicit-api=strict")) {
108-
kotlinOptions.freeCompilerArgs += "-Xexplicit-api=strict"
109-
}
113+
compilerOptions.freeCompilerArgs.add("-Xexplicit-api=strict")
110114
}
111115
}
112116

firebase-dataconnect/demo/build.gradle.kts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
import com.android.build.api.variant.ApplicationAndroidComponentsExtension
1818
import java.nio.charset.StandardCharsets
19+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
1920

2021
plugins {
2122
// Use whichever versions of these dependencies suit your application.
@@ -83,7 +84,13 @@ android {
8384
isCoreLibraryDesugaringEnabled = true
8485
}
8586
buildFeatures.viewBinding = true
86-
kotlinOptions.jvmTarget = "1.8"
87+
}
88+
89+
kotlin {
90+
compilerOptions {
91+
jvmTarget = JvmTarget.JVM_1_8
92+
optIn.add("kotlin.RequiresOptIn")
93+
}
8794
}
8895

8996
spotless {
@@ -115,7 +122,7 @@ spotless {
115122
target("**/*.xml")
116123
targetExclude("build/")
117124
trimTrailingWhitespace()
118-
indentWithSpaces(2)
125+
leadingTabsToSpaces(2)
119126
endWithNewline()
120127
}
121128
}

firebase-dataconnect/firebase-dataconnect.gradle.kts

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@
1414
* limitations under the License.
1515
*/
1616

17-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
17+
import org.gradle.kotlin.dsl.withType
18+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
19+
import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile
1820

1921
plugins {
2022
id("firebase-library")
@@ -43,15 +45,13 @@ android {
4345
compileSdk = compileSdkVersion
4446
defaultConfig {
4547
minSdk = minSdkVersion
46-
targetSdk = targetSdkVersion
4748
multiDexEnabled = true
4849
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
4950
}
5051
compileOptions {
5152
sourceCompatibility = JavaVersion.VERSION_1_8
5253
targetCompatibility = JavaVersion.VERSION_1_8
5354
}
54-
kotlinOptions { jvmTarget = "1.8" }
5555

5656
@Suppress("UnstableApiUsage")
5757
testOptions {
@@ -72,6 +72,13 @@ android {
7272
}
7373
}
7474

75+
kotlin {
76+
compilerOptions {
77+
jvmTarget = JvmTarget.JVM_1_8
78+
optIn.add("kotlin.RequiresOptIn")
79+
}
80+
}
81+
7582
protobuf {
7683
protoc { artifact = "${libs.protoc.get()}" }
7784
plugins {
@@ -144,20 +151,14 @@ dependencies {
144151
androidTestImplementation(libs.turbine)
145152
}
146153

147-
tasks.withType<KotlinCompile>().all {
148-
kotlinOptions { freeCompilerArgs = listOf("-opt-in=kotlin.RequiresOptIn") }
149-
}
150-
151154
// Enable Kotlin "Explicit API Mode". This causes the Kotlin compiler to fail if any
152155
// classes, methods, or properties have implicit `public` visibility. This check helps
153156
// avoid accidentally leaking elements into the public API, requiring that any public
154157
// element be explicitly declared as `public`.
155158
// https://github.com/Kotlin/KEEP/blob/master/proposals/explicit-api-mode.md
156159
// https://chao2zhang.medium.com/explicit-api-mode-for-kotlin-on-android-b8264fdd76d1
157-
tasks.withType<KotlinCompile>().all {
160+
tasks.withType<KotlinJvmCompile>().configureEach {
158161
if (!name.contains("test", ignoreCase = true)) {
159-
if (!kotlinOptions.freeCompilerArgs.contains("-Xexplicit-api=strict")) {
160-
kotlinOptions.freeCompilerArgs += "-Xexplicit-api=strict"
161-
}
162+
compilerOptions.freeCompilerArgs.add("-Xexplicit-api=strict")
162163
}
163164
}

firebase-dataconnect/testutil/testutil.gradle.kts

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17-
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
17+
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
1818

1919
plugins {
2020
id("com.android.library")
@@ -31,14 +31,16 @@ android {
3131
compileSdk = compileSdkVersion
3232
defaultConfig {
3333
minSdk = minSdkVersion
34-
targetSdk = targetSdkVersion
3534
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
3635
}
3736
compileOptions {
3837
sourceCompatibility = JavaVersion.VERSION_1_8
3938
targetCompatibility = JavaVersion.VERSION_1_8
4039
}
41-
kotlinOptions { jvmTarget = "1.8" }
40+
41+
@Suppress("UnstableApiUsage") testOptions { targetSdk = targetSdkVersion }
42+
43+
lint { targetSdk = targetSdkVersion }
4244

4345
packaging {
4446
resources {
@@ -48,6 +50,13 @@ android {
4850
}
4951
}
5052

53+
kotlin {
54+
compilerOptions {
55+
jvmTarget = JvmTarget.JVM_1_8
56+
optIn.add("kotlin.RequiresOptIn")
57+
}
58+
}
59+
5160
dependencies {
5261
implementation(project(":firebase-dataconnect"))
5362

@@ -68,7 +77,3 @@ dependencies {
6877
implementation(libs.testonly.three.ten.abp)
6978
implementation(libs.truth)
7079
}
71-
72-
tasks.withType<KotlinCompile>().all {
73-
kotlinOptions { freeCompilerArgs = listOf("-opt-in=kotlin.RequiresOptIn") }
74-
}

0 commit comments

Comments
 (0)