woocommerce-android icon indicating copy to clipboard operation
woocommerce-android copied to clipboard

Baseline profile infrastructure

Open kidinov opened this issue 3 years ago • 7 comments

Closes: #6746

Description

The PR adds:

  • A module with tests to
    • Generate a new baseline profile
    • Tests that benchmark if the newly generated profile brings an improvement
  • Extracts shared code from the quicklogin module to a separate module, so both modules can use that
  • A tested baseline profile file

Testing instructions

  • Read baselineprofile/README.md file and try to
    • Generated a new profile
    • Test if it brings startup improvement time
    • Test if quicklogin module (woo_login.sh) still works

(the test instruction is a bit vague to make sure that readme.md is written in a clear way)

  • [x] I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

kidinov avatar Jun 14 '22 10:06 kidinov

Warnings
:warning: PR is not assigned to a milestone.
:warning: PR has more than 300 lines of code changing. Consider splitting into smaller PRs if possible.

Generated by :no_entry_sign: dangerJS

peril-woocommerce[bot] avatar Jun 14 '22 10:06 peril-woocommerce[bot]

You can trigger optional UI/connected tests for these changes by visiting CircleCI here.

peril-woocommerce[bot] avatar Jun 14 '22 10:06 peril-woocommerce[bot]

You can test the changes on this Pull Request by downloading an installable build, or scanning this QR code:

wpmobilebot avatar Jun 14 '22 10:06 wpmobilebot

hi @kidinov 👋 . This looks like solid work but I won't be able to review this PR soon - I've learned about baseline profiles, this sounds really interesting but I'd have to spend more time on it to contribute with a meaningful review.

As this feature will improve the new user activation journey, maybe the Kiwi team will be interested in adding this review to their backlog?

wzieba avatar Jun 27 '22 09:06 wzieba

@0nko @hichamboushaba as @wzieba noticed this might be indeed something that bit but contribute to your team goal. It's not urgent at all but would be nice if you folks will find a sec so it won't be a waste!

kidinov avatar Jul 14 '22 07:07 kidinov

Codecov Report

Merging #6747 (fd29dc7) into trunk (b2a2e7d) will increase coverage by 0.20%. The diff coverage is n/a.

:exclamation: Current head fd29dc7 differs from pull request most recent head ddbce73. Consider uploading reports for the commit ddbce73 to get more accurate results

@@             Coverage Diff              @@
##              trunk    #6747      +/-   ##
============================================
+ Coverage     44.54%   44.75%   +0.20%     
+ Complexity     3006     2935      -71     
============================================
  Files           539      531       -8     
  Lines         29806    28909     -897     
  Branches       3942     3816     -126     
============================================
- Hits          13277    12937     -340     
+ Misses        15289    14774     -515     
+ Partials       1240     1198      -42     
Impacted Files Coverage Δ
...n/com/woocommerce/android/extensions/RefundsExt.kt 0.00% <0.00%> (-100.00%) :arrow_down:
...in/kotlin/com/woocommerce/android/util/MathUtil.kt 0.00% <0.00%> (-50.00%) :arrow_down:
.../woocommerce/android/ui/mystore/MyStoreUiModels.kt 13.63% <0.00%> (-31.82%) :arrow_down:
...woocommerce/android/model/OrderShipmentTracking.kt 70.00% <0.00%> (-30.00%) :arrow_down:
...android/ui/orders/fulfill/OrderFulfillViewModel.kt 58.73% <0.00%> (-18.44%) :arrow_down:
...ommerce/android/ui/refunds/IssueRefundViewModel.kt 47.46% <0.00%> (-18.21%) :arrow_down:
...roid/ui/orders/creation/OrderCreationRepository.kt 24.10% <0.00%> (-13.40%) :arrow_down:
...woocommerce/android/ui/mystore/MyStoreViewModel.kt 67.94% <0.00%> (-9.68%) :arrow_down:
.../woocommerce/android/viewmodel/LiveDataDelegate.kt 62.96% <0.00%> (-2.43%) :arrow_down:
...rdreader/onboarding/CardReaderOnboardingChecker.kt 91.35% <0.00%> (-2.27%) :arrow_down:
... and 87 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 4af3f9a...ddbce73. Read the comment docs.

codecov-commenter avatar Jul 26 '22 09:07 codecov-commenter

Found 1 violations:

The PR caused the following dependency changes:

expand

 \--- com.automattic:about:0.0.6
      \--- androidx.compose.ui:ui:1.0.5 -> 1.1.1
-          \--- androidx.profileinstaller:profileinstaller:1.1.0
-               +--- androidx.annotation:annotation:1.2.0 -> 1.3.0
-               \--- androidx.startup:startup-runtime:1.0.0 -> 1.1.1 (*)
+          \--- androidx.profileinstaller:profileinstaller:1.1.0 -> 1.2.0-beta01
+               +--- androidx.annotation:annotation:1.2.0 -> 1.3.0
+               \--- androidx.startup:startup-runtime:1.1.1 (*)
+\--- androidx.profileinstaller:profileinstaller:1.2.0-beta01 (*)

Please review and act accordingly

<this is a auto generated comment from violation-comments-lib F7F8ASD8123FSDF>

<ACCUMULATED-VIOLATIONS>

wpmobilebot avatar Jul 26 '22 09:07 wpmobilebot

Closed in favour of https://github.com/woocommerce/woocommerce-android/pull/8061 that used some part of it

kidinov avatar Mar 28 '23 10:03 kidinov