Merge "Remove api_legacy files" into androidx-main
diff --git a/activity/activity-compose/build.gradle b/activity/activity-compose/build.gradle
index f763d59..907ed2e 100644
--- a/activity/activity-compose/build.gradle
+++ b/activity/activity-compose/build.gradle
@@ -26,13 +26,13 @@
 }
 
 dependencies {
-    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc01"
+    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc02"
 
     implementation(libs.kotlinStdlib)
-    api "androidx.compose.runtime:runtime:1.0.0-rc01"
-    api "androidx.compose.runtime:runtime-saveable:1.0.0-rc01"
+    api "androidx.compose.runtime:runtime:1.0.0-rc02"
+    api "androidx.compose.runtime:runtime-saveable:1.0.0-rc02"
     api(projectOrArtifact(":activity:activity-ktx"))
-    api("androidx.compose.ui:ui:1.0.0-rc01")
+    api("androidx.compose.ui:ui:1.0.0-rc02")
 
     androidTestImplementation projectOrArtifact(":compose:ui:ui-test-junit4")
     androidTestImplementation projectOrArtifact(":compose:material:material")
diff --git a/activity/activity-compose/samples/build.gradle b/activity/activity-compose/samples/build.gradle
index 7848084..e5e84a5 100644
--- a/activity/activity-compose/samples/build.gradle
+++ b/activity/activity-compose/samples/build.gradle
@@ -25,14 +25,14 @@
 }
 
 dependencies {
-    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc01"
+    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc02"
     implementation(libs.kotlinStdlib)
 
     compileOnly projectOrArtifact(":annotation:annotation-sampled")
-    implementation "androidx.compose.foundation:foundation:1.0.0-rc01"
+    implementation "androidx.compose.foundation:foundation:1.0.0-rc02"
     implementation projectOrArtifact(":activity:activity-compose")
     implementation projectOrArtifact(":activity:activity-ktx")
-    implementation "androidx.compose.material:material:1.0.0-rc01"
+    implementation "androidx.compose.material:material:1.0.0-rc02"
 }
 
 androidx {
diff --git a/appcompat/appcompat/build.gradle b/appcompat/appcompat/build.gradle
index ef97181..962d0ca 100644
--- a/appcompat/appcompat/build.gradle
+++ b/appcompat/appcompat/build.gradle
@@ -17,8 +17,8 @@
     implementation(project(":emoji2:emoji2-views-helper"))
     implementation("androidx.collection:collection:1.0.0")
     api("androidx.cursoradapter:cursoradapter:1.0.0")
-    api("androidx.activity:activity:1.2.3")
-    api("androidx.fragment:fragment:1.3.4")
+    api("androidx.activity:activity:1.2.4")
+    api("androidx.fragment:fragment:1.3.6")
     api(project(":appcompat:appcompat-resources"))
     api("androidx.drawerlayout:drawerlayout:1.0.0")
     implementation("androidx.lifecycle:lifecycle-runtime:2.3.1")
diff --git a/benchmark/common/api/1.0.0-beta01.txt b/benchmark/benchmark-common/api/1.0.0-beta01.txt
similarity index 100%
rename from benchmark/common/api/1.0.0-beta01.txt
rename to benchmark/benchmark-common/api/1.0.0-beta01.txt
diff --git a/benchmark/common/api/1.0.0-rc01.txt b/benchmark/benchmark-common/api/1.0.0-rc01.txt
similarity index 100%
rename from benchmark/common/api/1.0.0-rc01.txt
rename to benchmark/benchmark-common/api/1.0.0-rc01.txt
diff --git a/benchmark/common/api/current.ignore b/benchmark/benchmark-common/api/current.ignore
similarity index 100%
rename from benchmark/common/api/current.ignore
rename to benchmark/benchmark-common/api/current.ignore
diff --git a/benchmark/common/api/current.txt b/benchmark/benchmark-common/api/current.txt
similarity index 100%
rename from benchmark/common/api/current.txt
rename to benchmark/benchmark-common/api/current.txt
diff --git a/benchmark/common/api/public_plus_experimental_1.0.0-beta01.txt b/benchmark/benchmark-common/api/public_plus_experimental_1.0.0-beta01.txt
similarity index 100%
rename from benchmark/common/api/public_plus_experimental_1.0.0-beta01.txt
rename to benchmark/benchmark-common/api/public_plus_experimental_1.0.0-beta01.txt
diff --git a/benchmark/common/api/public_plus_experimental_1.0.0-rc01.txt b/benchmark/benchmark-common/api/public_plus_experimental_1.0.0-rc01.txt
similarity index 100%
rename from benchmark/common/api/public_plus_experimental_1.0.0-rc01.txt
rename to benchmark/benchmark-common/api/public_plus_experimental_1.0.0-rc01.txt
diff --git a/benchmark/common/api/public_plus_experimental_current.txt b/benchmark/benchmark-common/api/public_plus_experimental_current.txt
similarity index 100%
rename from benchmark/common/api/public_plus_experimental_current.txt
rename to benchmark/benchmark-common/api/public_plus_experimental_current.txt
diff --git a/benchmark/common/api/res-1.0.0-beta01.txt b/benchmark/benchmark-common/api/res-1.0.0-beta01.txt
similarity index 100%
rename from benchmark/common/api/res-1.0.0-beta01.txt
rename to benchmark/benchmark-common/api/res-1.0.0-beta01.txt
diff --git a/benchmark/common/api/res-1.0.0-rc01.txt b/benchmark/benchmark-common/api/res-1.0.0-rc01.txt
similarity index 100%
rename from benchmark/common/api/res-1.0.0-rc01.txt
rename to benchmark/benchmark-common/api/res-1.0.0-rc01.txt
diff --git a/benchmark/common/api/res-current.txt b/benchmark/benchmark-common/api/res-current.txt
similarity index 100%
rename from benchmark/common/api/res-current.txt
rename to benchmark/benchmark-common/api/res-current.txt
diff --git a/benchmark/common/api/restricted_1.0.0-beta01.txt b/benchmark/benchmark-common/api/restricted_1.0.0-beta01.txt
similarity index 100%
rename from benchmark/common/api/restricted_1.0.0-beta01.txt
rename to benchmark/benchmark-common/api/restricted_1.0.0-beta01.txt
diff --git a/benchmark/common/api/restricted_1.0.0-rc01.txt b/benchmark/benchmark-common/api/restricted_1.0.0-rc01.txt
similarity index 100%
rename from benchmark/common/api/restricted_1.0.0-rc01.txt
rename to benchmark/benchmark-common/api/restricted_1.0.0-rc01.txt
diff --git a/benchmark/common/api/restricted_current.ignore b/benchmark/benchmark-common/api/restricted_current.ignore
similarity index 100%
rename from benchmark/common/api/restricted_current.ignore
rename to benchmark/benchmark-common/api/restricted_current.ignore
diff --git a/benchmark/common/api/restricted_current.txt b/benchmark/benchmark-common/api/restricted_current.txt
similarity index 100%
rename from benchmark/common/api/restricted_current.txt
rename to benchmark/benchmark-common/api/restricted_current.txt
diff --git a/benchmark/common/build.gradle b/benchmark/benchmark-common/build.gradle
similarity index 100%
rename from benchmark/common/build.gradle
rename to benchmark/benchmark-common/build.gradle
diff --git a/benchmark/common/src/androidTest/AndroidManifest.xml b/benchmark/benchmark-common/src/androidTest/AndroidManifest.xml
similarity index 100%
rename from benchmark/common/src/androidTest/AndroidManifest.xml
rename to benchmark/benchmark-common/src/androidTest/AndroidManifest.xml
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/Allocator.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/Allocator.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/Allocator.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/Allocator.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/ArgumentInjectingApplication.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ArgumentInjectingApplication.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/ArgumentInjectingApplication.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ArgumentInjectingApplication.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/BenchmarkStateTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/BenchmarkStateTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/BenchmarkStateTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/BenchmarkStateTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/CpuInfoTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/CpuInfoTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/CpuInfoTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/CpuInfoTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/InstrumentationResultsTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/InstrumentationResultsTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/InstrumentationResultsTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/InstrumentationResultsTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/MetricCaptureTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/MetricCaptureTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/MetricCaptureTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/MetricCaptureTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/MetricNameUtilsTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/MetricNameUtilsTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/MetricNameUtilsTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/MetricNameUtilsTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/OutputsTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/OutputsTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/OutputsTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/OutputsTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/ProfilerTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ProfilerTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/ProfilerTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ProfilerTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/ResultWriterTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ResultWriterTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/ResultWriterTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ResultWriterTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/ShellTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ShellTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/ShellTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/ShellTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/StatsTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/StatsTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/StatsTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/StatsTest.kt
diff --git a/benchmark/common/src/androidTest/java/androidx/benchmark/WarmupManagerTest.kt b/benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/WarmupManagerTest.kt
similarity index 100%
rename from benchmark/common/src/androidTest/java/androidx/benchmark/WarmupManagerTest.kt
rename to benchmark/benchmark-common/src/androidTest/java/androidx/benchmark/WarmupManagerTest.kt
diff --git a/benchmark/common/src/main/AndroidManifest.xml b/benchmark/benchmark-common/src/main/AndroidManifest.xml
similarity index 100%
rename from benchmark/common/src/main/AndroidManifest.xml
rename to benchmark/benchmark-common/src/main/AndroidManifest.xml
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Api21.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Api21.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Api21.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Api21.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Api24.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Api24.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Api24.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Api24.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Api27.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Api27.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Api27.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Api27.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Api29.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Api29.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Api29.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Api29.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Arguments.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Arguments.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Arguments.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Arguments.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/BenchmarkResult.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/BenchmarkResult.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/BenchmarkResult.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/BenchmarkResult.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/BenchmarkState.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/BenchmarkState.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/BenchmarkState.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/BenchmarkState.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/CpuInfo.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/CpuInfo.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/CpuInfo.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/CpuInfo.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Errors.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Errors.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Errors.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Errors.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/InstrumentationResults.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/InstrumentationResults.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/InstrumentationResults.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/InstrumentationResults.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/IsolationActivity.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/IsolationActivity.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/IsolationActivity.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/IsolationActivity.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/MemInfo.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/MemInfo.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/MemInfo.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/MemInfo.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/MetricCapture.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/MetricCapture.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/MetricCapture.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/MetricCapture.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/MetricNameUtils.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/MetricNameUtils.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/MetricNameUtils.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/MetricNameUtils.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/MetricsContainer.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/MetricsContainer.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/MetricsContainer.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/MetricsContainer.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Outputs.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Outputs.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Outputs.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Outputs.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Profiler.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Profiler.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Profiler.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Profiler.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/ResultWriter.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/ResultWriter.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/ResultWriter.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/ResultWriter.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Shell.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Shell.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Shell.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Shell.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/Stats.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/Stats.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/Stats.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/Stats.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/ThreadPriority.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/ThreadPriority.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/ThreadPriority.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/ThreadPriority.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/ThrottleDetector.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/ThrottleDetector.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/ThrottleDetector.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/ThrottleDetector.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/WarmupManager.kt b/benchmark/benchmark-common/src/main/java/androidx/benchmark/WarmupManager.kt
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/WarmupManager.kt
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/WarmupManager.kt
diff --git a/benchmark/common/src/main/java/androidx/benchmark/simpleperf/ProfileSession.java b/benchmark/benchmark-common/src/main/java/androidx/benchmark/simpleperf/ProfileSession.java
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/simpleperf/ProfileSession.java
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/simpleperf/ProfileSession.java
diff --git a/benchmark/common/src/main/java/androidx/benchmark/simpleperf/RecordOptions.java b/benchmark/benchmark-common/src/main/java/androidx/benchmark/simpleperf/RecordOptions.java
similarity index 100%
rename from benchmark/common/src/main/java/androidx/benchmark/simpleperf/RecordOptions.java
rename to benchmark/benchmark-common/src/main/java/androidx/benchmark/simpleperf/RecordOptions.java
diff --git a/benchmark/common/src/main/res/drawable-nodpi/logo.png b/benchmark/benchmark-common/src/main/res/drawable-nodpi/logo.png
similarity index 100%
rename from benchmark/common/src/main/res/drawable-nodpi/logo.png
rename to benchmark/benchmark-common/src/main/res/drawable-nodpi/logo.png
Binary files differ
diff --git a/benchmark/common/src/main/res/layout/isolation_activity.xml b/benchmark/benchmark-common/src/main/res/layout/isolation_activity.xml
similarity index 100%
rename from benchmark/common/src/main/res/layout/isolation_activity.xml
rename to benchmark/benchmark-common/src/main/res/layout/isolation_activity.xml
diff --git a/benchmark/junit4/api/1.0.0-beta01.txt b/benchmark/benchmark-junit4/api/1.0.0-beta01.txt
similarity index 100%
rename from benchmark/junit4/api/1.0.0-beta01.txt
rename to benchmark/benchmark-junit4/api/1.0.0-beta01.txt
diff --git a/benchmark/junit4/api/1.0.0-rc01.txt b/benchmark/benchmark-junit4/api/1.0.0-rc01.txt
similarity index 100%
rename from benchmark/junit4/api/1.0.0-rc01.txt
rename to benchmark/benchmark-junit4/api/1.0.0-rc01.txt
diff --git a/benchmark/junit4/api/current.txt b/benchmark/benchmark-junit4/api/current.txt
similarity index 100%
rename from benchmark/junit4/api/current.txt
rename to benchmark/benchmark-junit4/api/current.txt
diff --git a/benchmark/junit4/api/public_plus_experimental_1.0.0-beta01.txt b/benchmark/benchmark-junit4/api/public_plus_experimental_1.0.0-beta01.txt
similarity index 100%
rename from benchmark/junit4/api/public_plus_experimental_1.0.0-beta01.txt
rename to benchmark/benchmark-junit4/api/public_plus_experimental_1.0.0-beta01.txt
diff --git a/benchmark/junit4/api/public_plus_experimental_1.0.0-rc01.txt b/benchmark/benchmark-junit4/api/public_plus_experimental_1.0.0-rc01.txt
similarity index 100%
rename from benchmark/junit4/api/public_plus_experimental_1.0.0-rc01.txt
rename to benchmark/benchmark-junit4/api/public_plus_experimental_1.0.0-rc01.txt
diff --git a/benchmark/junit4/api/public_plus_experimental_current.txt b/benchmark/benchmark-junit4/api/public_plus_experimental_current.txt
similarity index 100%
rename from benchmark/junit4/api/public_plus_experimental_current.txt
rename to benchmark/benchmark-junit4/api/public_plus_experimental_current.txt
diff --git a/benchmark/junit4/api/res-1.0.0-beta01.txt b/benchmark/benchmark-junit4/api/res-1.0.0-beta01.txt
similarity index 100%
rename from benchmark/junit4/api/res-1.0.0-beta01.txt
rename to benchmark/benchmark-junit4/api/res-1.0.0-beta01.txt
diff --git a/benchmark/junit4/api/res-1.0.0-rc01.txt b/benchmark/benchmark-junit4/api/res-1.0.0-rc01.txt
similarity index 100%
rename from benchmark/junit4/api/res-1.0.0-rc01.txt
rename to benchmark/benchmark-junit4/api/res-1.0.0-rc01.txt
diff --git a/benchmark/macro-junit4/api/res-current.txt b/benchmark/benchmark-junit4/api/res-current.txt
similarity index 100%
copy from benchmark/macro-junit4/api/res-current.txt
copy to benchmark/benchmark-junit4/api/res-current.txt
diff --git a/benchmark/junit4/api/restricted_1.0.0-beta01.txt b/benchmark/benchmark-junit4/api/restricted_1.0.0-beta01.txt
similarity index 100%
rename from benchmark/junit4/api/restricted_1.0.0-beta01.txt
rename to benchmark/benchmark-junit4/api/restricted_1.0.0-beta01.txt
diff --git a/benchmark/junit4/api/restricted_1.0.0-rc01.txt b/benchmark/benchmark-junit4/api/restricted_1.0.0-rc01.txt
similarity index 100%
rename from benchmark/junit4/api/restricted_1.0.0-rc01.txt
rename to benchmark/benchmark-junit4/api/restricted_1.0.0-rc01.txt
diff --git a/benchmark/junit4/api/restricted_current.txt b/benchmark/benchmark-junit4/api/restricted_current.txt
similarity index 100%
rename from benchmark/junit4/api/restricted_current.txt
rename to benchmark/benchmark-junit4/api/restricted_current.txt
diff --git a/benchmark/junit4/build.gradle b/benchmark/benchmark-junit4/build.gradle
similarity index 100%
rename from benchmark/junit4/build.gradle
rename to benchmark/benchmark-junit4/build.gradle
diff --git a/benchmark/junit4/src/androidTest/AndroidManifest.xml b/benchmark/benchmark-junit4/src/androidTest/AndroidManifest.xml
similarity index 100%
rename from benchmark/junit4/src/androidTest/AndroidManifest.xml
rename to benchmark/benchmark-junit4/src/androidTest/AndroidManifest.xml
diff --git a/benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/ActivityBenchmarkTests.kt b/benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/ActivityBenchmarkTests.kt
similarity index 100%
rename from benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/ActivityBenchmarkTests.kt
rename to benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/ActivityBenchmarkTests.kt
diff --git a/benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/AndroidBenchmarkRunnerTest.kt b/benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/AndroidBenchmarkRunnerTest.kt
similarity index 100%
rename from benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/AndroidBenchmarkRunnerTest.kt
rename to benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/AndroidBenchmarkRunnerTest.kt
diff --git a/benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/ArgumentInjectingApplication.kt b/benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/ArgumentInjectingApplication.kt
similarity index 100%
rename from benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/ArgumentInjectingApplication.kt
rename to benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/ArgumentInjectingApplication.kt
diff --git a/benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleAnnotationTest.kt b/benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleAnnotationTest.kt
similarity index 100%
rename from benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleAnnotationTest.kt
rename to benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleAnnotationTest.kt
diff --git a/benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleNotUsedTest.kt b/benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleNotUsedTest.kt
similarity index 100%
rename from benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleNotUsedTest.kt
rename to benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleNotUsedTest.kt
diff --git a/benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleTest.kt b/benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleTest.kt
similarity index 100%
rename from benchmark/junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleTest.kt
rename to benchmark/benchmark-junit4/src/androidTest/java/androidx/benchmark/junit4/BenchmarkRuleTest.kt
diff --git a/benchmark/junit4/src/main/AndroidManifest.xml b/benchmark/benchmark-junit4/src/main/AndroidManifest.xml
similarity index 100%
rename from benchmark/junit4/src/main/AndroidManifest.xml
rename to benchmark/benchmark-junit4/src/main/AndroidManifest.xml
diff --git a/benchmark/junit4/src/main/java/androidx/benchmark/junit4/AndroidBenchmarkRunner.kt b/benchmark/benchmark-junit4/src/main/java/androidx/benchmark/junit4/AndroidBenchmarkRunner.kt
similarity index 100%
rename from benchmark/junit4/src/main/java/androidx/benchmark/junit4/AndroidBenchmarkRunner.kt
rename to benchmark/benchmark-junit4/src/main/java/androidx/benchmark/junit4/AndroidBenchmarkRunner.kt
diff --git a/benchmark/junit4/src/main/java/androidx/benchmark/junit4/BenchmarkRule.kt b/benchmark/benchmark-junit4/src/main/java/androidx/benchmark/junit4/BenchmarkRule.kt
similarity index 100%
rename from benchmark/junit4/src/main/java/androidx/benchmark/junit4/BenchmarkRule.kt
rename to benchmark/benchmark-junit4/src/main/java/androidx/benchmark/junit4/BenchmarkRule.kt
diff --git a/benchmark/junit4/src/main/java/androidx/benchmark/junit4/InstrumentationResultsRunListener.kt b/benchmark/benchmark-junit4/src/main/java/androidx/benchmark/junit4/InstrumentationResultsRunListener.kt
similarity index 100%
rename from benchmark/junit4/src/main/java/androidx/benchmark/junit4/InstrumentationResultsRunListener.kt
rename to benchmark/benchmark-junit4/src/main/java/androidx/benchmark/junit4/InstrumentationResultsRunListener.kt
diff --git a/benchmark/macro-junit4/api/current.txt b/benchmark/benchmark-macro-junit4/api/current.txt
similarity index 100%
rename from benchmark/macro-junit4/api/current.txt
rename to benchmark/benchmark-macro-junit4/api/current.txt
diff --git a/benchmark/macro-junit4/api/public_plus_experimental_current.txt b/benchmark/benchmark-macro-junit4/api/public_plus_experimental_current.txt
similarity index 100%
rename from benchmark/macro-junit4/api/public_plus_experimental_current.txt
rename to benchmark/benchmark-macro-junit4/api/public_plus_experimental_current.txt
diff --git a/benchmark/macro-junit4/api/res-current.txt b/benchmark/benchmark-macro-junit4/api/res-current.txt
similarity index 100%
rename from benchmark/macro-junit4/api/res-current.txt
rename to benchmark/benchmark-macro-junit4/api/res-current.txt
diff --git a/benchmark/macro-junit4/api/restricted_current.txt b/benchmark/benchmark-macro-junit4/api/restricted_current.txt
similarity index 100%
rename from benchmark/macro-junit4/api/restricted_current.txt
rename to benchmark/benchmark-macro-junit4/api/restricted_current.txt
diff --git a/benchmark/macro-junit4/build.gradle b/benchmark/benchmark-macro-junit4/build.gradle
similarity index 100%
rename from benchmark/macro-junit4/build.gradle
rename to benchmark/benchmark-macro-junit4/build.gradle
diff --git a/benchmark/macro-junit4/src/androidTest/java/androidx/benchmark/macro/test/PerfettoRuleTest.kt b/benchmark/benchmark-macro-junit4/src/androidTest/java/androidx/benchmark/macro/test/PerfettoRuleTest.kt
similarity index 100%
rename from benchmark/macro-junit4/src/androidTest/java/androidx/benchmark/macro/test/PerfettoRuleTest.kt
rename to benchmark/benchmark-macro-junit4/src/androidTest/java/androidx/benchmark/macro/test/PerfettoRuleTest.kt
diff --git a/benchmark/macro-junit4/src/main/AndroidManifest.xml b/benchmark/benchmark-macro-junit4/src/main/AndroidManifest.xml
similarity index 100%
rename from benchmark/macro-junit4/src/main/AndroidManifest.xml
rename to benchmark/benchmark-macro-junit4/src/main/AndroidManifest.xml
diff --git a/benchmark/macro-junit4/src/main/java/androidx/benchmark/macro/junit4/MacrobenchmarkRule.kt b/benchmark/benchmark-macro-junit4/src/main/java/androidx/benchmark/macro/junit4/MacrobenchmarkRule.kt
similarity index 100%
rename from benchmark/macro-junit4/src/main/java/androidx/benchmark/macro/junit4/MacrobenchmarkRule.kt
rename to benchmark/benchmark-macro-junit4/src/main/java/androidx/benchmark/macro/junit4/MacrobenchmarkRule.kt
diff --git a/benchmark/macro-junit4/src/main/java/androidx/benchmark/macro/junit4/PerfettoRule.kt b/benchmark/benchmark-macro-junit4/src/main/java/androidx/benchmark/macro/junit4/PerfettoRule.kt
similarity index 100%
rename from benchmark/macro-junit4/src/main/java/androidx/benchmark/macro/junit4/PerfettoRule.kt
rename to benchmark/benchmark-macro-junit4/src/main/java/androidx/benchmark/macro/junit4/PerfettoRule.kt
diff --git a/benchmark/macro/api/current.txt b/benchmark/benchmark-macro/api/current.txt
similarity index 100%
rename from benchmark/macro/api/current.txt
rename to benchmark/benchmark-macro/api/current.txt
diff --git a/benchmark/macro/api/public_plus_experimental_current.txt b/benchmark/benchmark-macro/api/public_plus_experimental_current.txt
similarity index 100%
rename from benchmark/macro/api/public_plus_experimental_current.txt
rename to benchmark/benchmark-macro/api/public_plus_experimental_current.txt
diff --git a/benchmark/macro/api/res-current.txt b/benchmark/benchmark-macro/api/res-current.txt
similarity index 100%
rename from benchmark/macro/api/res-current.txt
rename to benchmark/benchmark-macro/api/res-current.txt
diff --git a/benchmark/macro/api/restricted_current.txt b/benchmark/benchmark-macro/api/restricted_current.txt
similarity index 100%
rename from benchmark/macro/api/restricted_current.txt
rename to benchmark/benchmark-macro/api/restricted_current.txt
diff --git a/benchmark/macro/build.gradle b/benchmark/benchmark-macro/build.gradle
similarity index 100%
rename from benchmark/macro/build.gradle
rename to benchmark/benchmark-macro/build.gradle
diff --git a/benchmark/macro/src/androidTest/AndroidManifest.xml b/benchmark/benchmark-macro/src/androidTest/AndroidManifest.xml
similarity index 100%
rename from benchmark/macro/src/androidTest/AndroidManifest.xml
rename to benchmark/benchmark-macro/src/androidTest/AndroidManifest.xml
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/CompilationModeTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/CompilationModeTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/CompilationModeTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/CompilationModeTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/ConfigurableActivity.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/ConfigurableActivity.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/ConfigurableActivity.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/ConfigurableActivity.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/ConfigurationErrorTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/ConfigurationErrorTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/ConfigurationErrorTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/ConfigurationErrorTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/IdeSummaryStringTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/IdeSummaryStringTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/IdeSummaryStringTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/IdeSummaryStringTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkScopeTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkScopeTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkScopeTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkScopeTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/MacrobenchmarkTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/MetricResultExtensionsTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/MetricResultExtensionsTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/MetricResultExtensionsTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/MetricResultExtensionsTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/OutputsTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/OutputsTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/OutputsTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/OutputsTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/StartupTimingMetricTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/StartupTimingMetricTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/StartupTimingMetricTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/StartupTimingMetricTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/TrivialStartupActivity.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/TrivialStartupActivity.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/TrivialStartupActivity.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/TrivialStartupActivity.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoCaptureTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoCaptureTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoCaptureTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoCaptureTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessorTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessorTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessorTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessorTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/ShellUtilsTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/ShellUtilsTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/ShellUtilsTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/ShellUtilsTest.kt
diff --git a/benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/UiStateTest.kt b/benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/UiStateTest.kt
similarity index 100%
rename from benchmark/macro/src/androidTest/java/androidx/benchmark/macro/perfetto/UiStateTest.kt
rename to benchmark/benchmark-macro/src/androidTest/java/androidx/benchmark/macro/perfetto/UiStateTest.kt
diff --git a/benchmark/macro/src/main/AndroidManifest.xml b/benchmark/benchmark-macro/src/main/AndroidManifest.xml
similarity index 100%
rename from benchmark/macro/src/main/AndroidManifest.xml
rename to benchmark/benchmark-macro/src/main/AndroidManifest.xml
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/Api29.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Api29.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/Api29.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Api29.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/CompilationMode.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/CompilationMode.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/CompilationMode.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/CompilationMode.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/ConfigurationError.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/ConfigurationError.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/ConfigurationError.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/ConfigurationError.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/DeviceInfo.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/DeviceInfo.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/DeviceInfo.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/DeviceInfo.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/IdeSummaryString.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/IdeSummaryString.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/IdeSummaryString.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/IdeSummaryString.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/JankCollectionHelper.java b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/JankCollectionHelper.java
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/JankCollectionHelper.java
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/JankCollectionHelper.java
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/Macrobenchmark.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Macrobenchmark.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/Macrobenchmark.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Macrobenchmark.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/MacrobenchmarkScope.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/MacrobenchmarkScope.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/MacrobenchmarkScope.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/MacrobenchmarkScope.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/Metric.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Metric.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/Metric.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Metric.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/MetricResultExtensions.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/MetricResultExtensions.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/MetricResultExtensions.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/MetricResultExtensions.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/StartupMode.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/StartupMode.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/StartupMode.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/StartupMode.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/Tag.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Tag.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/Tag.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/Tag.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCapture.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCapture.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCapture.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCapture.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCaptureWrapper.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCaptureWrapper.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCaptureWrapper.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoCaptureWrapper.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoHelper.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoHelper.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoHelper.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoHelper.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoResultsParser.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoResultsParser.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoResultsParser.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoResultsParser.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessor.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessor.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessor.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/PerfettoTraceProcessor.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/ShellUtils.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/ShellUtils.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/ShellUtils.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/ShellUtils.kt
diff --git a/benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/UiState.kt b/benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/UiState.kt
similarity index 100%
rename from benchmark/macro/src/main/java/androidx/benchmark/macro/perfetto/UiState.kt
rename to benchmark/benchmark-macro/src/main/java/androidx/benchmark/macro/perfetto/UiState.kt
diff --git a/benchmark/macro/src/main/java/perfetto/protos/package-info.java b/benchmark/benchmark-macro/src/main/java/perfetto/protos/package-info.java
similarity index 100%
rename from benchmark/macro/src/main/java/perfetto/protos/package-info.java
rename to benchmark/benchmark-macro/src/main/java/perfetto/protos/package-info.java
diff --git a/benchmark/macro/src/main/proto/perfetto_trace.proto b/benchmark/benchmark-macro/src/main/proto/perfetto_trace.proto
similarity index 100%
rename from benchmark/macro/src/main/proto/perfetto_trace.proto
rename to benchmark/benchmark-macro/src/main/proto/perfetto_trace.proto
diff --git a/benchmark/macro/src/main/res/raw/trace_config.textproto b/benchmark/benchmark-macro/src/main/res/raw/trace_config.textproto
similarity index 100%
rename from benchmark/macro/src/main/res/raw/trace_config.textproto
rename to benchmark/benchmark-macro/src/main/res/raw/trace_config.textproto
diff --git a/benchmark/junit4/api/res-current.txt b/benchmark/junit4/api/res-current.txt
deleted file mode 100644
index e69de29..0000000
--- a/benchmark/junit4/api/res-current.txt
+++ /dev/null
diff --git a/buildSrc/src/main/kotlin/androidx/build/AndroidXComposePlugin.kt b/buildSrc/src/main/kotlin/androidx/build/AndroidXComposePlugin.kt
index 010aacd..0db20be 100644
--- a/buildSrc/src/main/kotlin/androidx/build/AndroidXComposePlugin.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/AndroidXComposePlugin.kt
@@ -142,10 +142,11 @@
         private fun Project.configureAndroidCommonOptions(testedExtension: TestedExtension) {
             testedExtension.defaultConfig.minSdk = 21
 
-            afterEvaluate { project ->
-                val isPublished = project.extensions.findByType(AndroidXExtension::class.java)
+            val finalizeDsl: () -> Unit = {
+                val isPublished = extensions.findByType(AndroidXExtension::class.java)
                     ?.type == LibraryType.PUBLISHED_LIBRARY
 
+                @Suppress("DEPRECATION") // lintOptions methods
                 testedExtension.lintOptions.apply {
                     // Too many Kotlin features require synthetic accessors - we want to rely on R8 to
                     // remove these accessors
@@ -198,6 +199,12 @@
                 }
             }
 
+            // TODO(aurimas): migrate away from this when upgrading to AGP 7.1.0-alpha03 or newer
+            @Suppress("UnstableApiUsage", "DEPRECATION")
+            extensions.findByType(
+                com.android.build.api.extension.AndroidComponentsExtension::class.java
+            )!!.finalizeDsl { finalizeDsl() }
+
             // TODO(148540713): remove this exclusion when Lint can support using multiple lint jars
             configurations.getByName("lintChecks").exclude(
                 mapOf("module" to "lint-checks")
diff --git a/buildSrc/src/main/kotlin/androidx/build/AndroidXPlaygroundRootPlugin.kt b/buildSrc/src/main/kotlin/androidx/build/AndroidXPlaygroundRootPlugin.kt
index c7269ae..6ba97fe 100644
--- a/buildSrc/src/main/kotlin/androidx/build/AndroidXPlaygroundRootPlugin.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/AndroidXPlaygroundRootPlugin.kt
@@ -91,6 +91,7 @@
                 is LibraryPlugin -> {
                     val libraryExtension = extensions.getByType<LibraryExtension>()
                     afterEvaluate {
+                        @Suppress("DEPRECATION") // lintOptions methods
                         libraryExtension.lintOptions.apply {
                             disable("InvalidFragmentVersionForActivityResult")
                         }
diff --git a/buildSrc/src/main/kotlin/androidx/build/AndroidXPlugin.kt b/buildSrc/src/main/kotlin/androidx/build/AndroidXPlugin.kt
index d72986e..d883d22 100644
--- a/buildSrc/src/main/kotlin/androidx/build/AndroidXPlugin.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/AndroidXPlugin.kt
@@ -45,6 +45,7 @@
 import com.android.build.gradle.TestExtension
 import com.android.build.gradle.TestPlugin
 import com.android.build.gradle.TestedExtension
+import com.android.build.gradle.internal.tasks.AnalyticsRecordingTask
 import org.gradle.api.GradleException
 import org.gradle.api.JavaVersion.VERSION_1_8
 import org.gradle.api.Plugin
@@ -512,6 +513,12 @@
         // lives alongside the project's buildDir.
         externalNativeBuild.cmake.buildStagingDirectory =
             File(project.buildDir, "../nativeBuildStaging")
+
+        // disable analytics recording
+        // It's always out-of-date, and we don't release any apps in this repo
+        project.tasks.withType(AnalyticsRecordingTask::class.java).configureEach { task ->
+            task.enabled = false
+        }
     }
 
     /**
@@ -578,6 +585,7 @@
             versionName = "1.0"
         }
 
+        @Suppress("DEPRECATION") // lintOptions methods
         lintOptions.apply {
             isAbortOnError = true
 
diff --git a/buildSrc/src/main/kotlin/androidx/build/LintConfiguration.kt b/buildSrc/src/main/kotlin/androidx/build/LintConfiguration.kt
index 38d1e22..24b3049 100644
--- a/buildSrc/src/main/kotlin/androidx/build/LintConfiguration.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/LintConfiguration.kt
@@ -118,6 +118,7 @@
     }
 }
 
+@Suppress("DEPRECATION") // lintOptions methods
 fun Project.configureLint(lintOptions: LintOptions, extension: AndroidXExtension) {
     project.dependencies.add(
         "lintChecks",
@@ -184,9 +185,6 @@
             // Broken in 7.0.0-alpha15 due to b/180408990
             disable("RestrictedApi")
 
-            // Broken in 7.0.0-alpha15 due to b/187343720
-            disable("UnusedResources")
-
             // Broken in 7.0.0-alpha15 due to b/187418637
             disable("EnforceSampledAnnotation")
 
@@ -223,6 +221,9 @@
                 disable("BanUncheckedReflection")
             }
 
+            // Broken in 7.0.0-alpha15 due to b/187343720
+            disable("UnusedResources")
+
             // Only run certain checks where API tracking is important.
             if (extension.type.checkApi is RunApiTasks.No) {
                 disable("IllegalExperimentalApiUsage")
diff --git a/buildSrc/src/main/kotlin/androidx/build/docs/AndroidXDocsPlugin.kt b/buildSrc/src/main/kotlin/androidx/build/docs/AndroidXDocsPlugin.kt
index b7cf31c..fb91af7 100644
--- a/buildSrc/src/main/kotlin/androidx/build/docs/AndroidXDocsPlugin.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/docs/AndroidXDocsPlugin.kt
@@ -619,6 +619,7 @@
     "androidx/recommendation/**",
     "androidx/recyclerview/**",
     "androidx/remotecallback/**",
+    "androidx/resourceinspection/**",
     "androidx/room/**",
     "androidx/savedstate/**",
     "androidx/security/**",
diff --git a/buildSrc/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt b/buildSrc/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt
index d166949..b039c25 100644
--- a/buildSrc/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/uptodatedness/TaskUpToDateValidator.kt
@@ -46,7 +46,6 @@
 // Entries in this set do still get rerun because they might produce files that are needed by
 // subsequent tasks
 val ALLOW_RERUNNING_TASKS = setOf(
-    "analyticsRecordingRelease",
     "buildOnServer",
     "checkExternalLicenses",
     "createArchive",
@@ -182,6 +181,8 @@
     "lintAnalyzeDebug",
     "lintDebug",
     "lintVitalRelease",
+    "lintWithExpandProjectionDebug",
+    "lintWithoutExpandProjectionDebug",
 )
 
 abstract class TaskUpToDateValidator :
diff --git a/camera/camera-video/src/main/java/androidx/camera/video/VideoRecordEvent.java b/camera/camera-video/src/main/java/androidx/camera/video/VideoRecordEvent.java
index 9c0cd22..da7724b 100644
--- a/camera/camera-video/src/main/java/androidx/camera/video/VideoRecordEvent.java
+++ b/camera/camera-video/src/main/java/androidx/camera/video/VideoRecordEvent.java
@@ -120,12 +120,12 @@
     }
 
     /**
-     * No error. The recording succeeds.
+     * The recording succeeded with no error.
      */
     public static final int ERROR_NONE = 0;
 
     /**
-     * Unknown error.
+     * An unknown error occurred.
      */
     public static final int ERROR_UNKNOWN = 1;
 
@@ -151,22 +151,34 @@
      * <p>One case is that camera has been closed due to lifecycle has stopped, so video
      * recording cannot be started.
      */
-    public static final int ERROR_CAMERA_CLOSED = 4;
+    // TODO(b/193575052): Make this public if/when it is used.
+    static final int ERROR_CAMERA_CLOSED = 4;
 
     /**
-     * The recording failed due to the output options are invalid.
+     * The recording failed due to invalid output options.
+     *
+     * <p>This error is generated when invalid output options have been used while preparing a
+     * recording, such as with the {@link Recorder#prepareRecording(MediaStoreOutputOptions)}
+     * method. The error will depend on the {@linkplain OutputOptions#getType() type} of options
+     * used, and more information about the error can be retrieved from {@link Finalize#getCause()}.
      */
     public static final int ERROR_INVALID_OUTPUT_OPTIONS = 5;
 
     /**
      * The recording failed while encoding.
+     *
+     * <p>This error may be generated when the video or audio codec encounters an error during
+     * encoding. See {@link Finalize#getCause()} for more information about the error encountered
+     * by the codec.
      */
     public static final int ERROR_ENCODING_FAILED = 6;
 
     /**
-     * The recording failed due to the recorder encountered errors.
+     * The recording failed because the {@link Recorder} is in an unrecoverable error state.
      *
-     * <p>Usually it can only be recovered by recreating a recorder and recordings with it.
+     * <p>More information about the error can be retrieved from {@link Finalize#getCause()}.
+     * Such an error will usually require creating a new {@link Recorder} object to start a
+     * new recording.
      */
     public static final int ERROR_RECORDER_ERROR = 7;
 
@@ -182,10 +194,11 @@
      *
      * @hide
      */
+    // TODO(b/193575052): Uncomment ERROR_CAMERA_CLOSED if/when it is used.
     @RestrictTo(RestrictTo.Scope.LIBRARY)
     @Retention(RetentionPolicy.SOURCE)
     @IntDef(value = {ERROR_NONE, ERROR_UNKNOWN, ERROR_FILE_SIZE_LIMIT_REACHED,
-            ERROR_INSUFFICIENT_DISK, ERROR_CAMERA_CLOSED, ERROR_INVALID_OUTPUT_OPTIONS,
+            ERROR_INSUFFICIENT_DISK, /*ERROR_CAMERA_CLOSED,*/ ERROR_INVALID_OUTPUT_OPTIONS,
             ERROR_ENCODING_FAILED, ERROR_RECORDER_ERROR, ERROR_RECORDER_UNINITIALIZED})
     public @interface VideoRecordError {
     }
@@ -334,10 +347,10 @@
          *
          * <p>Possible values are {@link #ERROR_NONE}, {@link #ERROR_UNKNOWN},
          * {@link #ERROR_FILE_SIZE_LIMIT_REACHED}, {@link #ERROR_INSUFFICIENT_DISK},
-         * {@link #ERROR_CAMERA_CLOSED}, {@link #ERROR_INVALID_OUTPUT_OPTIONS},
-         * {@link #ERROR_ENCODING_FAILED}, {@link #ERROR_RECORDER_ERROR} and
-         * {@link #ERROR_RECORDER_UNINITIALIZED}.
+         * {@link #ERROR_INVALID_OUTPUT_OPTIONS}, {@link #ERROR_ENCODING_FAILED},
+         * {@link #ERROR_RECORDER_ERROR} and {@link #ERROR_RECORDER_UNINITIALIZED}.
          */
+        // TODO(b/193575052): Add ERROR_CAMERA_CLOSED to the above list if/when it is used.
         @VideoRecordError
         public int getError() {
             return mError;
diff --git a/car/app/app-automotive/src/main/aidl/androidx/car/app/activity/renderer/ICarAppActivity.aidl b/car/app/app-automotive/src/main/aidl/androidx/car/app/activity/renderer/ICarAppActivity.aidl
index a4bbd28..5d65847 100644
--- a/car/app/app-automotive/src/main/aidl/androidx/car/app/activity/renderer/ICarAppActivity.aidl
+++ b/car/app/app-automotive/src/main/aidl/androidx/car/app/activity/renderer/ICarAppActivity.aidl
@@ -46,4 +46,7 @@
 
     /** Requests the activity to finish itself. */
     void finishCarApp() = 7;
+
+    /** Notifies that there has been a selection update for the currently active input. */
+    void onUpdateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd) = 8;
 }
diff --git a/car/app/app-automotive/src/main/java/androidx/car/app/activity/CarAppActivity.java b/car/app/app-automotive/src/main/java/androidx/car/app/activity/CarAppActivity.java
index 9d70074..a1c5f13 100644
--- a/car/app/app-automotive/src/main/java/androidx/car/app/activity/CarAppActivity.java
+++ b/car/app/app-automotive/src/main/java/androidx/car/app/activity/CarAppActivity.java
@@ -183,6 +183,14 @@
                     Log.d(LogTags.TAG, "finishCarApp");
                     finish();
                 }
+
+                @Override
+                public void onUpdateSelection(int oldSelStart, int oldSelEnd, int newSelStart,
+                        int newSelEnd) {
+                    Log.d(LogTags.TAG, "onUpdateSelection");
+                    ThreadUtils.runOnMain(() -> mSurfaceView.onUpdateSelection(oldSelStart,
+                            oldSelEnd, newSelStart, newSelEnd));
+                }
             };
 
     @Override
diff --git a/car/app/app-automotive/src/main/java/androidx/car/app/activity/renderer/surface/TemplateSurfaceView.java b/car/app/app-automotive/src/main/java/androidx/car/app/activity/renderer/surface/TemplateSurfaceView.java
index f7484f3..0258acc 100644
--- a/car/app/app-automotive/src/main/java/androidx/car/app/activity/renderer/surface/TemplateSurfaceView.java
+++ b/car/app/app-automotive/src/main/java/androidx/car/app/activity/renderer/surface/TemplateSurfaceView.java
@@ -218,6 +218,11 @@
         }
     }
 
+    /** Notifies that there has been a text selection update. */
+    public void onUpdateSelection(int oldSelStart, int oldSelEnd, int newSelStart, int newSelEnd) {
+        mInputMethodManager.updateSelection(this, oldSelStart, oldSelEnd, newSelStart, newSelEnd);
+    }
+
     @Override
     public boolean onCheckIsTextEditor() {
         return mIsInInputMode;
diff --git a/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/ContentProviderIconsDemoScreen.java b/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/ContentProviderIconsDemoScreen.java
index cf8061b..82c327c 100644
--- a/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/ContentProviderIconsDemoScreen.java
+++ b/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/ContentProviderIconsDemoScreen.java
@@ -21,7 +21,9 @@
 import android.net.Uri;
 
 import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
 import androidx.car.app.CarContext;
+import androidx.car.app.HostInfo;
 import androidx.car.app.Screen;
 import androidx.car.app.model.CarIcon;
 import androidx.car.app.model.ItemList;
@@ -33,6 +35,8 @@
 
 /** Creates a screen that demonstrate the image loading in the library using a content provider. */
 public final class ContentProviderIconsDemoScreen extends Screen {
+    @Nullable
+    private final String mHostPackageName;
 
     private static final int[] ICON_DRAWABLES = {
             R.drawable.arrow_right_turn, R.drawable.arrow_straight, R.drawable.ic_i5,
@@ -41,6 +45,9 @@
 
     public ContentProviderIconsDemoScreen(@NonNull CarContext carContext) {
         super(carContext);
+
+        HostInfo hostInfo = carContext.getHostInfo();
+        mHostPackageName = hostInfo == null ? null : hostInfo.getPackageName();
     }
 
     @NonNull
@@ -48,19 +55,27 @@
     public Template onGetTemplate() {
         ItemList.Builder listBuilder = new ItemList.Builder();
 
-        for (int i = 0; i < ICON_DRAWABLES.length; i++) {
-            int resId = ICON_DRAWABLES[i];
-            Uri uri = DelayedFileProvider.getUriForResource(getCarContext(), resId);
-            listBuilder.addItem(
-                    new Row.Builder()
-                            .setImage(
-                                    new CarIcon.Builder(
-                                            IconCompat.createWithContentUri(uri))
-                                            .build())
-                            .setTitle("Icon " + i)
-                            .build());
+        String hostPackageName = mHostPackageName;
+        if (hostPackageName == null) {
+            // Cannot get the host package name, show an error message.
+            listBuilder.setNoItemsMessage("Images cannot be displayed for an unknown host");
+        } else {
+            for (int i = 0; i < ICON_DRAWABLES.length; i++) {
+                int resId = ICON_DRAWABLES[i];
+                Uri uri = DelayedFileProvider.getUriForResource(getCarContext(), hostPackageName,
+                        resId);
+                listBuilder.addItem(
+                        new Row.Builder()
+                                .setImage(
+                                        new CarIcon.Builder(
+                                                IconCompat.createWithContentUri(uri))
+                                                .build())
+                                .setTitle("Icon " + i)
+                                .build());
+            }
         }
 
+
         return new ListTemplate.Builder()
                 .setSingleList(listBuilder.build())
                 .setTitle("Content Provider Icons Demo")
diff --git a/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/DelayedFileProvider.java b/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/DelayedFileProvider.java
index c953bb5..38f7673 100644
--- a/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/DelayedFileProvider.java
+++ b/car/app/app-samples/showcase/common/src/main/java/androidx/car/app/sample/showcase/common/textandicons/DelayedFileProvider.java
@@ -35,10 +35,6 @@
 
 /** A simple file provider that returns files after a random delay. */
 public class DelayedFileProvider extends FileProvider {
-    private static final String ANDROID_AUTO_PACKAGE_NAME =
-            "com.google.android.projection.gearhead";
-    private static final String AAOS_HOST_PACKAGE_NAME =
-            "com.google.android.apps.automotive.templates.host";
     private static final String FILE_PROVIDER_AUTHORITY = "com.showcase.fileprovider";
     private static final String RESOURCE_DIR = "res";
     private static final long MIN_DELAY_MILLIS = 1000;
@@ -46,7 +42,8 @@
 
     /** Creates a file from the given resource id and returns the URI for it. */
     @NonNull
-    public static Uri getUriForResource(@NonNull Context context, int resId) {
+    public static Uri getUriForResource(@NonNull Context context,
+            @NonNull String hostPackageName, int resId) {
         File resourceFile =
                 new File(context.getFilesDir().getAbsolutePath(), RESOURCE_DIR + "/" + resId);
         if (!resourceFile.exists()) {
@@ -63,9 +60,7 @@
 
         // FileProvider requires the app to grant temporary access to the car hosts for the file.
         // A URI from a content provider may not need to do this if its contents are public.
-        context.grantUriPermission(ANDROID_AUTO_PACKAGE_NAME, uri,
-                Intent.FLAG_GRANT_READ_URI_PERMISSION);
-        context.grantUriPermission(AAOS_HOST_PACKAGE_NAME, uri,
+        context.grantUriPermission(hostPackageName, uri,
                 Intent.FLAG_GRANT_READ_URI_PERMISSION);
 
         return uri;
diff --git a/car/app/app/api/current.txt b/car/app/app/api/current.txt
index c252929..1b1031a 100644
--- a/car/app/app/api/current.txt
+++ b/car/app/app/api/current.txt
@@ -45,6 +45,7 @@
     method public Object getCarService(String);
     method public <T extends androidx.car.app.managers.Manager> T getCarService(Class<T!>);
     method public String getCarServiceName(Class<? extends androidx.car.app.managers.Manager>);
+    method public androidx.car.app.HostInfo? getHostInfo();
     method public androidx.activity.OnBackPressedDispatcher getOnBackPressedDispatcher();
     method public boolean isDarkMode();
     method public void requestPermissions(java.util.List<java.lang.String!>, androidx.car.app.OnRequestPermissionsListener);
diff --git a/car/app/app/api/public_plus_experimental_current.txt b/car/app/app/api/public_plus_experimental_current.txt
index 8136625..d13d7cc 100644
--- a/car/app/app/api/public_plus_experimental_current.txt
+++ b/car/app/app/api/public_plus_experimental_current.txt
@@ -45,6 +45,7 @@
     method public Object getCarService(String);
     method public <T extends androidx.car.app.managers.Manager> T getCarService(Class<T!>);
     method public String getCarServiceName(Class<? extends androidx.car.app.managers.Manager>);
+    method public androidx.car.app.HostInfo? getHostInfo();
     method public androidx.activity.OnBackPressedDispatcher getOnBackPressedDispatcher();
     method public boolean isDarkMode();
     method public void requestPermissions(java.util.List<java.lang.String!>, androidx.car.app.OnRequestPermissionsListener);
diff --git a/car/app/app/api/restricted_current.txt b/car/app/app/api/restricted_current.txt
index c252929..1b1031a 100644
--- a/car/app/app/api/restricted_current.txt
+++ b/car/app/app/api/restricted_current.txt
@@ -45,6 +45,7 @@
     method public Object getCarService(String);
     method public <T extends androidx.car.app.managers.Manager> T getCarService(Class<T!>);
     method public String getCarServiceName(Class<? extends androidx.car.app.managers.Manager>);
+    method public androidx.car.app.HostInfo? getHostInfo();
     method public androidx.activity.OnBackPressedDispatcher getOnBackPressedDispatcher();
     method public boolean isDarkMode();
     method public void requestPermissions(java.util.List<java.lang.String!>, androidx.car.app.OnRequestPermissionsListener);
diff --git a/car/app/app/src/main/java/androidx/car/app/CarAppService.java b/car/app/app/src/main/java/androidx/car/app/CarAppService.java
index c54c35e..c69c254 100644
--- a/car/app/app/src/main/java/androidx/car/app/CarAppService.java
+++ b/car/app/app/src/main/java/androidx/car/app/CarAppService.java
@@ -365,7 +365,9 @@
                             setCurrentSession(session);
                         }
 
-                        session.configure(CarAppService.this, requireNonNull(getHandshakeInfo()),
+                        session.configure(CarAppService.this,
+                                requireNonNull(getHandshakeInfo()),
+                                requireNonNull(getHostInfo()),
                                 carHost, configuration);
 
                         // Whenever the host unbinds, the screens in the stack are destroyed.  If
diff --git a/car/app/app/src/main/java/androidx/car/app/CarContext.java b/car/app/app/src/main/java/androidx/car/app/CarContext.java
index 1107d0c..4f576d4 100644
--- a/car/app/app/src/main/java/androidx/car/app/CarContext.java
+++ b/car/app/app/src/main/java/androidx/car/app/CarContext.java
@@ -171,6 +171,9 @@
     @CarAppApiLevel
     private int mCarAppApiLevel = CarAppApiLevels.UNKNOWN;
 
+    @Nullable
+    private HostInfo mHostInfo = null;
+
     /** @hide */
     @NonNull
     @RestrictTo(LIBRARY)
@@ -481,6 +484,17 @@
     }
 
     /**
+     * Returns information about the host attached to this service.
+     *
+     * @return The {@link HostInfo} of the connected host, or {@code null} if it is not available.
+     * @see HostInfo
+     */
+    @Nullable
+    public HostInfo getHostInfo() {
+        return mHostInfo;
+    }
+
+    /**
      * Requests the provided {@code permissions} from the user, calling the provided {@code
      * listener} in the main thread.
      *
@@ -588,11 +602,22 @@
      */
     @RestrictTo(LIBRARY)
     @MainThread
-    void updateHandshakeInfo(HandshakeInfo handshakeInfo) {
+    void updateHandshakeInfo(@NonNull HandshakeInfo handshakeInfo) {
         mCarAppApiLevel = handshakeInfo.getHostCarAppApiLevel();
     }
 
     /**
+     * Updates host information based on the information provided during connection handshake
+     *
+     * @hide
+     */
+    @RestrictTo(LIBRARY)
+    @MainThread
+    void updateHostInfo(@NonNull HostInfo hostInfo) {
+        mHostInfo = hostInfo;
+    }
+
+    /**
      * Attaches the base {@link Context} for this {@link CarContext} by creating a new display
      * context using {@link #createDisplayContext} with a {@link VirtualDisplay} created using
      * the metrics from the provided {@link Configuration}, and then also calling {@link
diff --git a/car/app/app/src/main/java/androidx/car/app/Session.java b/car/app/app/src/main/java/androidx/car/app/Session.java
index 0138f4d..de5960f 100644
--- a/car/app/app/src/main/java/androidx/car/app/Session.java
+++ b/car/app/app/src/main/java/androidx/car/app/Session.java
@@ -193,10 +193,13 @@
      * <p>This should be invoked during onAppCreate to initialize the {@link Session} and its
      * underlying {@link Context} properly.
      */
-    void configure(@NonNull Context baseContext, @NonNull HandshakeInfo handshakeInfo,
+    void configure(@NonNull Context baseContext,
+            @NonNull HandshakeInfo handshakeInfo,
+            @NonNull HostInfo hostInfo,
             @NonNull ICarHost carHost,
             @NonNull Configuration configuration) {
         mCarContext.updateHandshakeInfo(handshakeInfo);
+        mCarContext.updateHostInfo(hostInfo);
         mCarContext.attachBaseContext(baseContext, configuration);
         mCarContext.setCarHost(carHost);
     }
diff --git a/car/app/app/src/test/java/androidx/car/app/CarAppServiceTest.java b/car/app/app/src/test/java/androidx/car/app/CarAppServiceTest.java
index faf1163..3a28d9e 100644
--- a/car/app/app/src/test/java/androidx/car/app/CarAppServiceTest.java
+++ b/car/app/app/src/test/java/androidx/car/app/CarAppServiceTest.java
@@ -113,10 +113,12 @@
                 "blah");
         mCarAppService.setAppInfo(appInfo);
 
-        // Sets a default handshake info. OnAppCreate depends on this being non-null.
+        // Sets default handshake and host info. OnAppCreate depends on these being non-null.
         String hostPackageName = "com.google.projection.gearhead";
         HandshakeInfo handshakeInfo = new HandshakeInfo(hostPackageName,
                 CarAppApiLevels.getLatest());
+        HostInfo hostInfo = new HostInfo(hostPackageName, 1);
+        mCarAppService.setHostInfo(hostInfo);
         mCarAppService.setHandshakeInfo(handshakeInfo);
     }
 
@@ -159,6 +161,21 @@
     }
 
     @Test
+    public void onAppCreate_updatesContextHostInfo()
+            throws RemoteException, BundlerException, InterruptedException {
+        String hostPackageName = "com.google.projection.gearhead";
+        ICarApp carApp = (ICarApp) mCarAppService.onBind(null);
+        HandshakeInfo handshakeInfo = new HandshakeInfo(hostPackageName, CarAppApiLevels.LEVEL_1);
+
+        mCarAppService.setCurrentSession(null);
+        carApp.onHandshakeCompleted(Bundleable.create(handshakeInfo), mMockOnDoneCallback);
+        carApp.onAppCreate(mMockCarHost, null, new Configuration(), mMockOnDoneCallback);
+
+        assertThat(mCarAppService.getCurrentSession()
+                .getCarContext().getHostInfo().getPackageName()).isEqualTo(hostPackageName);
+    }
+
+    @Test
     public void onAppCreate_createsFirstScreen() throws RemoteException {
         ICarApp carApp = (ICarApp) mCarAppService.onBind(null);
         carApp.onAppCreate(mMockCarHost, null, new Configuration(), mMockOnDoneCallback);
@@ -304,6 +321,7 @@
         HandshakeInfo handshakeInfo = new HandshakeInfo(hostPackageName, CarAppApiLevels.LEVEL_1);
 
         carApp.onHandshakeCompleted(Bundleable.create(handshakeInfo), mMockOnDoneCallback);
+        carApp.onAppCreate(mMockCarHost, null, new Configuration(), mMockOnDoneCallback);
 
         assertThat(mCarAppService.getHostInfo().getPackageName()).isEqualTo(hostPackageName);
     }
diff --git a/core/core-ktx/src/main/java/androidx/core/graphics/drawable/Drawable.kt b/core/core-ktx/src/main/java/androidx/core/graphics/drawable/Drawable.kt
index bb9a42b..be4a115 100644
--- a/core/core-ktx/src/main/java/androidx/core/graphics/drawable/Drawable.kt
+++ b/core/core-ktx/src/main/java/androidx/core/graphics/drawable/Drawable.kt
@@ -48,7 +48,7 @@
         if (config == null || bitmap.config == config) {
             // Fast-path to return original. Bitmap.createScaledBitmap will do this check, but it
             // involves allocation and two jumps into native code so we perform the check ourselves.
-            if (width == intrinsicWidth && height == intrinsicHeight) {
+            if (width == bitmap.width && height == bitmap.height) {
                 return bitmap
             }
             return Bitmap.createScaledBitmap(bitmap, width, height, true)
diff --git a/docs-tip-of-tree/build.gradle b/docs-tip-of-tree/build.gradle
index 1f398f4..2baef92 100644
--- a/docs-tip-of-tree/build.gradle
+++ b/docs-tip-of-tree/build.gradle
@@ -205,6 +205,7 @@
     docs(project(":recyclerview:recyclerview"))
     docs(project(":recyclerview:recyclerview-selection"))
     docs(project(":remotecallback:remotecallback"))
+    docs(project(":resourceinspection:resourceinspection-annotation"))
     docs(project(":room:room-common"))
     docs(project(":room:room-guava"))
     docs(project(":room:room-ktx"))
diff --git a/fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.java b/fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.java
index 20cf2c6..5633c21 100644
--- a/fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.java
+++ b/fragment/fragment/src/main/java/androidx/fragment/app/DefaultSpecialEffectsController.java
@@ -563,9 +563,11 @@
                         awaitingContainerChanges.remove(operation);
                         // Then schedule the actual hide of the fragment's view,
                         // essentially doing what applyState() would do for us
+                        ArrayList<View> transitioningViewsToHide =
+                                new ArrayList<>(transitioningViews);
+                        transitioningViewsToHide.remove(operation.getFragment().mView);
                         transitionImpl.scheduleHideFragmentView(transition,
-                                operation.getFragment().mView,
-                                transitioningViews);
+                                operation.getFragment().mView, transitioningViewsToHide);
                         // This OneShotPreDrawListener gets fired before the delayed start of
                         // the Transition and changes the visibility of any exiting child views
                         // that *ARE NOT* shared element transitions. The TransitionManager then
diff --git a/hilt/hilt-navigation-compose/build.gradle b/hilt/hilt-navigation-compose/build.gradle
index 9d2163b..f3466f2 100644
--- a/hilt/hilt-navigation-compose/build.gradle
+++ b/hilt/hilt-navigation-compose/build.gradle
@@ -35,12 +35,12 @@
 }
 
 dependencies {
-    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc01"
+    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc02"
 
     implementation(libs.kotlinStdlib)
     api("androidx.hilt:hilt-navigation:1.0.0")
-    api("androidx.compose.runtime:runtime:1.0.0-rc01")
-    api("androidx.compose.ui:ui:1.0.0-rc01")
+    api("androidx.compose.runtime:runtime:1.0.0-rc02")
+    api("androidx.compose.ui:ui:1.0.0-rc02")
     api("androidx.lifecycle:lifecycle-viewmodel-compose:1.0.0-alpha07")
     api(projectOrArtifact(":navigation:navigation-compose"))
 
diff --git a/hilt/hilt-navigation-compose/samples/build.gradle b/hilt/hilt-navigation-compose/samples/build.gradle
index a048a87..71b0238 100644
--- a/hilt/hilt-navigation-compose/samples/build.gradle
+++ b/hilt/hilt-navigation-compose/samples/build.gradle
@@ -27,7 +27,7 @@
 }
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
     implementation(libs.kotlinStdlib)
 
     compileOnly(projectOrArtifact(":annotation:annotation-sampled"))
diff --git a/lifecycle/lifecycle-viewmodel-compose/build.gradle b/lifecycle/lifecycle-viewmodel-compose/build.gradle
index 3884556..711d186 100644
--- a/lifecycle/lifecycle-viewmodel-compose/build.gradle
+++ b/lifecycle/lifecycle-viewmodel-compose/build.gradle
@@ -27,11 +27,11 @@
 }
 
 dependencies {
-    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc01"
+    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc02"
 
     api "androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.0"
-    api "androidx.compose.runtime:runtime:1.0.0-rc01"
-    api "androidx.compose.ui:ui:1.0.0-rc01"
+    api "androidx.compose.runtime:runtime:1.0.0-rc02"
+    api "androidx.compose.ui:ui:1.0.0-rc02"
 
     implementation(libs.kotlinStdlib)
 
diff --git a/lifecycle/lifecycle-viewmodel-compose/samples/build.gradle b/lifecycle/lifecycle-viewmodel-compose/samples/build.gradle
index 21b9220..1b620ea 100644
--- a/lifecycle/lifecycle-viewmodel-compose/samples/build.gradle
+++ b/lifecycle/lifecycle-viewmodel-compose/samples/build.gradle
@@ -26,7 +26,7 @@
 }
 
 dependencies {
-    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc01"
+    kotlinPlugin "androidx.compose.compiler:compiler:1.0.0-rc02"
     implementation(libs.kotlinStdlib)
     implementation projectOrArtifact(":lifecycle:lifecycle-viewmodel-compose")
 }
diff --git a/media2/media2-widget/src/androidTest/java/androidx/media2/widget/MediaControlView_WithPlayerTest.java b/media2/media2-widget/src/androidTest/java/androidx/media2/widget/MediaControlView_WithPlayerTest.java
index c3d0127..a26e9fd 100644
--- a/media2/media2-widget/src/androidTest/java/androidx/media2/widget/MediaControlView_WithPlayerTest.java
+++ b/media2/media2-widget/src/androidTest/java/androidx/media2/widget/MediaControlView_WithPlayerTest.java
@@ -44,6 +44,7 @@
 import androidx.media2.common.SessionPlayer;
 import androidx.media2.common.SessionPlayer.TrackInfo;
 import androidx.media2.session.MediaController;
+import androidx.test.filters.FlakyTest;
 import androidx.test.filters.LargeTest;
 
 import org.junit.After;
@@ -327,6 +328,7 @@
         onView(allOf(withId(R.id.next), isCompletelyDisplayed())).check(matches(isEnabled()));
     }
 
+    @FlakyTest(bugId = 179623359)
     @Test
     public void setMetadataForNonMusicFile() throws Throwable {
         final String title = "BigBuckBunny";
diff --git a/navigation/navigation-compose/build.gradle b/navigation/navigation-compose/build.gradle
index 2a687f8..7b68615 100644
--- a/navigation/navigation-compose/build.gradle
+++ b/navigation/navigation-compose/build.gradle
@@ -26,15 +26,15 @@
 }
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
 
     implementation(libs.kotlinStdlib)
-    implementation("androidx.compose.foundation:foundation-layout:1.0.0-rc01")
-    api("androidx.activity:activity-compose:1.3.0-rc01")
-    api("androidx.compose.animation:animation:1.0.0-rc01")
-    api("androidx.compose.runtime:runtime:1.0.0-rc01")
-    api("androidx.compose.runtime:runtime-saveable:1.0.0-rc01")
-    api("androidx.compose.ui:ui:1.0.0-rc01")
+    implementation("androidx.compose.foundation:foundation-layout:1.0.0-rc02")
+    api("androidx.activity:activity-compose:1.3.0-rc02")
+    api("androidx.compose.animation:animation:1.0.0-rc02")
+    api("androidx.compose.runtime:runtime:1.0.0-rc02")
+    api("androidx.compose.runtime:runtime-saveable:1.0.0-rc02")
+    api("androidx.compose.ui:ui:1.0.0-rc02")
     api("androidx.lifecycle:lifecycle-viewmodel-compose:1.0.0-alpha07")
     api(projectOrArtifact(":navigation:navigation-runtime-ktx"))
 
diff --git a/navigation/navigation-compose/samples/build.gradle b/navigation/navigation-compose/samples/build.gradle
index 7c4732c..b2c1ca6 100644
--- a/navigation/navigation-compose/samples/build.gradle
+++ b/navigation/navigation-compose/samples/build.gradle
@@ -25,13 +25,13 @@
 }
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
     implementation(libs.kotlinStdlib)
 
     compileOnly(projectOrArtifact(":annotation:annotation-sampled"))
-    implementation("androidx.compose.foundation:foundation:1.0.0-rc01")
+    implementation("androidx.compose.foundation:foundation:1.0.0-rc02")
     implementation(projectOrArtifact(":navigation:navigation-compose"))
-    implementation("androidx.compose.material:material:1.0.0-rc01")
+    implementation("androidx.compose.material:material:1.0.0-rc02")
 }
 
 androidx {
diff --git a/paging/paging-compose/build.gradle b/paging/paging-compose/build.gradle
index 7f8f452..9c8ab08 100644
--- a/paging/paging-compose/build.gradle
+++ b/paging/paging-compose/build.gradle
@@ -28,10 +28,10 @@
 }
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
 
     implementation(libs.kotlinStdlib)
-    api("androidx.compose.foundation:foundation:1.0.0-rc01")
+    api("androidx.compose.foundation:foundation:1.0.0-rc02")
     api("androidx.paging:paging-common:3.0.0")
 
     androidTestImplementation(projectOrArtifact(":compose:ui:ui-test-junit4"))
diff --git a/paging/paging-compose/samples/build.gradle b/paging/paging-compose/samples/build.gradle
index 842b182..83fcaf5 100644
--- a/paging/paging-compose/samples/build.gradle
+++ b/paging/paging-compose/samples/build.gradle
@@ -26,12 +26,12 @@
 }
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
     implementation(libs.kotlinStdlib)
 
     compileOnly(projectOrArtifact(":annotation:annotation-sampled"))
-    implementation("androidx.compose.foundation:foundation:1.0.0-rc01")
-    implementation("androidx.compose.material:material:1.0.0-rc01")
+    implementation("androidx.compose.foundation:foundation:1.0.0-rc02")
+    implementation("androidx.compose.material:material:1.0.0-rc02")
     implementation(projectOrArtifact(":paging:paging-compose"))
 }
 
diff --git a/playground-common/playground.properties b/playground-common/playground.properties
index 0e24733..1ef9184 100644
--- a/playground-common/playground.properties
+++ b/playground-common/playground.properties
@@ -26,7 +26,7 @@
 kotlin.code.style=official
 # Disable docs
 androidx.enableDocumentation=false
-androidx.playground.snapshotBuildId=7500872
+androidx.playground.snapshotBuildId=7549684
 androidx.playground.metalavaBuildId=7481334
 androidx.playground.dokkaBuildId=7472101
 androidx.studio.type=playground
diff --git a/room/integration-tests/kotlintestapp/build.gradle b/room/integration-tests/kotlintestapp/build.gradle
index 18bd746..6ef3c81 100644
--- a/room/integration-tests/kotlintestapp/build.gradle
+++ b/room/integration-tests/kotlintestapp/build.gradle
@@ -57,32 +57,31 @@
         androidTest.assets.srcDirs += files("$projectDir/schemas".toString())
     }
 
-// TODO re-enable flavors when b/153917176 is fixed
-//    flavorDimensions "processorConfiguration"
-//    productFlavors {
-//        withExpandProjection {
-//            dimension "processorConfiguration"
-//            javaCompileOptions {
-//                annotationProcessorOptions {
-//                    arguments = [
-//                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
-//                            "room.expandProjection"  : "true"
-//                    ]
-//                }
-//            }
-//        }
-//        withoutExpandProjection {
-//            dimension "processorConfiguration"
-//            javaCompileOptions {
-//                annotationProcessorOptions {
-//                    arguments = [
-//                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
-//                            "room.expandProjection"  : "false"
-//                    ]
-//                }
-//            }
-//        }
-//    }
+    flavorDimensions "processorConfiguration"
+    productFlavors {
+        withExpandProjection {
+            dimension "processorConfiguration"
+            javaCompileOptions {
+                annotationProcessorOptions {
+                    arguments = [
+                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
+                            "room.expandProjection"  : "true"
+                    ]
+                }
+            }
+        }
+        withoutExpandProjection {
+            dimension "processorConfiguration"
+            javaCompileOptions {
+                annotationProcessorOptions {
+                    arguments = [
+                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
+                            "room.expandProjection"  : "false"
+                    ]
+                }
+            }
+        }
+    }
 }
 
 dependencies {
diff --git a/room/integration-tests/testapp/build.gradle b/room/integration-tests/testapp/build.gradle
index 0733b6d..b68217d 100644
--- a/room/integration-tests/testapp/build.gradle
+++ b/room/integration-tests/testapp/build.gradle
@@ -44,32 +44,31 @@
         androidTest.assets.srcDirs += files("$projectDir/schemas".toString())
         androidTest.assets.srcDirs += files("$projectDir/databases".toString())
     }
-// TODO re-enable flavors when b/153917176 is fixed
-//    flavorDimensions "processorConfiguration"
-//    productFlavors {
-//        withExpandProjection {
-//            dimension "processorConfiguration"
-//            javaCompileOptions {
-//                annotationProcessorOptions {
-//                    arguments = [
-//                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
-//                            "room.expandProjection"  : "true"
-//                    ]
-//                }
-//            }
-//        }
-//        withoutExpandProjection {
-//            dimension "processorConfiguration"
-//            javaCompileOptions {
-//                annotationProcessorOptions {
-//                    arguments = [
-//                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
-//                            "room.expandProjection"  : "false"
-//                    ]
-//                }
-//            }
-//        }
-//    }
+    flavorDimensions "processorConfiguration"
+    productFlavors {
+        withExpandProjection {
+            dimension "processorConfiguration"
+            javaCompileOptions {
+                annotationProcessorOptions {
+                    arguments = [
+                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
+                            "room.expandProjection"  : "true"
+                    ]
+                }
+            }
+        }
+        withoutExpandProjection {
+            dimension "processorConfiguration"
+            javaCompileOptions {
+                annotationProcessorOptions {
+                    arguments = [
+                            "room.schemaLocation"  : "$projectDir/schemas".toString(),
+                            "room.expandProjection"  : "false"
+                    ]
+                }
+            }
+        }
+    }
 }
 
 dependencies {
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/XExecutableParameterElement.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/XExecutableParameterElement.kt
index 8e7ed20..1303624 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/XExecutableParameterElement.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/XExecutableParameterElement.kt
@@ -19,4 +19,13 @@
 /**
  * Parameter of a method.
  */
-interface XExecutableParameterElement : XVariableElement
+interface XExecutableParameterElement : XVariableElement {
+    /**
+     * `true` if the parameter has a default value, `false` otherwise.
+     *
+     * Note that when @JvmOverloads is used in a kotlin function with KAPT, only the original
+     * function's parameter might have a default value. For the generated overload methods, this
+     * will always return `false`.
+     */
+    val hasDefaultValue: Boolean
+}
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacExecutableElement.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacExecutableElement.kt
index ffca24b..100182f 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacExecutableElement.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacExecutableElement.kt
@@ -39,7 +39,7 @@
         element.descriptor()
     }
 
-    override val parameters: List<JavacVariableElement> by lazy {
+    override val parameters: List<JavacMethodParameter> by lazy {
         element.parameters.mapIndexed { index, variable ->
             JavacMethodParameter(
                 env = env,
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacMethodParameter.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacMethodParameter.kt
index 71cb24c..0b03ca4 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacMethodParameter.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacMethodParameter.kt
@@ -16,6 +16,7 @@
 
 package androidx.room.compiler.processing.javac
 
+import androidx.room.compiler.processing.XExecutableParameterElement
 import androidx.room.compiler.processing.javac.kotlin.KmType
 import androidx.room.compiler.processing.javac.kotlin.KmValueParameter
 import androidx.room.compiler.processing.util.sanitizeAsJavaParameterName
@@ -28,13 +29,19 @@
     element: VariableElement,
     val kotlinMetadata: KmValueParameter?,
     val argIndex: Int
-) : JavacVariableElement(env, containing, element) {
+) : JavacVariableElement(env, containing, element), XExecutableParameterElement {
+
     override val name: String
         get() = (kotlinMetadata?.name ?: super.name).sanitizeAsJavaParameterName(
             argIndex = argIndex
         )
+
     override val kotlinType: KmType?
         get() = kotlinMetadata?.type
+
+    override val hasDefaultValue: Boolean
+        get() = kotlinMetadata?.hasDefault() ?: false
+
     override val fallbackLocationText: String
         get() = if (executable is JavacMethodElement && executable.isSuspendFunction() &&
             this === executable.parameters.last()
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacVariableElement.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacVariableElement.kt
index 69c9342..e999b14 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacVariableElement.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/JavacVariableElement.kt
@@ -16,8 +16,8 @@
 
 package androidx.room.compiler.processing.javac
 
-import androidx.room.compiler.processing.XExecutableParameterElement
 import androidx.room.compiler.processing.XType
+import androidx.room.compiler.processing.XVariableElement
 import androidx.room.compiler.processing.javac.kotlin.KmType
 import com.google.auto.common.MoreTypes
 import javax.lang.model.element.VariableElement
@@ -26,7 +26,7 @@
     env: JavacProcessingEnv,
     val containing: JavacTypeElement,
     override val element: VariableElement
-) : JavacElement(env, element), XExecutableParameterElement {
+) : JavacElement(env, element), XVariableElement {
 
     abstract val kotlinType: KmType?
 
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/kotlin/KotlinClassMetadataUtils.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/kotlin/KotlinClassMetadataUtils.kt
index d5cccc5..30f0cac 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/kotlin/KotlinClassMetadataUtils.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/javac/kotlin/KotlinClassMetadataUtils.kt
@@ -99,9 +99,11 @@
  */
 internal data class KmValueParameter(
     val name: String,
-    val type: KmType
+    val type: KmType,
+    private val flags: Int
 ) {
     fun isNullable() = type.isNullable()
+    fun hasDefault() = Flag.ValueParameter.DECLARES_DEFAULT_VALUE(flags)
 }
 
 internal data class KmClassTypeInfo(
@@ -113,7 +115,7 @@
     mutableListOf<KmFunction>().apply { accept(FunctionReader(this)) }
 
 private class FunctionReader(val result: MutableList<KmFunction>) : KmClassVisitor() {
-    override fun visitFunction(flags: Flags, name: String): KmFunctionVisitor? {
+    override fun visitFunction(flags: Flags, name: String): KmFunctionVisitor {
         return object : KmFunctionVisitor() {
 
             lateinit var descriptor: String
@@ -123,13 +125,13 @@
             override fun visitValueParameter(
                 flags: Flags,
                 name: String
-            ): KmValueParameterVisitor? {
-                return ValueParameterReader(name) {
+            ): KmValueParameterVisitor {
+                return ValueParameterReader(name, flags) {
                     parameters.add(it)
                 }
             }
 
-            override fun visitExtensions(type: KmExtensionType): KmFunctionExtensionVisitor? {
+            override fun visitExtensions(type: KmExtensionType): KmFunctionExtensionVisitor {
                 if (type != JvmFunctionExtensionVisitor.TYPE) {
                     error("Unsupported extension type: $type")
                 }
@@ -140,7 +142,7 @@
                 }
             }
 
-            override fun visitReturnType(flags: Flags): KmTypeVisitor? {
+            override fun visitReturnType(flags: Flags): KmTypeVisitor {
                 return TypeReader(flags) {
                     returnType = it
                 }
@@ -157,7 +159,7 @@
     mutableListOf<KmConstructor>().apply { accept(ConstructorReader(this)) }
 
 private class ConstructorReader(val result: MutableList<KmConstructor>) : KmClassVisitor() {
-    override fun visitConstructor(flags: Flags): KmConstructorVisitor? {
+    override fun visitConstructor(flags: Flags): KmConstructorVisitor {
         return object : KmConstructorVisitor() {
 
             lateinit var descriptor: String
@@ -166,13 +168,13 @@
             override fun visitValueParameter(
                 flags: Flags,
                 name: String
-            ): KmValueParameterVisitor? {
-                return ValueParameterReader(name) {
+            ): KmValueParameterVisitor {
+                return ValueParameterReader(name, flags) {
                     parameters.add(it)
                 }
             }
 
-            override fun visitExtensions(type: KmExtensionType): KmConstructorExtensionVisitor? {
+            override fun visitExtensions(type: KmExtensionType): KmConstructorExtensionVisitor {
                 if (type != JvmConstructorExtensionVisitor.TYPE) {
                     error("Unsupported extension type: $type")
                 }
@@ -236,7 +238,7 @@
         name: String,
         getterFlags: Flags,
         setterFlags: Flags
-    ): KmPropertyVisitor? {
+    ): KmPropertyVisitor {
         return object : KmPropertyVisitor() {
             lateinit var returnType: KmType
             override fun visitEnd() {
@@ -248,7 +250,7 @@
                 )
             }
 
-            override fun visitReturnType(flags: Flags): KmTypeVisitor? {
+            override fun visitReturnType(flags: Flags): KmTypeVisitor {
                 return TypeReader(flags) {
                     returnType = it
                 }
@@ -266,7 +268,7 @@
 ) : KmTypeVisitor() {
     private val typeArguments = mutableListOf<KmType>()
     private var extendsBound: KmType? = null
-    override fun visitArgument(flags: Flags, variance: KmVariance): KmTypeVisitor? {
+    override fun visitArgument(flags: Flags, variance: KmVariance): KmTypeVisitor {
         return TypeReader(flags) {
             typeArguments.add(it)
         }
@@ -275,7 +277,7 @@
     override fun visitFlexibleTypeUpperBound(
         flags: Flags,
         typeFlexibilityId: String?
-    ): KmTypeVisitor? {
+    ): KmTypeVisitor {
         return TypeReader(flags) {
             extendsBound = it
         }
@@ -297,10 +299,11 @@
  */
 private class ValueParameterReader(
     val name: String,
+    val flags: Flags,
     val output: (KmValueParameter) -> Unit
 ) : KmValueParameterVisitor() {
     lateinit var type: KmType
-    override fun visitType(flags: Flags): KmTypeVisitor? {
+    override fun visitType(flags: Flags): KmTypeVisitor {
         return TypeReader(flags) {
             type = it
         }
@@ -310,7 +313,8 @@
         output(
             KmValueParameter(
                 name = name,
-                type = type
+                type = type,
+                flags = flags
             )
         )
     }
@@ -334,13 +338,13 @@
         name: String,
         id: Int,
         variance: KmVariance
-    ): KmTypeParameterVisitor? {
+    ): KmTypeParameterVisitor {
         return TypeParameterReader(name, flags) {
             typeParameters.add(it)
         }
     }
 
-    override fun visitSupertype(flags: Flags): KmTypeVisitor? {
+    override fun visitSupertype(flags: Flags): KmTypeVisitor {
         return TypeReader(flags) {
             superType = it
         }
@@ -378,7 +382,7 @@
         )
     }
 
-    override fun visitUpperBound(flags: Flags): KmTypeVisitor? {
+    override fun visitUpperBound(flags: Flags): KmTypeVisitor {
         return TypeReader(flags) {
             upperBound = it
         }
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/KspExecutableParameterElement.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/KspExecutableParameterElement.kt
index 496364a..168d33a 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/KspExecutableParameterElement.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/KspExecutableParameterElement.kt
@@ -36,6 +36,9 @@
     override val name: String
         get() = parameter.name?.asString() ?: "_no_param_name"
 
+    override val hasDefaultValue: Boolean
+        get() = parameter.hasDefault
+
     override val type: KspType by lazy {
         parameter.typeAsMemberOf(
             functionDeclaration = method.declaration,
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticContinuationParameterElement.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticContinuationParameterElement.kt
index a32e70f..2e12e3b 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticContinuationParameterElement.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticContinuationParameterElement.kt
@@ -61,6 +61,9 @@
         arrayOf("continuation", containing)
     }
 
+    override val hasDefaultValue: Boolean
+        get() = false
+
     override val type: XType by lazy {
         val continuation = env.resolver.requireContinuationClass()
         val contType = continuation.asType(
diff --git a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticPropertyMethodElement.kt b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticPropertyMethodElement.kt
index d01cec9..ca2508b 100644
--- a/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticPropertyMethodElement.kt
+++ b/room/room-compiler-processing/src/main/java/androidx/room/compiler/processing/ksp/synthetic/KspSyntheticPropertyMethodElement.kt
@@ -210,6 +210,9 @@
             override val fallbackLocationText: String
                 get() = "$name in ${origin.fallbackLocationText}"
 
+            override val hasDefaultValue: Boolean
+                get() = false
+
             override fun asMemberOf(other: XType): XType {
                 return origin.field.asMemberOf(other)
             }
diff --git a/room/room-compiler-processing/src/test/java/androidx/room/compiler/processing/XExecutableElementTest.kt b/room/room-compiler-processing/src/test/java/androidx/room/compiler/processing/XExecutableElementTest.kt
index 78e2a11..9f9a1df 100644
--- a/room/room-compiler-processing/src/test/java/androidx/room/compiler/processing/XExecutableElementTest.kt
+++ b/room/room-compiler-processing/src/test/java/androidx/room/compiler/processing/XExecutableElementTest.kt
@@ -610,6 +610,97 @@
     }
 
     @Test
+    fun defaultMethodParameters() {
+        fun buildSource(pkg: String) = Source.kotlin(
+            "Foo.kt",
+            """
+            package $pkg
+            class Subject {
+                var prop:Int = 1
+                fun method1(arg:Int = 0, arg2:Int) {}
+                fun method2(arg:Int, arg2:Int = 0) {}
+                fun varargMethod1(x:Int = 3, vararg y:Int) {}
+                fun varargMethod2(x:Int, vararg y:Int = intArrayOf(1,2,3)) {}
+                suspend fun suspendMethod() {}
+                @JvmOverloads
+                fun jvmOverloadsMethod(
+                    x:Int,
+                    y:Int = 1,
+                    z:String = "foo"
+                ) {}
+            }
+            """.trimIndent()
+        )
+
+        fun XExecutableElement.defaults() = parameters.map { it.hasDefaultValue }
+        runProcessorTest(
+            sources = listOf(buildSource(pkg = "app")),
+            classpath = compileFiles(listOf(buildSource(pkg = "lib")))
+        ) { invocation ->
+            listOf("app", "lib").map {
+                invocation.processingEnv.requireTypeElement("$it.Subject")
+            }.forEach { subject ->
+                subject.getMethod("method1").let { method ->
+                    assertWithMessage(method.fallbackLocationText)
+                        .that(method.defaults()).containsExactly(true, false).inOrder()
+                }
+                subject.getMethod("method2").let { method ->
+                    assertWithMessage(method.fallbackLocationText)
+                        .that(method.defaults()).containsExactly(false, true).inOrder()
+                }
+                subject.getMethod("varargMethod1").let { method ->
+                    assertWithMessage(method.fallbackLocationText)
+                        .that(method.defaults()).containsExactly(true, false).inOrder()
+                }
+                subject.getMethod("varargMethod2").let { method ->
+                    assertWithMessage(method.fallbackLocationText)
+                        .that(method.defaults()).containsExactly(false, true).inOrder()
+                }
+                subject.getMethod("suspendMethod").let { method ->
+                    assertWithMessage(method.fallbackLocationText)
+                        .that(method.defaults()).containsExactly(false)
+                }
+                subject.getMethod("setProp").let { method ->
+                    assertWithMessage(method.fallbackLocationText)
+                        .that(method.defaults()).containsExactly(false)
+                }
+                val jvmOverloadedMethodCount = subject.getDeclaredMethods().count {
+                    it.name == "jvmOverloadsMethod"
+                }
+                if (invocation.isKsp) {
+                    assertWithMessage(subject.fallbackLocationText)
+                        .that(jvmOverloadedMethodCount).isEqualTo(1)
+                    subject.getMethod("jvmOverloadsMethod").let { method ->
+                        assertWithMessage(method.fallbackLocationText)
+                            .that(method.defaults())
+                            .containsExactly(false, true, true).inOrder()
+                    }
+                } else {
+                    assertWithMessage(subject.fallbackLocationText)
+                        .that(jvmOverloadedMethodCount).isEqualTo(3)
+                    val actuals = subject.getDeclaredMethods().filter {
+                        it.name == "jvmOverloadsMethod"
+                    }.associateBy(
+                        keySelector = { it.parameters.size },
+                        valueTransform = { it.defaults() }
+                    )
+                    // JVM overloads is not part of the java stub or metadata, hence we cannot
+                    // detect it
+                    assertWithMessage(subject.fallbackLocationText)
+                        .that(actuals)
+                        .containsExactlyEntriesIn(
+                            mapOf(
+                                1 to listOf(false),
+                                2 to listOf(false, false),
+                                3 to listOf(false, true, true)
+                            )
+                        )
+                }
+            }
+        }
+    }
+
+    @Test
     fun thrownTypes() {
         fun buildSources(pkg: String) = listOf(
             Source.java(
diff --git a/room/room-paging/src/androidTest/kotlin/androidx/room/paging/LimitOffsetPagingSourceTest.kt b/room/room-paging/src/androidTest/kotlin/androidx/room/paging/LimitOffsetPagingSourceTest.kt
index 0954498..e0e120c 100644
--- a/room/room-paging/src/androidTest/kotlin/androidx/room/paging/LimitOffsetPagingSourceTest.kt
+++ b/room/room-paging/src/androidTest/kotlin/androidx/room/paging/LimitOffsetPagingSourceTest.kt
@@ -29,6 +29,7 @@
 import androidx.room.util.CursorUtil
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
+import androidx.test.filters.FlakyTest
 import androidx.test.filters.SmallTest
 import com.google.common.truth.Truth.assertThat
 import kotlinx.coroutines.runBlocking
@@ -488,6 +489,7 @@
         }
     }
 
+    @FlakyTest(bugId = 193653151)
     @Test
     fun prepend_invalidResult() {
         val pagingSource = LimitOffsetPagingSourceImpl(database)
diff --git a/settings.gradle b/settings.gradle
index 87a385d..c176b0f 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -211,11 +211,11 @@
 includeProject(":asynclayoutinflater:asynclayoutinflater", "asynclayoutinflater/asynclayoutinflater", [BuildType.MAIN])
 includeProject(":autofill:autofill", "autofill/autofill", [BuildType.MAIN])
 includeProject(":benchmark:benchmark-benchmark", "benchmark/benchmark", [BuildType.MAIN, BuildType.COMPOSE])
-includeProject(":benchmark:benchmark-common", "benchmark/common")
+includeProject(":benchmark:benchmark-common", "benchmark/benchmark-common")
 includeProject(":benchmark:benchmark-gradle-plugin", "benchmark/gradle-plugin", [BuildType.MAIN])
-includeProject(":benchmark:benchmark-junit4", "benchmark/junit4")
-includeProject(":benchmark:benchmark-macro", "benchmark/macro", [BuildType.MAIN, BuildType.COMPOSE])
-includeProject(":benchmark:benchmark-macro-junit4", "benchmark/macro-junit4", [BuildType.MAIN, BuildType.COMPOSE])
+includeProject(":benchmark:benchmark-junit4", "benchmark/benchmark-junit4")
+includeProject(":benchmark:benchmark-macro", "benchmark/benchmark-macro", [BuildType.MAIN, BuildType.COMPOSE])
+includeProject(":benchmark:benchmark-macro-junit4", "benchmark/benchmark-macro-junit4", [BuildType.MAIN, BuildType.COMPOSE])
 includeProject(":benchmark:integration-tests:dry-run-benchmark", "benchmark/integration-tests/dry-run-benchmark", [BuildType.MAIN])
 includeProject(":benchmark:integration-tests:macrobenchmark", "benchmark/integration-tests/macrobenchmark", [BuildType.MAIN, BuildType.COMPOSE])
 includeProject(":benchmark:integration-tests:macrobenchmark-target", "benchmark/integration-tests/macrobenchmark-target", [BuildType.MAIN, BuildType.COMPOSE])
diff --git a/slidingpanelayout/slidingpanelayout/src/androidTest/java/androidx/slidingpanelayout/widget/FoldTest.kt b/slidingpanelayout/slidingpanelayout/src/androidTest/java/androidx/slidingpanelayout/widget/FoldTest.kt
index aa8f66f..2e4e226 100644
--- a/slidingpanelayout/slidingpanelayout/src/androidTest/java/androidx/slidingpanelayout/widget/FoldTest.kt
+++ b/slidingpanelayout/slidingpanelayout/src/androidTest/java/androidx/slidingpanelayout/widget/FoldTest.kt
@@ -23,7 +23,6 @@
 import androidx.slidingpanelayout.widget.helpers.findViewX
 import androidx.test.core.app.ActivityScenario
 import androidx.test.ext.junit.runners.AndroidJUnit4
-import androidx.test.filters.FlakyTest
 import androidx.test.filters.LargeTest
 import androidx.testutils.withActivity
 import androidx.window.FoldingFeature.Orientation.Companion.VERTICAL
@@ -57,7 +56,6 @@
     /**
      * Test split views in middle when fold vertically
      */
-    @FlakyTest(bugId = 190609880)
     @Test
     public fun testFoldVertical() {
         TestActivity.onActivityCreated = { activity ->
@@ -97,7 +95,6 @@
     /**
      * Test split views when fold pane is smaller than required min width
      */
-    @FlakyTest(bugId = 190609880)
     @Test
     public fun testFoldExceedMinWidth() {
         val detailViewExtraWidth = 200
diff --git a/wear/compose/foundation/build.gradle b/wear/compose/foundation/build.gradle
index b0d3670..e4d5601 100644
--- a/wear/compose/foundation/build.gradle
+++ b/wear/compose/foundation/build.gradle
@@ -28,16 +28,16 @@
 AndroidXComposePlugin.applyAndConfigureKotlinPlugin(project)
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
 
     if(!AndroidXComposePlugin.isMultiplatformEnabled(project)) {
-        api("androidx.compose.foundation:foundation:1.0.0-rc01")
-        api("androidx.compose.ui:ui:1.0.0-rc01")
-        api("androidx.compose.ui:ui-text:1.0.0-rc01")
-        api("androidx.compose.runtime:runtime:1.0.0-rc01")
+        api("androidx.compose.foundation:foundation:1.0.0-rc02")
+        api("androidx.compose.ui:ui:1.0.0-rc02")
+        api("androidx.compose.ui:ui-text:1.0.0-rc02")
+        api("androidx.compose.runtime:runtime:1.0.0-rc02")
 
         implementation(libs.kotlinStdlib)
-        implementation("androidx.compose.foundation:foundation-layout:1.0.0-rc01")
+        implementation("androidx.compose.foundation:foundation-layout:1.0.0-rc02")
 
         androidTestImplementation project(path: ':compose:ui:ui-test')
         androidTestImplementation project(path: ':compose:ui:ui-test-junit4')
diff --git a/wear/compose/material/build.gradle b/wear/compose/material/build.gradle
index 17e443f..35f6046 100644
--- a/wear/compose/material/build.gradle
+++ b/wear/compose/material/build.gradle
@@ -28,17 +28,17 @@
 AndroidXComposePlugin.applyAndConfigureKotlinPlugin(project)
 
 dependencies {
-    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc01")
+    kotlinPlugin("androidx.compose.compiler:compiler:1.0.0-rc02")
 
     if(!AndroidXComposePlugin.isMultiplatformEnabled(project)) {
-        api("androidx.compose.foundation:foundation:1.0.0-rc01")
-        api("androidx.compose.ui:ui:1.0.0-rc01")
-        api("androidx.compose.ui:ui-text:1.0.0-rc01")
-        api("androidx.compose.runtime:runtime:1.0.0-rc01")
+        api("androidx.compose.foundation:foundation:1.0.0-rc02")
+        api("androidx.compose.ui:ui:1.0.0-rc02")
+        api("androidx.compose.ui:ui-text:1.0.0-rc02")
+        api("androidx.compose.runtime:runtime:1.0.0-rc02")
 
         implementation(libs.kotlinStdlib)
-        implementation("androidx.compose.material:material:1.0.0-rc01")
-        implementation("androidx.compose.material:material-ripple:1.0.0-rc01")
+        implementation("androidx.compose.material:material:1.0.0-rc02")
+        implementation("androidx.compose.material:material-ripple:1.0.0-rc02")
 
         androidTestImplementation project(path: ':compose:ui:ui-test')
         androidTestImplementation project(path: ':compose:ui:ui-test-junit4')