Confirmed users
975
edits
(→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 | * Prevent main thread IO by: | ||
** <code>StrictMode</code> | ** 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: | ||
** 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: |