Skip to content

Commit 69f4287

Browse files
committed
Merge branch 'main' into lifecycle2.7.0
* main: Bump protobuf from 3.24.4 to 3.25.2 (#1214) Remove legacy benchmark build type (#1207) Use androidx.tracing everywhere Revert fast initialization of Coil Add comment for Retrofit async OkHttp Optimize OkHttp initialization for Retrofit Add braces Inline initialization Don't use runBlocking if async init completed Launch loader directly without additional coroutine scope Fix comment Improve lazy loading for Coil + OkHttp Restores screenshot tests in foryou (#1199) Fix name and message of dependency guard actions (#1196) Change-Id: Ifcbfcfba4b7d8c24599e207b4a05dfea6125fde7
2 parents 2ad4884 + 6add4d6 commit 69f4287

File tree

24 files changed

+60
-81
lines changed

24 files changed

+60
-81
lines changed

.github/workflows/Build.yaml

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,10 @@ jobs:
5555
continue-on-error: false
5656
if: steps.dependencyguard_verify.outcome == 'failure' && github.event.pull_request.head.repo.full_name != github.repository
5757
run: |
58-
echo "::error::Dependency Guard failed, please run the following to update baselines:\n" \
59-
" ./gradlew dependencyGuardBaseline" && exit 1
58+
echo "::error::Dependency Guard failed, please update baselines with: ./gradlew dependencyGuardBaseline" && exit 1
6059
6160
# Runs if previous job failed
62-
- name: Generate new screenshots if verification failed and it's a PR
61+
- name: Generate new Dependency Guard baselines if verification failed and it's a PR
6362
id: dependencyguard_baseline
6463
if: steps.dependencyguard_verify.outcome == 'failure' && github.event_name == 'pull_request'
6564
run: |
@@ -110,13 +109,9 @@ jobs:
110109
- name: Build all build type and flavor permutations
111110
run: ./gradlew :app:assemble :benchmarks:assemble
112111
-x pixel6Api33ProdNonMinifiedReleaseAndroidTest
113-
-x pixel6Api33ProdNonMinifiedBenchmarkAndroidTest
114112
-x pixel6Api33DemoNonMinifiedReleaseAndroidTest
115-
-x pixel6Api33DemoNonMinifiedBenchmarkAndroidTest
116113
-x collectDemoNonMinifiedReleaseBaselineProfile
117-
-x collectDemoNonMinifiedBenchmarkBaselineProfile
118114
-x collectProdNonMinifiedReleaseBaselineProfile
119-
-x collectProdNonMinifiedBenchmarkBaselineProfile
120115

121116
- name: Upload build outputs (APKs)
122117
uses: actions/upload-artifact@v4

app-nia-catalog/dependencies/releaseRuntimeClasspath.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@ androidx.profileinstaller:profileinstaller:1.3.1
7070
androidx.savedstate:savedstate-ktx:1.2.1
7171
androidx.savedstate:savedstate:1.2.1
7272
androidx.startup:startup-runtime:1.1.1
73-
androidx.tracing:tracing:1.0.0
73+
androidx.tracing:tracing-ktx:1.3.0-alpha02
74+
androidx.tracing:tracing:1.3.0-alpha02
7475
androidx.vectordrawable:vectordrawable-animated:1.1.0
7576
androidx.vectordrawable:vectordrawable:1.1.0
7677
androidx.versionedparcelable:versionedparcelable:1.1.1

app/build.gradle.kts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -57,17 +57,6 @@ android {
5757
// Ensure Baseline Profile is fresh for release builds.
5858
baselineProfile.automaticGenerationDuringBuild = true
5959
}
60-
create("benchmark") {
61-
// Enable all the optimizations from release build through initWith(release).
62-
initWith(release)
63-
matchingFallbacks.add("release")
64-
// Debug key signing is available to everyone.
65-
signingConfig = signingConfigs.getByName("debug")
66-
// Only use benchmark proguard rules
67-
proguardFiles("benchmark-rules.pro")
68-
isMinifyEnabled = true
69-
applicationIdSuffix = NiaBuildType.BENCHMARK.applicationIdSuffix
70-
}
7160
}
7261

7362
packaging {

app/dependencies/prodReleaseRuntimeClasspath.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,8 @@ androidx.savedstate:savedstate:1.2.1
105105
androidx.sqlite:sqlite-framework:2.4.0
106106
androidx.sqlite:sqlite:2.4.0
107107
androidx.startup:startup-runtime:1.1.1
108-
androidx.tracing:tracing-ktx:1.1.0
109-
androidx.tracing:tracing:1.1.0
108+
androidx.tracing:tracing-ktx:1.3.0-alpha02
109+
androidx.tracing:tracing:1.3.0-alpha02
110110
androidx.vectordrawable:vectordrawable-animated:1.1.0
111111
androidx.vectordrawable:vectordrawable:1.1.0
112112
androidx.versionedparcelable:versionedparcelable:1.1.1
@@ -168,8 +168,8 @@ com.google.guava:failureaccess:1.0.1
168168
com.google.guava:guava:31.1-android
169169
com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
170170
com.google.j2objc:j2objc-annotations:1.3
171-
com.google.protobuf:protobuf-javalite:3.24.4
172-
com.google.protobuf:protobuf-kotlin-lite:3.24.4
171+
com.google.protobuf:protobuf-javalite:3.25.2
172+
com.google.protobuf:protobuf-kotlin-lite:3.25.2
173173
com.jakewharton.retrofit:retrofit2-kotlinx-serialization-converter:1.0.0
174174
com.squareup.okhttp3:logging-interceptor:4.12.0
175175
com.squareup.okhttp3:okhttp:4.12.0

app/src/main/kotlin/com/google/samples/apps/nowinandroid/NiaApplication.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,14 @@ import com.google.samples.apps.nowinandroid.sync.initializers.Sync
2323
import com.google.samples.apps.nowinandroid.util.ProfileVerifierLogger
2424
import dagger.hilt.android.HiltAndroidApp
2525
import javax.inject.Inject
26-
import javax.inject.Provider
2726

2827
/**
2928
* [Application] class for NiA
3029
*/
3130
@HiltAndroidApp
3231
class NiaApplication : Application(), ImageLoaderFactory {
3332
@Inject
34-
lateinit var imageLoader: Provider<ImageLoader>
33+
lateinit var imageLoader: dagger.Lazy<ImageLoader>
3534

3635
@Inject
3736
lateinit var profileVerifierLogger: ProfileVerifierLogger

benchmarks/build.gradle.kts

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
import com.google.samples.apps.nowinandroid.NiaBuildType
1716
import com.google.samples.apps.nowinandroid.configureFlavors
1817

1918
plugins {
@@ -35,23 +34,6 @@ android {
3534
buildConfig = true
3635
}
3736

38-
buildTypes {
39-
// This benchmark buildType is used for benchmarking, and should function like your
40-
// release build (for example, with minification on). It's signed with a debug key
41-
// for easy local/CI testing.
42-
create("benchmark") {
43-
// Keep the build type debuggable so we can attach a debugger if needed.
44-
isDebuggable = true
45-
signingConfig = signingConfigs.getByName("debug")
46-
matchingFallbacks.add("release")
47-
buildConfigField(
48-
"String",
49-
"APP_BUILD_TYPE_SUFFIX",
50-
"\"${NiaBuildType.BENCHMARK.applicationIdSuffix ?: ""}\""
51-
)
52-
}
53-
}
54-
5537
// Use the same flavor dimensions as the application to allow generating Baseline Profiles on prod,
5638
// which is more close to what will be shipped to users (no fake data), but has ability to run the
5739
// benchmarks on demo, so we benchmark on stable data.

benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/Utils.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ import java.io.ByteArrayOutputStream
3030
val PACKAGE_NAME = buildString {
3131
append("com.google.samples.apps.nowinandroid")
3232
append(BuildConfig.APP_FLAVOR_SUFFIX)
33-
append(BuildConfig.APP_BUILD_TYPE_SUFFIX)
3433
}
3534

3635
fun UiDevice.flingElementDownUp(element: UiObject2) {

build-logic/convention/src/main/kotlin/AndroidFeatureConventionPlugin.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ class AndroidFeatureConventionPlugin : Plugin<Project> {
4444
add("implementation", libs.findLibrary("androidx.hilt.navigation.compose").get())
4545
add("implementation", libs.findLibrary("androidx.lifecycle.runtimeCompose").get())
4646
add("implementation", libs.findLibrary("androidx.lifecycle.viewModelCompose").get())
47+
add("implementation", libs.findLibrary("androidx.tracing.ktx").get())
4748

4849
add("androidTestImplementation", libs.findLibrary("androidx.lifecycle.runtimeTesting").get())
4950
}

build-logic/convention/src/main/kotlin/AndroidLibraryConventionPlugin.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import com.google.samples.apps.nowinandroid.configureGradleManagedDevices
2121
import com.google.samples.apps.nowinandroid.configureKotlinAndroid
2222
import com.google.samples.apps.nowinandroid.configurePrintApksTask
2323
import com.google.samples.apps.nowinandroid.disableUnnecessaryAndroidTests
24+
import com.google.samples.apps.nowinandroid.libs
2425
import org.gradle.api.Plugin
2526
import org.gradle.api.Project
2627
import org.gradle.kotlin.dsl.configure
@@ -51,6 +52,8 @@ class AndroidLibraryConventionPlugin : Plugin<Project> {
5152
}
5253
dependencies {
5354
add("testImplementation", kotlin("test"))
55+
56+
add("implementation", libs.findLibrary("androidx.tracing.ktx").get())
5457
}
5558
}
5659
}

build-logic/convention/src/main/kotlin/com/google/samples/apps/nowinandroid/NiaBuildType.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,4 @@ package com.google.samples.apps.nowinandroid
2222
enum class NiaBuildType(val applicationIdSuffix: String? = null) {
2323
DEBUG(".debug"),
2424
RELEASE,
25-
BENCHMARK(".benchmark")
2625
}

0 commit comments

Comments
 (0)