Performance/Fenix: Difference between revisions

Jump to navigation Jump to search
→‎App start up: Move StrictMode suppressions into done
(→‎Defense: add WIP header)
(→‎App start up: Move StrictMode suppressions into done)
Line 5: Line 5:
The FE perf team has the following measures in place to prevent regressions:
The FE perf team has the following measures in place to prevent regressions:
* Show long term start up trends with Nightly performance tests (note: these are not granular enough to practically identify & fix regressions)
* Show long term start up trends with Nightly performance tests (note: these are not granular enough to practically identify & fix regressions)
* Prevent main thread IO with:
* Prevent main thread IO by:
** <code>StrictMode</code> crashing in debug builds on disk or network IO on the main thread
** Crashing on main thread IO in debug builds using <code>StrictMode</code> ([https://github.com/mozilla-mobile/fenix/blob/13f33049122e0f06c026632812dee405360c53b0/app/src/main/java/org/mozilla/fenix/StrictModeManager.kt#L63-L69 code])
** Preventing <code>StrictMode</code> suppressions by running tests that assert for the current known suppression count. We are Code Owners for the tests so we will have a discussion if the count changes ([https://github.com/mozilla-mobile/fenix/blob/13f33049122e0f06c026632812dee405360c53b0/app/src/androidTest/java/org/mozilla/fenix/ui/StrictModeStartupSuppressionCountTest.kt#L48-L57 code])
* Code added to the start up path should be reviewed by the performance team:
* Code added to the start up path should be reviewed by the performance team:
** We are Code Owners for a few files
** We are Code Owners for a few files
Line 14: Line 15:
* Regression testing per master merge ([https://github.com/mozilla-mobile/perf-frontend-issues/issues/162 issue])
* Regression testing per master merge ([https://github.com/mozilla-mobile/perf-frontend-issues/issues/162 issue])
* Prevent main thread IO with:
* Prevent main thread IO with:
** Tests to prevent suppression of StrictMode without discussion ([https://github.com/mozilla-mobile/fenix/issues/13959 issue])
** Static analysis to prevent <code>runBlocking</code>, which can circumvent <code>StrictMode</code> ([https://github.com/mozilla-mobile/fenix/issues/15278 issue])
** Static analysis to prevent <code>runBlocking</code>, which can circumvent <code>StrictMode</code> ([https://github.com/mozilla-mobile/fenix/issues/15278 issue])
* Code added to the start-up path should be reviewed by the performance team:
* Code added to the start-up path should be reviewed by the performance team:
Confirmed users
975

edits

Navigation menu