firebase-android-sdk icon indicating copy to clipboard operation
firebase-android-sdk copied to clipboard

add coroutines-play-services as a transitive dep to firebase-common-ktx

Open thatfiredev opened this issue 3 years ago • 5 comments

(Googlers see go/suspend-ktx-firebase-android)

thatfiredev avatar Aug 30 '22 19:08 thatfiredev

Unit Test Results

   395 files  +  5     395 suites  +5   18m 44s :stopwatch: +43s 4 715 tests +15  4 693 :heavy_check_mark: +17  22 :zzz: ±0  0 :x:  - 2  4 731 runs  +15  4 709 :heavy_check_mark: +17  22 :zzz: ±0  0 :x:  - 2 

Results for commit 095f0483. ± Comparison against base commit ed10eb5e.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar Aug 30 '22 19:08 github-actions[bot]

Size Report 1

Affected Products

  • firebase-appcheck-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)349 kB356 kB+7.56 kB (+2.2%)
    apk (release)1.54 MB1.92 MB+378 kB (+24.6%)
  • firebase-appdistribution-api-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)102 kB110 kB+7.56 kB (+7.4%)
    apk (release)1.25 MB1.63 MB+376 kB (+30.1%)
  • firebase-common-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)101 kB109 kB+7.56 kB (+7.5%)
    apk (release)1.24 MB1.62 MB+375 kB (+30.2%)
  • firebase-config-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)115 kB118 kB+3.46 kB (+3.0%)
    apk (release)1.30 MB1.67 MB+376 kB (+29.0%)
  • firebase-crashlytics-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)233 kB237 kB+3.46 kB (+1.5%)
    apk (release)1.45 MB1.83 MB+376 kB (+25.9%)
  • firebase-database-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)351 kB354 kB+3.47 kB (+1.0%)
    apk (release)1.70 MB2.08 MB+378 kB (+22.3%)
  • firebase-dynamic-links-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)351 kB355 kB+3.47 kB (+1.0%)
    apk (release)1.54 MB1.92 MB+376 kB (+24.4%)
  • firebase-firestore-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)512 kB512 kB+814 B (+0.2%)
    apk (release)4.26 MB4.26 MB+4.22 kB (+0.1%)
  • firebase-functions-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)415 kB418 kB+3.47 kB (+0.8%)
    apk (release)1.77 MB2.15 MB+376 kB (+21.3%)
  • firebase-inappmessaging-display-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)1.52 MB1.52 MB+3.46 kB (+0.2%)
    apk (release)5.17 MB5.55 MB+374 kB (+7.2%)
  • firebase-inappmessaging-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)681 kB684 kB+3.47 kB (+0.5%)
    apk (release)3.92 MB4.29 MB+376 kB (+9.6%)
  • firebase-installations-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)103 kB111 kB+7.56 kB (+7.3%)
    apk (release)1.27 MB1.64 MB+374 kB (+29.5%)
  • firebase-messaging-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)456 kB460 kB+3.46 kB (+0.8%)
    apk (release)1.70 MB2.08 MB+379 kB (+22.3%)
  • firebase-ml-modeldownloader-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)160 kB163 kB+3.46 kB (+2.2%)
    apk (release)1.38 MB1.76 MB+378 kB (+27.3%)
  • firebase-perf-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)1.05 MB1.05 MB+3.47 kB (+0.3%)
    apk (release)3.03 MB3.41 MB+377 kB (+12.4%)
  • firebase-storage-ktx

    TypeBase (ed10eb5)Merge (d77b846)Diff
    apk (aggressive)350 kB354 kB+3.46 kB (+1.0%)
    apk (release)1.57 MB1.95 MB+377 kB (+24.0%)

Test Logs

google-oss-bot avatar Aug 30 '22 19:08 google-oss-bot

I'm slightly concerned with the increased size shown in the bot report above. Seems like adding the library as a transitive dependency adds ~390kB to every ktx module - to me it is a big bump for such a small addition. I'll check if we can expose only the .await() function instead of the whole library to see if it makes any difference in terms of size.

Update: No size difference, probably because we're including the library anyway. I'll proceed with the size bump, I guess that's the price to pay to get coroutines support out of the box.

thatfiredev avatar Aug 30 '22 19:08 thatfiredev

Coverage Report 1

Affected Products

  • firebase-database

    Overall coverage changed from 50.17% (ed10eb5) to 50.15% (d77b846) by -0.02%.

    FilenameBase (ed10eb5)Merge (d77b846)Diff
    DoubleNode.java100.00%88.24%-11.76%
  • firebase-firestore

    Overall coverage changed from 44.25% (ed10eb5) to 44.26% (d77b846) by +0.00%.

    FilenameBase (ed10eb5)Merge (d77b846)Diff
    DeleteMutation.java90.48%95.24%+4.76%

Test Logs

google-oss-bot avatar Aug 30 '22 20:08 google-oss-bot

~I'm holding this until #3974 gets merged. I think it would be better if we release with the latest version of Kotlin + latest version of kotlinx-coroutines-play-services .~

thatfiredev avatar Sep 13 '22 14:09 thatfiredev

@vkryachko Can I merge this?

Also since it bumps firebase-common, does it mean we'll have to release all SDKs? Or only the ones that have methods returning Tasks? But since it's a fireconf launch, I guess releasing them all wouldn't be so bad.

thatfiredev avatar Sep 22 '22 13:09 thatfiredev

Sure, go ahead and merge. Yeah, we will have to release everyone with tasks. Can you coordinate with @VinayGuthal on the release?

vkryachko avatar Sep 22 '22 13:09 vkryachko

@vkryachko will do. Thanks!

thatfiredev avatar Sep 22 '22 14:09 thatfiredev

@vkryachko GitHub won't let me merge this, it says "Required statuses must pass before merging", I'm not sure why.

thatfiredev avatar Sep 22 '22 14:09 thatfiredev

CI Tests / Unit Tests (:firebase-common) (pull_request) Failing after 4m

You should click "Rerun failed jobs" inside the failed workflow

vkryachko avatar Sep 22 '22 15:09 vkryachko

@vkryachko I checked the logs and noticed that the failing check was the flaky test which got fixed recently. I just had to sync with master, thanks for pointing me in the right direction.

thatfiredev avatar Sep 23 '22 00:09 thatfiredev