Skip to content

[HOLD for payment 2023-10-09] [HOLD for payment 2023-09-27] [Tracking] Improve ReportScreen re-renders #26087

@mountiny

Description

@mountiny

Problem

The Report screen has a lot of performance bottlenecks. Mostly they are caused by unnecessary re-renders and given this component is very heavy to render, it can visibly slow down the App.

Solution

This is a tracking issue for multiple PRs and improvements which are found.

We are analysing the render cycles via Flipper Profiler and React Dev Tools and finding where are the bottle necks in the rendering of the component and its sub-tree.

So far we have found bugs regarding shared context and misuse of hooks that cause unnecessary re-renders. It might be an issue of death by a thousand paper cuts where seemingly innocuous changes cause large tree re-renders.

PRs:

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~010777a443667dee8f
  • Upwork Job ID: 1696166898891616256
  • Last Price Increase: 2023-08-28

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionDailyKSv2EngineeringInternalRequires API changes or must be handled by Expensify staffPlanningChanges still in the thought process

Type

No type
No fields configured for issues without a type.

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions