Convert all build files to kts

Change-Id: I26bf730ee51f62cbd604c02b628c1f277cfceb72
pull/2/head
Alex Vanyo 3 years ago committed by Don Turner
parent 08c655e7d3
commit b677cc4508

@ -14,24 +14,24 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id 'nowinandroid.android.application' id("nowinandroid.android.application")
id 'nowinandroid.android.application.compose' id("nowinandroid.android.application.compose")
} }
android { android {
defaultConfig { defaultConfig {
applicationId "com.google.samples.apps.niacatalog" applicationId = "com.google.samples.apps.niacatalog"
} }
packagingOptions { packagingOptions {
resources { resources {
excludes += '/META-INF/{AL2.0,LGPL2.1}' excludes.add("/META-INF/{AL2.0,LGPL2.1}")
} }
} }
} }
dependencies { dependencies {
implementation project(':core-ui') implementation(project(":core-ui"))
implementation libs.androidx.activity.compose implementation(libs.androidx.activity.compose)
} }

@ -1,6 +1,6 @@
# Add project specific ProGuard rules here. # Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the # You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle. # proguardFiles setting in build.gradle.kts.
# #
# For more details, see # For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html # http://developer.android.com/guide/developing/tools/proguard.html

@ -1,102 +0,0 @@
/*
* Copyright 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id 'nowinandroid.android.application'
id 'nowinandroid.android.application.compose'
id 'nowinandroid.android.application.jacoco'
id 'kotlin-kapt'
id 'jacoco'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
android {
defaultConfig {
applicationId "com.google.samples.apps.nowinandroid"
versionCode 1
versionName "0.0.1" // X.Y.Z; X = Major, Y = minor, Z = Patch level
// Custom test runner to set up Hilt dependency graph
testInstrumentationRunner "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
vectorDrawables {
useSupportLibrary true
}
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
benchmark {
initWith buildTypes.release
signingConfig signingConfigs.debug
matchingFallbacks = ['release']
proguardFiles 'benchmark-rules.pro'
}
}
packagingOptions {
resources {
excludes += '/META-INF/{AL2.0,LGPL2.1}'
}
}
testOptions {
unitTests {
includeAndroidResources = true
}
}
}
dependencies {
implementation project(':feature-following')
implementation project(':feature-foryou')
implementation project(':feature-topic')
implementation project(':core-ui')
implementation project(':sync')
androidTestImplementation project(':core-testing')
androidTestImplementation project(':core-datastore-test')
androidTestImplementation project(':core-domain-test')
androidTestImplementation project(':core-network')
implementation libs.androidx.activity.compose
implementation libs.androidx.appcompat
implementation libs.androidx.core.ktx
implementation libs.androidx.compose.material3.windowSizeClass
implementation libs.androidx.hilt.navigation.compose
implementation libs.androidx.navigation.compose
implementation libs.androidx.window.manager
implementation libs.material3
implementation libs.androidx.profileinstaller
implementation libs.coil.kt
implementation libs.coil.kt.svg
implementation libs.hilt.android
kapt libs.hilt.compiler
kaptAndroidTest libs.hilt.compiler
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force libs.junit4
// Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6'
}
}
}

@ -0,0 +1,102 @@
/*
* Copyright 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.application")
id("nowinandroid.android.application.compose")
id("nowinandroid.android.application.jacoco")
kotlin("kapt")
id("jacoco")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
android {
defaultConfig {
applicationId = "com.google.samples.apps.nowinandroid"
versionCode = 1
versionName = "0.0.1" // X.Y.Z; X = Major, Y = minor, Z = Patch level
// Custom test runner to set up Hilt dependency graph
testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
vectorDrawables {
useSupportLibrary = true
}
}
buildTypes {
val release by getting {
isMinifyEnabled = true
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
}
val benchmark by creating {
initWith(release)
signingConfig = signingConfigs.getByName("debug")
matchingFallbacks.add("release")
proguardFiles("benchmark-rules.pro")
}
}
packagingOptions {
resources {
excludes.add("/META-INF/{AL2.0,LGPL2.1}")
}
}
testOptions {
unitTests {
isIncludeAndroidResources = true
}
}
}
dependencies {
implementation(project(":feature-following"))
implementation(project(":feature-foryou"))
implementation(project(":feature-topic"))
implementation(project(":core-ui"))
implementation(project(":sync"))
androidTestImplementation(project(":core-testing"))
androidTestImplementation(project(":core-datastore-test"))
androidTestImplementation(project(":core-domain-test"))
androidTestImplementation(project(":core-network"))
implementation(libs.androidx.activity.compose)
implementation(libs.androidx.appcompat)
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.compose.material3.windowSizeClass)
implementation(libs.androidx.hilt.navigation.compose)
implementation(libs.androidx.navigation.compose)
implementation(libs.androidx.window.manager)
implementation(libs.material3)
implementation(libs.androidx.profileinstaller)
implementation(libs.coil.kt)
implementation(libs.coil.kt.svg)
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
kaptAndroidTest(libs.hilt.compiler)
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force(libs.junit4)
// Temporary workaround for https://issuetracker.google.com/174733673
force("org.objenesis:objenesis:2.6")
}
}
}

@ -15,26 +15,26 @@
*/ */
plugins { plugins {
id "nowinandroid.android.test" id("nowinandroid.android.test")
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
android { android {
namespace 'com.google.samples.apps.nowinandroid.benchmark' namespace = "com.google.samples.apps.nowinandroid.benchmark"
defaultConfig { defaultConfig {
minSdk 23 minSdk = 23
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
} }
buildTypes { buildTypes {
// This benchmark buildType is used for benchmarking, and should function like your // This benchmark buildType is used for benchmarking, and should function like your
// release build (for example, with minification on). It's signed with a debug key // release build (for example, with minification on). It's signed with a debug key
// for easy local/CI testing. // for easy local/CI testing.
benchmark { val benchmark by creating {
debuggable true isDebuggable = true
signingConfig debug.signingConfig signingConfig = signingConfigs.getByName("debug")
matchingFallbacks = ['release'] matchingFallbacks.add("release")
} }
} }
@ -43,18 +43,18 @@ android {
} }
dependencies { dependencies {
implementation libs.androidx.test.core implementation(libs.androidx.test.core)
implementation libs.androidx.test.espresso.core implementation(libs.androidx.test.espresso.core)
implementation libs.androidx.test.ext implementation(libs.androidx.test.ext)
implementation libs.androidx.test.runner implementation(libs.androidx.test.runner)
implementation libs.androidx.test.rules implementation(libs.androidx.test.rules)
implementation libs.androidx.test.uiautomator implementation(libs.androidx.test.uiautomator)
implementation libs.androidx.benchmark.macro implementation(libs.androidx.benchmark.macro)
implementation libs.androidx.profileinstaller implementation(libs.androidx.profileinstaller)
} }
androidComponents { androidComponents {
beforeVariants(selector().all()) { beforeVariants {
enabled = buildType == "benchmark" it.enable = it.buildType == "benchmark"
} }
} }

@ -14,14 +14,14 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id "nowinandroid.android.library" id("nowinandroid.android.library")
id "nowinandroid.android.library.jacoco" id("nowinandroid.android.library.jacoco")
id 'kotlin-kapt' kotlin("kapt")
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
dependencies { dependencies {
implementation libs.kotlinx.coroutines.android implementation(libs.kotlinx.coroutines.android)
implementation libs.hilt.android implementation(libs.hilt.android)
kapt libs.hilt.compiler kapt(libs.hilt.compiler)
} }

@ -14,12 +14,12 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id 'nowinandroid.android.library' id("nowinandroid.android.library")
id "nowinandroid.android.library.jacoco" id("nowinandroid.android.library.jacoco")
id 'kotlin-kapt' kotlin("kapt")
id 'dagger.hilt.android.plugin' id("dagger.hilt.android.plugin")
alias(libs.plugins.ksp) alias(libs.plugins.ksp)
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
android { android {
@ -31,31 +31,31 @@ android {
arg("room.schemaLocation", "$projectDir/schemas") arg("room.schemaLocation", "$projectDir/schemas")
} }
testInstrumentationRunner "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner" testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
} }
} }
dependencies { dependencies {
implementation project(':core-model') implementation(project(":core-model"))
implementation libs.room.runtime implementation(libs.room.runtime)
implementation libs.room.ktx implementation(libs.room.ktx)
ksp libs.room.compiler ksp(libs.room.compiler)
implementation libs.kotlinx.coroutines.android implementation(libs.kotlinx.coroutines.android)
implementation libs.kotlinx.datetime implementation(libs.kotlinx.datetime)
implementation libs.hilt.android implementation(libs.hilt.android)
kapt libs.hilt.compiler kapt(libs.hilt.compiler)
androidTestImplementation project(':core-testing') androidTestImplementation(project(":core-testing"))
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13 // androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach { configurations.configureEach {
resolutionStrategy { resolutionStrategy {
force libs.junit4 force(libs.junit4)
// Temporary workaround for https://issuetracker.google.com/174733673 // Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6' force("org.objenesis:objenesis:2.6")
} }
} }
} }

@ -14,26 +14,26 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id "nowinandroid.android.library" id("nowinandroid.android.library")
id 'kotlin-kapt' kotlin("kapt")
id 'dagger.hilt.android.plugin' id("dagger.hilt.android.plugin")
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
dependencies { dependencies {
api project(':core-datastore') api(project(":core-datastore"))
implementation project(':core-testing') implementation(project(":core-testing"))
api libs.androidx.dataStore.core api(libs.androidx.dataStore.core)
implementation libs.hilt.android implementation(libs.hilt.android)
kapt libs.hilt.compiler kapt(libs.hilt.compiler)
kaptAndroidTest libs.hilt.compiler kaptAndroidTest(libs.hilt.compiler)
configurations.configureEach { configurations.configureEach {
resolutionStrategy { resolutionStrategy {
// Temporary workaround for https://issuetracker.google.com/174733673 // Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6' force("org.objenesis:objenesis:2.6")
} }
} }
} }

@ -13,28 +13,34 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
import com.google.protobuf.gradle.builtins
import com.google.protobuf.gradle.generateProtoTasks
import com.google.protobuf.gradle.protobuf
import com.google.protobuf.gradle.protoc
plugins { plugins {
id "nowinandroid.android.library" id("nowinandroid.android.library")
id "nowinandroid.android.library.jacoco" id("nowinandroid.android.library.jacoco")
id 'kotlin-kapt' kotlin("kapt")
id 'dagger.hilt.android.plugin' id("dagger.hilt.android.plugin")
alias(libs.plugins.protobuf) alias(libs.plugins.protobuf)
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
// Setup protobuf configuration, generating lite Java and Kotlin classes // Setup protobuf configuration, generating lite Java and Kotlin classes
protobuf { protobuf {
protoc { protoc {
artifact = libs.protobuf.protoc.get() artifact = libs.protobuf.protoc.get().toString()
} }
generateProtoTasks { generateProtoTasks {
all().each { task -> all().forEach { task ->
task.builtins { task.builtins {
java { val java by registering {
option "lite" option("lite")
} }
kotlin { val kotlin by registering {
option "lite" option("lite")
} }
} }
} }
@ -42,16 +48,16 @@ protobuf {
} }
dependencies { dependencies {
implementation project(':core-common') implementation(project(":core-common"))
testImplementation project(':core-testing') testImplementation(project(":core-testing"))
implementation libs.kotlinx.coroutines.android implementation(libs.kotlinx.coroutines.android)
implementation libs.androidx.dataStore.core implementation(libs.androidx.dataStore.core)
implementation(libs.protobuf.kotlin.lite) implementation(libs.protobuf.kotlin.lite)
implementation libs.hilt.android implementation(libs.hilt.android)
kapt libs.hilt.compiler kapt(libs.hilt.compiler)
kaptAndroidTest libs.hilt.compiler kaptAndroidTest(libs.hilt.compiler)
} }

@ -14,24 +14,24 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id "nowinandroid.android.library" id("nowinandroid.android.library")
id 'kotlin-kapt' kotlin("kapt")
id 'dagger.hilt.android.plugin' id("dagger.hilt.android.plugin")
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
dependencies { dependencies {
api project(':core-domain') api(project(":core-domain"))
implementation project(':core-testing') implementation(project(":core-testing"))
implementation libs.hilt.android implementation(libs.hilt.android)
kapt libs.hilt.compiler kapt(libs.hilt.compiler)
kaptAndroidTest libs.hilt.compiler kaptAndroidTest(libs.hilt.compiler)
configurations.configureEach { configurations.configureEach {
resolutionStrategy { resolutionStrategy {
// Temporary workaround for https://issuetracker.google.com/174733673 // Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6' force("org.objenesis:objenesis:2.6")
} }
} }
} }

@ -1,41 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.jacoco"
id 'kotlin-kapt'
id 'kotlinx-serialization'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
dependencies {
implementation project(':core-common')
implementation project(':core-model')
implementation project(':core-database')
implementation project(':core-datastore')
implementation project(':core-network')
testImplementation project(':core-testing')
testImplementation project(':core-datastore-test')
implementation libs.kotlinx.datetime
implementation libs.kotlinx.coroutines.android
implementation libs.kotlinx.serialization.json
implementation libs.hilt.android
kapt libs.hilt.compiler
}

@ -0,0 +1,41 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.jacoco")
kotlin("kapt")
id("kotlinx-serialization")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
dependencies {
implementation(project(":core-common"))
implementation(project(":core-model"))
implementation(project(":core-database"))
implementation(project(":core-datastore"))
implementation(project(":core-network"))
testImplementation(project(":core-testing"))
testImplementation(project(":core-datastore-test"))
implementation(libs.kotlinx.datetime)
implementation(libs.kotlinx.coroutines.android)
implementation(libs.kotlinx.serialization.json)
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
}

@ -14,21 +14,21 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id "nowinandroid.android.library" id("nowinandroid.android.library")
id "nowinandroid.android.library.jacoco" id("nowinandroid.android.library.jacoco")
id 'kotlinx-serialization' id("kotlinx-serialization")
alias(libs.plugins.ksp) alias(libs.plugins.ksp)
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
dependencies { dependencies {
testImplementation project(':core-testing') testImplementation(project(":core-testing"))
implementation libs.room.runtime implementation(libs.room.runtime)
implementation libs.room.ktx implementation(libs.room.ktx)
ksp libs.room.compiler ksp(libs.room.compiler)
implementation libs.kotlinx.coroutines.android implementation(libs.kotlinx.coroutines.android)
implementation libs.kotlinx.datetime implementation(libs.kotlinx.datetime)
implementation libs.kotlinx.serialization.json implementation(libs.kotlinx.serialization.json)
} }

@ -1,41 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.jacoco"
id 'kotlin-kapt'
id 'kotlinx-serialization'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
dependencies {
implementation project(':core-common')
implementation project(':core-model')
testImplementation project(':core-testing')
implementation libs.kotlinx.coroutines.android
implementation libs.kotlinx.serialization.json
implementation libs.kotlinx.datetime
implementation libs.okhttp.logging
implementation libs.retrofit.core
implementation libs.retrofit.kotlin.serialization
implementation libs.hilt.android
kapt libs.hilt.compiler
}

@ -0,0 +1,41 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.jacoco")
kotlin("kapt")
id("kotlinx-serialization")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
dependencies {
implementation(project(":core-common"))
implementation(project(":core-model"))
testImplementation(project(":core-testing"))
implementation(libs.kotlinx.coroutines.android)
implementation(libs.kotlinx.serialization.json)
implementation(libs.kotlinx.datetime)
implementation(libs.okhttp.logging)
implementation(libs.retrofit.core)
implementation(libs.retrofit.kotlin.serialization)
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
}

@ -14,37 +14,37 @@
* limitations under the License. * limitations under the License.
*/ */
plugins { plugins {
id "nowinandroid.android.library" id("nowinandroid.android.library")
id 'kotlin-kapt' kotlin("kapt")
id 'nowinandroid.spotless' id("nowinandroid.spotless")
} }
dependencies { dependencies {
implementation project(':core-common') implementation(project(":core-common"))
implementation project(':core-domain') implementation(project(":core-domain"))
implementation project(':core-model') implementation(project(":core-model"))
implementation libs.hilt.android implementation(libs.hilt.android)
kapt libs.hilt.compiler kapt(libs.hilt.compiler)
api libs.junit4 api(libs.junit4)
api libs.mockk api(libs.mockk)
api libs.androidx.test.core api(libs.androidx.test.core)
api libs.kotlinx.coroutines.test api(libs.kotlinx.coroutines.test)
api libs.turbine api(libs.turbine)
api libs.androidx.test.espresso.core api(libs.androidx.test.espresso.core)
api libs.androidx.test.runner api(libs.androidx.test.runner)
api libs.androidx.test.rules api(libs.androidx.test.rules)
api libs.androidx.compose.ui.test api(libs.androidx.compose.ui.test)
api libs.hilt.android.testing api(libs.hilt.android.testing)
debugApi libs.androidx.compose.ui.testManifest debugApi(libs.androidx.compose.ui.testManifest)
configurations.configureEach { configurations.configureEach {
resolutionStrategy { resolutionStrategy {
// Temporary workaround for https://issuetracker.google.com/174733673 // Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6' force("org.objenesis:objenesis:2.6")
} }
} }
} }

@ -1,45 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.compose"
id "nowinandroid.android.library.jacoco"
id 'nowinandroid.spotless'
}
dependencies {
implementation project(':core-model')
implementation libs.androidx.core.ktx
implementation libs.coil.kt
implementation libs.coil.kt.compose
implementation libs.kotlinx.datetime
// TODO : Remove these dependencies when b/225193889 is fixed
// These dependencies are currently necessary to render Compose previews
debugImplementation "androidx.savedstate:savedstate-ktx:1.1.0"
debugImplementation libs.androidx.lifecycle.viewModelCompose
api libs.androidx.compose.foundation
api libs.androidx.compose.foundation.layout
api libs.androidx.compose.material.iconsExtended
api libs.androidx.compose.material3
debugApi libs.androidx.compose.ui.tooling
api libs.androidx.compose.ui.tooling.preview
api libs.androidx.compose.ui.util
api libs.androidx.compose.runtime
api libs.androidx.compose.runtime.livedata
}

@ -0,0 +1,45 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.compose")
id("nowinandroid.android.library.jacoco")
id("nowinandroid.spotless")
}
dependencies {
implementation(project(":core-model"))
implementation(libs.androidx.core.ktx)
implementation(libs.coil.kt)
implementation(libs.coil.kt.compose)
implementation(libs.kotlinx.datetime)
// TODO : Remove these dependencies when b/225193889 is fixed
// These dependencies are currently necessary to render Compose previews
debugImplementation("androidx.savedstate:savedstate-ktx:1.1.0")
debugImplementation(libs.androidx.lifecycle.viewModelCompose)
api(libs.androidx.compose.foundation)
api(libs.androidx.compose.foundation.layout)
api(libs.androidx.compose.material.iconsExtended)
api(libs.androidx.compose.material3)
debugApi(libs.androidx.compose.ui.tooling)
api(libs.androidx.compose.ui.tooling.preview)
api(libs.androidx.compose.ui.util)
api(libs.androidx.compose.runtime)
api(libs.androidx.compose.runtime.livedata)
}

@ -1,58 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.compose"
id "nowinandroid.android.library.jacoco"
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
android {
defaultConfig {
testInstrumentationRunner "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation project(':core-model')
implementation project(':core-ui')
implementation project(':core-domain')
testImplementation project(':core-testing')
androidTestImplementation project(':core-testing')
implementation libs.coil.kt
implementation libs.coil.kt.compose
implementation libs.kotlinx.coroutines.android
implementation libs.androidx.hilt.navigation.compose
implementation libs.androidx.lifecycle.viewModelCompose
implementation libs.hilt.android
kapt libs.hilt.compiler
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force libs.junit4
// Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6'
}
}
}

@ -0,0 +1,58 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.compose")
id("nowinandroid.android.library.jacoco")
kotlin("kapt")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
android {
defaultConfig {
testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation(project(":core-model"))
implementation(project(":core-ui"))
implementation(project(":core-domain"))
testImplementation(project(":core-testing"))
androidTestImplementation(project(":core-testing"))
implementation(libs.coil.kt)
implementation(libs.coil.kt.compose)
implementation(libs.kotlinx.coroutines.android)
implementation(libs.androidx.hilt.navigation.compose)
implementation(libs.androidx.lifecycle.viewModelCompose)
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force(libs.junit4)
// Temporary workaround for https://issuetracker.google.com/174733673
force("org.objenesis:objenesis:2.6")
}
}
}

@ -1,61 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.compose"
id "nowinandroid.android.library.jacoco"
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
android {
defaultConfig {
testInstrumentationRunner "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation project(':core-model')
implementation project(':core-ui')
implementation project(':core-domain')
testImplementation project(':core-testing')
androidTestImplementation project(':core-testing')
implementation libs.kotlinx.coroutines.android
implementation libs.kotlinx.datetime
implementation libs.androidx.hilt.navigation.compose
implementation libs.androidx.lifecycle.viewModelCompose
implementation libs.accompanist.flowlayout
implementation libs.coil.kt
implementation libs.coil.kt.compose
implementation libs.hilt.android
kapt libs.hilt.compiler
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force libs.junit4
// Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6'
}
}
}

@ -0,0 +1,61 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.compose")
id("nowinandroid.android.library.jacoco")
kotlin("kapt")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
android {
defaultConfig {
testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation(project(":core-model"))
implementation(project(":core-ui"))
implementation(project(":core-domain"))
testImplementation(project(":core-testing"))
androidTestImplementation(project(":core-testing"))
implementation(libs.kotlinx.coroutines.android)
implementation(libs.kotlinx.datetime)
implementation(libs.androidx.hilt.navigation.compose)
implementation(libs.androidx.lifecycle.viewModelCompose)
implementation(libs.accompanist.flowlayout)
implementation(libs.coil.kt)
implementation(libs.coil.kt.compose)
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force(libs.junit4)
// Temporary workaround for https://issuetracker.google.com/174733673
force("org.objenesis:objenesis:2.6")
}
}
}

@ -1,57 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.compose"
id "nowinandroid.android.library.jacoco"
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
android {
defaultConfig {
testInstrumentationRunner "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation project(':core-model')
implementation project(':core-ui')
implementation project(':core-domain')
implementation project(':core-common')
testImplementation project(':core-testing')
androidTestImplementation project(':core-testing')
implementation libs.kotlinx.coroutines.android
implementation libs.kotlinx.datetime
implementation libs.androidx.hilt.navigation.compose
implementation libs.androidx.lifecycle.viewModelCompose
implementation libs.hilt.android
kapt libs.hilt.compiler
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force libs.junit4
// Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6'
}
}
}

@ -0,0 +1,57 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.compose")
id("nowinandroid.android.library.jacoco")
kotlin("kapt")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
android {
defaultConfig {
testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation(project(":core-model"))
implementation(project(":core-ui"))
implementation(project(":core-domain"))
implementation(project(":core-common"))
testImplementation(project(":core-testing"))
androidTestImplementation(project(":core-testing"))
implementation(libs.kotlinx.coroutines.android)
implementation(libs.kotlinx.datetime)
implementation(libs.androidx.hilt.navigation.compose)
implementation(libs.androidx.lifecycle.viewModelCompose)
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
// androidx.test is forcing JUnit, 4.12. This forces it to use 4.13
configurations.configureEach {
resolutionStrategy {
force(libs.junit4)
// Temporary workaround for https://issuetracker.google.com/174733673
force("org.objenesis:objenesis:2.6")
}
}
}

@ -28,8 +28,7 @@ dependencyResolutionManagement {
repositories { repositories {
// Register the AndroidX snapshot repository first so snapshots don't attempt (and fail) // Register the AndroidX snapshot repository first so snapshots don't attempt (and fail)
// to download from the non-snapshot repositories // to download from the non-snapshot repositories
maven { maven(url = "https://androidx.dev/snapshots/builds/8455591/artifacts/repository") {
url 'https://androidx.dev/snapshots/builds/8455591/artifacts/repository'
content { content {
// The AndroidX snapshot repository will only have androidx artifacts, don't // The AndroidX snapshot repository will only have androidx artifacts, don't
// bother trying to find other ones // bother trying to find other ones
@ -41,20 +40,20 @@ dependencyResolutionManagement {
} }
} }
rootProject.name = "nowinandroid" rootProject.name = "nowinandroid"
include ':app' include(":app")
include ':app-nia-catalog' include(":app-nia-catalog")
include ':benchmark' include(":benchmark")
include ':core-common' include(":core-common")
include ':core-domain' include(":core-domain")
include ':core-domain-test' include(":core-domain-test")
include ':core-database' include(":core-database")
include ':core-datastore' include(":core-datastore")
include ':core-datastore-test' include(":core-datastore-test")
include ':core-model' include(":core-model")
include ':core-network' include(":core-network")
include ':core-ui' include(":core-ui")
include ':core-testing' include(":core-testing")
include ':feature-following' include(":feature-following")
include ':feature-foryou' include(":feature-foryou")
include ':feature-topic' include(":feature-topic")
include ':sync' include(":sync")

@ -1,60 +0,0 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id "nowinandroid.android.library"
id "nowinandroid.android.library.jacoco"
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
id 'nowinandroid.spotless'
}
android {
defaultConfig {
testInstrumentationRunner "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation project(':core-common')
implementation project(':core-model')
implementation project(':core-domain')
implementation project(':core-datastore')
implementation libs.kotlinx.coroutines.android
implementation libs.androidx.startup
implementation libs.androidx.work.ktx
implementation libs.hilt.ext.work
testImplementation project(':core-testing')
androidTestImplementation project(':core-testing')
implementation libs.hilt.android
kapt libs.hilt.compiler
kapt libs.hilt.ext.compiler
androidTestImplementation libs.androidx.work.testing
kaptAndroidTest libs.hilt.compiler
kaptAndroidTest libs.hilt.ext.compiler
configurations.configureEach {
resolutionStrategy {
// Temporary workaround for https://issuetracker.google.com/174733673
force 'org.objenesis:objenesis:2.6'
}
}
}

@ -0,0 +1,60 @@
/*
* Copyright 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
plugins {
id("nowinandroid.android.library")
id("nowinandroid.android.library.jacoco")
kotlin("kapt")
id("dagger.hilt.android.plugin")
id("nowinandroid.spotless")
}
android {
defaultConfig {
testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner"
}
}
dependencies {
implementation(project(":core-common"))
implementation(project(":core-model"))
implementation(project(":core-domain"))
implementation(project(":core-datastore"))
implementation(libs.kotlinx.coroutines.android)
implementation(libs.androidx.startup)
implementation(libs.androidx.work.ktx)
implementation(libs.hilt.ext.work)
testImplementation(project(":core-testing"))
androidTestImplementation(project(":core-testing"))
implementation(libs.hilt.android)
kapt(libs.hilt.compiler)
kapt(libs.hilt.ext.compiler)
androidTestImplementation(libs.androidx.work.testing)
kaptAndroidTest(libs.hilt.compiler)
kaptAndroidTest(libs.hilt.ext.compiler)
configurations.configureEach {
resolutionStrategy {
// Temporary workaround for https://issuetracker.google.com/174733673
force("org.objenesis:objenesis:2.6")
}
}
}
Loading…
Cancel
Save