Skip to content

Commit e77129d

Browse files
authored
Merge pull request #83 from skydoves/agp/8.1.0
Migrate to AGP 8.1.0, Gradle 8.2.1, Kotlin 1.9.0, and KSP
2 parents 5f387b6 + 1d1a271 commit e77129d

File tree

30 files changed

+110
-75
lines changed

30 files changed

+110
-75
lines changed

.github/workflows/android.yml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@ jobs:
1010
build:
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/checkout@v2
13+
- uses: actions/checkout@v3
1414

1515
- name: set up JDK
16-
uses: actions/setup-java@v1
16+
uses: actions/setup-java@v3
1717
with:
18-
java-version: 11
18+
distribution: zulu
19+
java-version: 17
1920

2021
- name: Cache Gradle and wrapper
2122
uses: actions/cache@v2

app/build.gradle.kts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ plugins {
2626

2727
android {
2828
compileSdk = Configuration.compileSdk
29+
namespace = "com.skydoves.pokedex"
30+
2931
defaultConfig {
3032
applicationId = "com.skydoves.pokedex"
3133
minSdk = Configuration.minSdk
@@ -37,12 +39,13 @@ android {
3739
}
3840

3941
compileOptions {
40-
sourceCompatibility = JavaVersion.VERSION_1_8
41-
targetCompatibility = JavaVersion.VERSION_1_8
42+
sourceCompatibility = JavaVersion.VERSION_17
43+
targetCompatibility = JavaVersion.VERSION_17
4244
}
4345

4446
buildFeatures {
4547
dataBinding = true
48+
buildConfig = true
4649
}
4750

4851
hilt {

app/src/main/kotlin/com/skydoves/pokedex/ui/details/DetailViewModel.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ import androidx.lifecycle.viewModelScope
2323
import com.skydoves.bindables.BindingViewModel
2424
import com.skydoves.bindables.asBindingProperty
2525
import com.skydoves.bindables.bindingProperty
26-
import com.skydoves.core.data.repository.DetailRepository
2726
import com.skydoves.pokedex.core.model.PokemonInfo
27+
import com.skydoves.pokedex.core.repository.DetailRepository
2828
import dagger.assisted.Assisted
2929
import dagger.assisted.AssistedInject
3030
import kotlinx.coroutines.flow.Flow

app/src/main/kotlin/com/skydoves/pokedex/ui/main/MainViewModel.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ import androidx.lifecycle.viewModelScope
2222
import com.skydoves.bindables.BindingViewModel
2323
import com.skydoves.bindables.asBindingProperty
2424
import com.skydoves.bindables.bindingProperty
25-
import com.skydoves.core.data.repository.MainRepository
2625
import com.skydoves.pokedex.core.model.Pokemon
26+
import com.skydoves.pokedex.core.repository.MainRepository
2727
import dagger.hilt.android.lifecycle.HiltViewModel
2828
import kotlinx.coroutines.flow.MutableStateFlow
2929
import kotlinx.coroutines.flow.flatMapLatest

app/src/test/kotlin/com/skydoves/pokedex/DetailViewModelTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ import com.nhaarman.mockitokotlin2.atLeastOnce
2121
import com.nhaarman.mockitokotlin2.mock
2222
import com.nhaarman.mockitokotlin2.verify
2323
import com.nhaarman.mockitokotlin2.whenever
24-
import com.skydoves.core.data.repository.DetailRepository
25-
import com.skydoves.core.data.repository.DetailRepositoryImpl
2624
import com.skydoves.pokedex.core.database.PokemonInfoDao
2725
import com.skydoves.pokedex.core.database.entitiy.mapper.asEntity
2826
import com.skydoves.pokedex.core.network.service.PokedexClient
2927
import com.skydoves.pokedex.core.network.service.PokedexService
28+
import com.skydoves.pokedex.core.repository.DetailRepository
29+
import com.skydoves.pokedex.core.repository.DetailRepositoryImpl
3030
import com.skydoves.pokedex.core.test.MainCoroutinesRule
3131
import com.skydoves.pokedex.core.test.MockUtil
3232
import com.skydoves.pokedex.ui.details.DetailViewModel

app/src/test/kotlin/com/skydoves/pokedex/MainViewModelTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ import com.nhaarman.mockitokotlin2.atLeastOnce
2121
import com.nhaarman.mockitokotlin2.mock
2222
import com.nhaarman.mockitokotlin2.verify
2323
import com.nhaarman.mockitokotlin2.whenever
24-
import com.skydoves.core.data.repository.MainRepository
25-
import com.skydoves.core.data.repository.MainRepositoryImpl
2624
import com.skydoves.pokedex.core.database.PokemonDao
2725
import com.skydoves.pokedex.core.database.entitiy.mapper.asEntity
2826
import com.skydoves.pokedex.core.network.service.PokedexClient
2927
import com.skydoves.pokedex.core.network.service.PokedexService
28+
import com.skydoves.pokedex.core.repository.MainRepository
29+
import com.skydoves.pokedex.core.repository.MainRepositoryImpl
3030
import com.skydoves.pokedex.core.test.MainCoroutinesRule
3131
import com.skydoves.pokedex.core.test.MockUtil
3232
import com.skydoves.pokedex.ui.main.MainViewModel

benchmark/build.gradle.kts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@ plugins {
2323

2424
android {
2525
compileSdk = Configuration.compileSdk
26+
namespace = "com.skydoves.pokedex.benchmark"
2627

2728
compileOptions {
28-
sourceCompatibility = JavaVersion.VERSION_1_8
29-
targetCompatibility = JavaVersion.VERSION_1_8
29+
sourceCompatibility = JavaVersion.VERSION_17
30+
targetCompatibility = JavaVersion.VERSION_17
3031
}
3132

3233
kotlinOptions {

benchmark/src/main/AndroidManifest.xml

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,9 @@
1414
See the License for the specific language governing permissions and
1515
limitations under the License.
1616
-->
17-
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
18-
package="com.github.skydoves.benchmark">
17+
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
1918

20-
<queries>
21-
<package android:name="com.skydoves.pokedex" />
22-
</queries>
19+
<queries>
20+
<package android:name="com.skydoves.pokedex" />
21+
</queries>
2322
</manifest>

benchmark/src/main/kotlin/com/github/skydoves/benchmark/BaselineProfileGenerator.kt

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616

1717
package com.github.skydoves.benchmark
1818

19-
import androidx.benchmark.macro.ExperimentalStableBaselineProfilesApi
19+
import android.os.Build
20+
import androidx.annotation.RequiresApi
2021
import androidx.benchmark.macro.junit4.BaselineProfileRule
2122
import androidx.test.uiautomator.By
2223
import androidx.test.uiautomator.BySelector
@@ -30,14 +31,14 @@ import org.junit.Test
3031
/**
3132
* Generates a baseline profile which can be copied to `app/src/main/baseline-prof.txt`.
3233
*/
34+
@RequiresApi(Build.VERSION_CODES.P)
3335
class BaselineProfileGenerator {
3436
@get:Rule
3537
val baselineProfileRule = BaselineProfileRule()
3638

3739
@Test
38-
@OptIn(ExperimentalStableBaselineProfilesApi::class)
3940
fun startup() =
40-
baselineProfileRule.collectStableBaselineProfile(
41+
baselineProfileRule.collect(
4142
packageName = packageName,
4243
stableIterations = 2,
4344
maxIterations = 8
@@ -50,7 +51,7 @@ class BaselineProfileGenerator {
5051
device.waitForIdle()
5152

5253
// Navigate to the details screen
53-
device.testDiscover() || return@collectStableBaselineProfile
54+
device.testDiscover() || return@collect
5455
device.navigateFromMainToDetails()
5556
device.pressBack()
5657
}

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ subprojects {
3737
apply(plugin = rootProject.libs.plugins.spotless.get().pluginId)
3838

3939
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().all {
40-
kotlinOptions.jvmTarget = JavaVersion.VERSION_1_8.toString()
40+
kotlinOptions.jvmTarget = JavaVersion.VERSION_17.toString()
4141
kotlinOptions.freeCompilerArgs += listOf(
4242
"-Xopt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
4343
"-Xopt-in=kotlin.time.ExperimentalTime",

0 commit comments

Comments
 (0)