diff --git a/.github/ci-gradle.properties b/.github/ci-gradle.properties index c349fe239..668ebe53b 100644 --- a/.github/ci-gradle.properties +++ b/.github/ci-gradle.properties @@ -19,5 +19,4 @@ org.gradle.parallel=true org.gradle.jvmargs=-Xmx5120m org.gradle.workers.max=2 -kotlin.incremental=false -kotlin.compiler.execution.strategy=in-process \ No newline at end of file +kotlin.incremental=false \ No newline at end of file diff --git a/.github/workflows/MigrationCodelab.yaml b/.github/workflows/MigrationCodelab.yaml index 8f044395a..f12dffd88 100644 --- a/.github/workflows/MigrationCodelab.yaml +++ b/.github/workflows/MigrationCodelab.yaml @@ -31,16 +31,7 @@ jobs: distribution: 'zulu' java-version: 17 - - name: Generate cache key - run: ./scripts/checksum.sh $SAMPLE_PATH checksum.txt - - - uses: actions/cache@v6 - with: - path: | - ~/.gradle/caches/modules-* - ~/.gradle/caches/jars-* - ~/.gradle/caches/build-cache-* - key: gradle-${{ hashFiles('checksum.txt') }} + - uses: gradle/actions/setup-gradle@v6 - name: Build project working-directory: ${{ env.SAMPLE_PATH }} @@ -68,9 +59,17 @@ jobs: api-level: [26, 29] steps: + # https://github.blog/changelog/2023-02-23-hardware-accelerated-android-virtualization-on-actions-windows-and-linux-larger-hosted-runners + - name: Enable KVM group perms + run: | + echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules + sudo udevadm control --reload-rules + sudo udevadm trigger --name-match=kvm + ls /dev/kvm + - name: Checkout uses: actions/checkout@v7 - + - name: Copy CI gradle.properties run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties @@ -80,16 +79,7 @@ jobs: distribution: 'zulu' java-version: 17 - - name: Generate cache key - run: ./scripts/checksum.sh $SAMPLE_PATH checksum.txt - - - uses: actions/cache@v6 - with: - path: | - ~/.gradle/caches/modules-* - ~/.gradle/caches/jars-* - ~/.gradle/caches/build-cache-* - key: gradle-${{ hashFiles('checksum.txt') }} + - uses: gradle/actions/setup-gradle@v6 - name: Run instrumentation tests uses: reactivecircus/android-emulator-runner@v2 diff --git a/AccessibilityCodelab/app/build.gradle b/AccessibilityCodelab/app/build.gradle index 5135a090b..25be408fb 100644 --- a/AccessibilityCodelab/app/build.gradle +++ b/AccessibilityCodelab/app/build.gradle @@ -54,8 +54,8 @@ android { } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } buildFeatures { @@ -69,7 +69,7 @@ android { } dependencies { - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) testImplementation(composeBom) androidTestImplementation(composeBom) @@ -95,7 +95,7 @@ dependencies { implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2" - implementation 'androidx.appcompat:appcompat:1.7.1' + implementation 'androidx.appcompat:appcompat:1.8.0' implementation 'androidx.activity:activity-ktx:1.13.0' implementation 'androidx.core:core-ktx:1.19.0' implementation "androidx.activity:activity-compose:1.13.0" @@ -124,7 +124,7 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { // Enable experimental coroutines APIs, including Flow freeCompilerArgs += '-opt-in=kotlin.Experimental' - // Set JVM target to 1.8 - jvmTarget = "1.8" + // Set JVM target to 17 + jvmTarget = "17" } } diff --git a/AccessibilityCodelab/build.gradle b/AccessibilityCodelab/build.gradle index bf13b59db..75894afd8 100644 --- a/AccessibilityCodelab/build.gradle +++ b/AccessibilityCodelab/build.gradle @@ -44,7 +44,7 @@ subprojects { targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint("0.45.2").userData([android: "true"]) + ktlint("1.2.1") licenseHeaderFile rootProject.file('spotless/copyright.kt') } } diff --git a/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.jar b/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.jar and b/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.properties b/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/AccessibilityCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/AdaptiveUiCodelab/app/build.gradle.kts b/AdaptiveUiCodelab/app/build.gradle.kts index bf820bb91..9c06f8370 100644 --- a/AdaptiveUiCodelab/app/build.gradle.kts +++ b/AdaptiveUiCodelab/app/build.gradle.kts @@ -46,8 +46,8 @@ android { } } compileOptions { - sourceCompatibility = JavaVersion.VERSION_1_8 - targetCompatibility = JavaVersion.VERSION_1_8 + sourceCompatibility = JavaVersion.VERSION_17 + targetCompatibility = JavaVersion.VERSION_17 } buildFeatures { compose = true diff --git a/AdaptiveUiCodelab/gradle/libs.versions.toml b/AdaptiveUiCodelab/gradle/libs.versions.toml index 1adf5fd42..8b5314e43 100644 --- a/AdaptiveUiCodelab/gradle/libs.versions.toml +++ b/AdaptiveUiCodelab/gradle/libs.versions.toml @@ -1,6 +1,6 @@ [versions] androidGradlePlugin = "9.3.1" -composeBom = "2026.06.01" +composeBom = "2026.08.00" coreKtx = "1.19.0" activityCompose = "1.13.0" espressoCore = "3.7.0" @@ -9,7 +9,7 @@ junitVersion = "1.3.0" kotlin = "2.3.10" kotlinxCoroutinesAndroid = "1.10.2" lifecycle = "2.11.0" -material3Adaptive = "1.2.0" +material3Adaptive = "1.3.0" material3AdaptiveNavSuite = "1.4.0" window = "1.5.1" diff --git a/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.jar b/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.jar and b/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.properties b/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/AdaptiveUiCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/AdvancedStateAndSideEffectsCodelab/app/build.gradle b/AdvancedStateAndSideEffectsCodelab/app/build.gradle index 73367afb3..909a1b31f 100644 --- a/AdvancedStateAndSideEffectsCodelab/app/build.gradle +++ b/AdvancedStateAndSideEffectsCodelab/app/build.gradle @@ -100,10 +100,10 @@ dependencies { } implementation "androidx.activity:activity-compose:1.13.0" - implementation "androidx.appcompat:appcompat:1.7.1" - implementation "androidx.tracing:tracing:1.3.0" + implementation "androidx.appcompat:appcompat:1.8.0" + implementation "androidx.tracing:tracing:2.0.0" - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) androidTestImplementation(composeBom) implementation "androidx.compose.runtime:runtime" diff --git a/AdvancedStateAndSideEffectsCodelab/build.gradle b/AdvancedStateAndSideEffectsCodelab/build.gradle index b68e7bae3..c8d02199d 100644 --- a/AdvancedStateAndSideEffectsCodelab/build.gradle +++ b/AdvancedStateAndSideEffectsCodelab/build.gradle @@ -28,7 +28,7 @@ buildscript { plugins { id 'com.diffplug.spotless' version '8.9.0' - id 'com.google.devtools.ksp' version '2.3.10' apply false + id 'com.google.devtools.ksp' version '2.3.11' apply false } subprojects { @@ -43,7 +43,7 @@ subprojects { target '**/*.kt' targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint("0.45.2") + ktlint("1.2.1") licenseHeaderFile rootProject.file('spotless/copyright.kt') } } diff --git a/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.jar b/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.jar and b/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.properties b/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/AdvancedStateAndSideEffectsCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/BasicLayoutsCodelab/app/build.gradle b/BasicLayoutsCodelab/app/build.gradle index 3ec9c795e..cbc96cd24 100644 --- a/BasicLayoutsCodelab/app/build.gradle +++ b/BasicLayoutsCodelab/app/build.gradle @@ -43,8 +43,8 @@ android { } } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } buildFeatures { compose true @@ -57,7 +57,7 @@ android { } dependencies { - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) androidTestImplementation(composeBom) diff --git a/BasicLayoutsCodelab/build.gradle b/BasicLayoutsCodelab/build.gradle index 8a1578957..b9ed4d225 100644 --- a/BasicLayoutsCodelab/build.gradle +++ b/BasicLayoutsCodelab/build.gradle @@ -42,7 +42,7 @@ subprojects { targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint("0.45.2").userData([android: "true"]) + ktlint("1.2.1") licenseHeaderFile rootProject.file('spotless/copyright.kt') } } diff --git a/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.jar b/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.jar and b/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.properties b/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/BasicLayoutsCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/MigrationCodelab/app/build.gradle b/MigrationCodelab/app/build.gradle index 7e8b8a87a..2e51c6e0e 100644 --- a/MigrationCodelab/app/build.gradle +++ b/MigrationCodelab/app/build.gradle @@ -56,17 +56,17 @@ android { } dependencies { - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) androidTestImplementation(composeBom) kapt "androidx.room:room-compiler:2.8.4" kapt "com.github.bumptech.glide:compiler:5.0.9" kapt "org.jetbrains.kotlin:kotlin-metadata-jvm:2.3.10" - implementation "androidx.appcompat:appcompat:1.7.1" + implementation "androidx.appcompat:appcompat:1.8.0" implementation "androidx.constraintlayout:constraintlayout:2.2.2" implementation "androidx.core:core-ktx:1.19.0" - implementation "androidx.fragment:fragment-ktx:1.8.9" + implementation "androidx.fragment:fragment-ktx:1.9.0" implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.11.0" implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.11.0" implementation "androidx.navigation:navigation-fragment-ktx:2.9.8" @@ -74,7 +74,7 @@ dependencies { implementation "androidx.recyclerview:recyclerview:1.4.0" implementation "androidx.room:room-runtime:2.8.4" implementation "androidx.room:room-ktx:2.8.4" - implementation "androidx.tracing:tracing:1.3.0" + implementation "androidx.tracing:tracing:2.0.0" implementation "androidx.viewpager2:viewpager2:1.1.0" implementation "androidx.work:work-runtime-ktx:2.11.2" implementation "com.github.bumptech.glide:glide:5.0.9" diff --git a/MigrationCodelab/build.gradle b/MigrationCodelab/build.gradle index d73d6f1c9..356f4b359 100644 --- a/MigrationCodelab/build.gradle +++ b/MigrationCodelab/build.gradle @@ -45,6 +45,6 @@ spotless { target "**/*.kt" targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint("0.46.1") + ktlint("1.2.1") } } diff --git a/MigrationCodelab/gradle/wrapper/gradle-wrapper.jar b/MigrationCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/MigrationCodelab/gradle/wrapper/gradle-wrapper.jar and b/MigrationCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/MigrationCodelab/gradle/wrapper/gradle-wrapper.properties b/MigrationCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/MigrationCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/MigrationCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/NavigationCodelab/app/build.gradle b/NavigationCodelab/app/build.gradle index b6131a7b5..57d9e9dc8 100644 --- a/NavigationCodelab/app/build.gradle +++ b/NavigationCodelab/app/build.gradle @@ -56,18 +56,14 @@ android { } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } buildFeatures { compose true } - composeOptions { - kotlinCompilerExtensionVersion '1.5.15' - } - packagingOptions { exclude "META-INF/licenses/**" exclude "META-INF/AL2.0" @@ -76,11 +72,11 @@ android { } dependencies { - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) androidTestImplementation(composeBom) - implementation "androidx.appcompat:appcompat:1.7.1" + implementation "androidx.appcompat:appcompat:1.8.0" implementation "androidx.core:core-ktx:1.19.0" implementation "com.google.android.material:material:1.14.0" @@ -112,7 +108,7 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { freeCompilerArgs += '-opt-in=kotlin.RequiresOptIn' - // Set JVM target to 1.8 - jvmTarget = "1.8" + // Set JVM target to 17 + jvmTarget = "17" } } diff --git a/NavigationCodelab/build.gradle b/NavigationCodelab/build.gradle index 6c98b0186..e8a889dd5 100644 --- a/NavigationCodelab/build.gradle +++ b/NavigationCodelab/build.gradle @@ -44,7 +44,7 @@ subprojects { targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint("0.46.1") + ktlint("1.2.1") licenseHeaderFile rootProject.file('spotless/copyright.kt') } } diff --git a/NavigationCodelab/gradle/wrapper/gradle-wrapper.jar b/NavigationCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/NavigationCodelab/gradle/wrapper/gradle-wrapper.jar and b/NavigationCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/NavigationCodelab/gradle/wrapper/gradle-wrapper.properties b/NavigationCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/NavigationCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/NavigationCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/PerformanceCodelab/app/build.gradle.kts b/PerformanceCodelab/app/build.gradle.kts index b334d14a6..fc64052ef 100644 --- a/PerformanceCodelab/app/build.gradle.kts +++ b/PerformanceCodelab/app/build.gradle.kts @@ -88,7 +88,7 @@ dependencies { implementation(libs.androidx.tracing.ktx) // TODO Codelab task: Add androidx.runtime-tracing dependency to enable Composition Tracing - implementation("androidx.compose.runtime:runtime-tracing:1.11.4") + implementation("androidx.compose.runtime:runtime-tracing:1.12.0") implementation(libs.coil.compose) implementation(libs.androidx.media3.exoplayer) diff --git a/PerformanceCodelab/gradle/libs.versions.toml b/PerformanceCodelab/gradle/libs.versions.toml index d8e53fa76..2cba09397 100644 --- a/PerformanceCodelab/gradle/libs.versions.toml +++ b/PerformanceCodelab/gradle/libs.versions.toml @@ -5,7 +5,7 @@ desugar_jdk_libs = "2.1.5" kotlinx-datetime = "0.7.1-0.6.x-compat" lifecycle-viewmodel-compose = "2.11.0" material-icons-core = "1.7.8" -media3 = "1.10.1" +media3 = "1.11.0" org-jetbrains-kotlin-android = "2.3.10" core-ktx = "1.19.0" junit = "4.13.2" @@ -13,13 +13,13 @@ androidx-test-ext-junit = "1.3.0" espresso-core = "3.7.0" lifecycle-runtime-ktx = "2.11.0" activity-compose = "1.13.0" -compose-bom = "2026.06.01" -runtime-tracing = "1.11.4" -tracing-ktx = "1.3.0" +compose-bom = "2026.08.00" +runtime-tracing = "1.12.0" +tracing-ktx = "2.0.0" tracing-perfetto = "1.0.1" uiautomator = "2.4.0" benchmark = "1.4.1" -androidx-baselineprofile = "1.5.0-beta01" +androidx-baselineprofile = "1.5.0-rc01" profileinstaller = "1.4.1" material3 = "1.4.0" spotless = "8.9.0" diff --git a/PerformanceCodelab/gradle/wrapper/gradle-wrapper.jar b/PerformanceCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/PerformanceCodelab/gradle/wrapper/gradle-wrapper.jar and b/PerformanceCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/PerformanceCodelab/gradle/wrapper/gradle-wrapper.properties b/PerformanceCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/PerformanceCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/PerformanceCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/TestingCodelab/app/build.gradle b/TestingCodelab/app/build.gradle index 8e01c44e3..9d33639ed 100644 --- a/TestingCodelab/app/build.gradle +++ b/TestingCodelab/app/build.gradle @@ -56,8 +56,8 @@ android { } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } buildFeatures { @@ -79,7 +79,7 @@ android { } dependencies { - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) androidTestImplementation(composeBom) diff --git a/TestingCodelab/build.gradle b/TestingCodelab/build.gradle index b3dac9969..873faa67a 100644 --- a/TestingCodelab/build.gradle +++ b/TestingCodelab/build.gradle @@ -23,12 +23,12 @@ buildscript { targetSdkVersion = 33 // App dependencies - appCompatVersion = '1.7.1' + appCompatVersion = '1.8.0' activityComposeVersion = '1.13.0' coreTestingVersion = '2.2.0' coroutinesVersion = "1.5.2" espressoVersion = '3.7.0' - fragmentVersion = '1.8.9' + fragmentVersion = '1.9.0' junitVersion = '4.13.1' kotlinVersion = '2.3.10' ktlintVersion = '0.48.2' @@ -71,7 +71,7 @@ subprojects { targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint(rootProject.ktlintVersion) + ktlint("1.2.1") licenseHeaderFile rootProject.file('spotless/copyright.kt') } } @@ -87,8 +87,8 @@ subprojects { freeCompilerArgs += '-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi' freeCompilerArgs += '-opt-in=kotlinx.coroutines.FlowPreview' - // Set JVM target to 1.8 - jvmTarget = "1.8" + // Set JVM target to 17 + jvmTarget = "17" } } } diff --git a/TestingCodelab/gradle/wrapper/gradle-wrapper.jar b/TestingCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/TestingCodelab/gradle/wrapper/gradle-wrapper.jar and b/TestingCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/TestingCodelab/gradle/wrapper/gradle-wrapper.properties b/TestingCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/TestingCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/TestingCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500 diff --git a/ThemingCodelab/app/build.gradle b/ThemingCodelab/app/build.gradle index 20a1b0ecb..fc08adf1f 100644 --- a/ThemingCodelab/app/build.gradle +++ b/ThemingCodelab/app/build.gradle @@ -71,8 +71,8 @@ android { } compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } buildFeatures { @@ -86,7 +86,7 @@ android { } dependencies { - def composeBom = platform('androidx.compose:compose-bom:2026.06.01') + def composeBom = platform('androidx.compose:compose-bom:2026.08.00') implementation(composeBom) testImplementation(composeBom) androidTestImplementation(composeBom) @@ -108,7 +108,7 @@ dependencies { implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.10.2" - implementation 'androidx.appcompat:appcompat:1.7.1' + implementation 'androidx.appcompat:appcompat:1.8.0' implementation 'androidx.activity:activity-ktx:1.13.0' implementation 'androidx.core:core-ktx:1.19.0' implementation "androidx.activity:activity-compose:1.13.0" @@ -133,8 +133,8 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { // Enable experimental coroutines APIs, including Flow freeCompilerArgs += '-opt-in=kotlin.Experimental' - // Set JVM target to 1.8 - jvmTarget = "1.8" + // Set JVM target to 17 + jvmTarget = "17" } } diff --git a/ThemingCodelab/build.gradle b/ThemingCodelab/build.gradle index 6aca86a33..6313ebb36 100644 --- a/ThemingCodelab/build.gradle +++ b/ThemingCodelab/build.gradle @@ -44,7 +44,7 @@ subprojects { targetExclude("$buildDir/**/*.kt") targetExclude('bin/**/*.kt') - ktlint("0.45.2") + ktlint("1.2.1") licenseHeaderFile rootProject.file('spotless/copyright.kt') } } diff --git a/ThemingCodelab/gradle/wrapper/gradle-wrapper.jar b/ThemingCodelab/gradle/wrapper/gradle-wrapper.jar index b1b8ef56b..eddabd2ee 100644 Binary files a/ThemingCodelab/gradle/wrapper/gradle-wrapper.jar and b/ThemingCodelab/gradle/wrapper/gradle-wrapper.jar differ diff --git a/ThemingCodelab/gradle/wrapper/gradle-wrapper.properties b/ThemingCodelab/gradle/wrapper/gradle-wrapper.properties index a9db11550..69dd0d040 100644 --- a/ThemingCodelab/gradle/wrapper/gradle-wrapper.properties +++ b/ThemingCodelab/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip networkTimeout=10000 retries=0 retryBackOffMs=500