Skip to content

Conversation

@mdjastrzebski
Copy link
Member

@mdjastrzebski mdjastrzebski commented Nov 21, 2025

Summary

Use renderAsync from RNTL if available.

Test plan


Note

Adopts RNTL renderAsync/cleanupAsync when available and updates measuring to await render/cleanup; comments out async effect tests.

  • Measure core:
    • Update packages/measure/src/measure-renders.tsx to await render(ui) and await cleanup().
    • Extend config with RenderAsync/CleanupAsync types in packages/measure/src/config.ts.
    • Resolve RNTL APIs to renderAsync/cleanupAsync if present, else fallback, in packages/measure/src/testing-library.ts.
  • Tests:
    • Comment out async macro/micro-task effect tests in packages/measure/src/__tests__/measure-renders.test.tsx.
  • Release:
    • Add changeset for a minor version of @callstack/reassure-measure.

Written by Cursor Bugbot for commit 3cf725d. This will update automatically on new commits. Configure here.

@github-actions
Copy link
Contributor

Performance Comparison Report

  • Current: HEAD (d30a988) - 2025-11-21 12:44:49Z
  • Baseline: main (41b6e24) - 2025-11-21 12:44:11Z

Significant Changes To Duration

Show entries
Name Type Duration Count
<AsyncComponent />: 20 runs render 38.0 ms → 60.0 ms (+22.0 ms, +58.0%) 🔴🔴 4 → 4
RedundantUpdates render 1.0 ms → 1.1 ms (+0.1 ms, +6.1%) 🔴 2 → 2
Show details
Name Type Duration Count
<AsyncComponent />: 20 runs render Baseline
Mean: 38.0 ms
Stdev: 0.2 ms (0.7%)
Runs: 38.2 38.2 37.8 38.3 38.0 38.0 38.1 37.9 38.3 38.1 38.0 37.8 38.1 37.8 37.4 38.0 38.2 37.5
Warmup runs: 91.1
Removed outliers: 89.4 70.6

Current
Mean: 60.0 ms
Stdev: 19.2 ms (32.0%)
Runs: 83.3 65.3 38.1 38.2 50.6 83.3 83.5 53.4 43.0 45.7 83.5 83.7 64.9 38.3 38.2 50.5 83.0 82.9 52.8 38.1
Warmup runs: 83.2
Removed outliers: (none)
Baseline
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
Render issues:
- Initial updates: 1

Current
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
Render issues:
- Initial updates: 1
RedundantUpdates render Baseline
Mean: 1.0 ms
Stdev: 0.0 ms (3.2%)
Runs: 1.0 1.1 1.0 1.0 1.0 1.0 1.0 1.1 1.0 1.0
Warmup runs: 1.1
Removed outliers: (none)

Current
Mean: 1.1 ms
Stdev: 0.0 ms (2.7%)
Runs: 1.1 1.1 1.1 1.0 1.1 1.0 1.1 1.0 1.1 1.1
Warmup runs: 1.1
Removed outliers: (none)
Baseline
Mean: 2
Stdev: 0 (0.0%)
Runs: 2 2 2 2 2 2 2 2 2 2
Render issues:
- Redundant updates: 1 (1)

Current
Mean: 2
Stdev: 0 (0.0%)
Runs: 2 2 2 2 2 2 2 2 2 2
Render issues:
- Redundant updates: 1 (1)

Meaningless Changes To Duration

Show entries
Name Type Duration Count
`fib` function fib(30) function 35.9 ms → 35.8 ms (-0.2 ms, ±0.0%) 1 → 1
`fib` function fib(30) async async function 36.3 ms → 36.0 ms (-0.2 ms, -0.6%) 1 → 1
`fib` function fib(31) function 57.8 ms → 58.7 ms (+0.9 ms, +1.6%) 1 → 1
`fib` function fib(31) async async function 58.6 ms → 58.6 ms (+0.0 ms, ±0.0%) 1 → 1
`fib` function fib(32) function 94.7 ms → 97.1 ms (+2.3 ms, +2.5%) 1 → 1
`fib` function fib(32) async async function 93.8 ms → 94.9 ms (+1.1 ms, +1.2%) 1 → 1
<AsyncComponent />: 10 runs render 65.2 ms → 56.6 ms (-8.6 ms, -13.2%) 4 → 4
Async Component render 107.9 ms → 103.7 ms (-4.2 ms, -3.9%) 7 → 7
InitialRenders 1 render 1.1 ms → 1.1 ms (-0.0 ms, -3.8%) 2 → 2
InitialRenders 3 render 1.7 ms → 1.6 ms (-0.1 ms, -3.2%) 4 → 4
ManyRenderIssues render 2.0 ms → 2.0 ms (+0.0 ms, ±0.0%) 5 → 5
Show details
Name Type Duration Count
`fib` function fib(30) function Baseline
Mean: 35.9 ms
Stdev: 0.3 ms (0.7%)
Runs: 35.7 35.6 35.7 35.7 35.9 36.1 36.2 36.2 36.1 36.2
Warmup runs: 35.7
Removed outliers: (none)

Current
Mean: 35.8 ms
Stdev: 0.1 ms (0.3%)
Runs: 35.7 36.1 35.7 35.8 35.8 35.8 35.7 35.8 35.7 35.8
Warmup runs: 33.5
Removed outliers: (none)
Baseline
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1

Current
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1
`fib` function fib(30) async async function Baseline
Mean: 36.3 ms
Stdev: 0.1 ms (0.2%)
Runs: 36.2 36.3 36.2 36.2 36.2 36.4 36.2 36.2 36.2
Warmup runs: 52.2
Removed outliers: 36.0

Current
Mean: 36.0 ms
Stdev: 0.2 ms (0.5%)
Runs: 35.7 35.7 36.1 36.1 36.1 36.2 36.1 36.1 36.1 36.0
Warmup runs: 50.6
Removed outliers: (none)
Baseline
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1

Current
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1
`fib` function fib(31) function Baseline
Mean: 57.8 ms
Stdev: 0.0 ms (0.1%)
Runs: 57.8 57.8 57.8 57.7 57.7 57.8 57.8 57.7 57.7
Warmup runs: 53.2
Removed outliers: 58.6

Current
Mean: 58.7 ms
Stdev: 0.2 ms (0.3%)
Runs: 58.7 58.6 58.6 59.1 58.7 59.1 58.6 58.8 58.6 58.6
Warmup runs: 58.8
Removed outliers: (none)
Baseline
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1

Current
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1
`fib` function fib(31) async async function Baseline
Mean: 58.6 ms
Stdev: 0.3 ms (0.4%)
Runs: 58.0 58.9 58.7 58.6 58.7 58.7 58.7 58.7
Warmup runs: 58.1
Removed outliers: 57.9 57.8

Current
Mean: 58.6 ms
Stdev: 0.1 ms (0.1%)
Runs: 58.6 58.7 58.6 58.6 58.6 58.7 58.6 58.6 58.6 58.8
Warmup runs: 58.7
Removed outliers: (none)
Baseline
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1

Current
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1
`fib` function fib(32) function Baseline
Mean: 94.7 ms
Stdev: 0.1 ms (0.1%)
Runs: 94.7 94.8 94.7 95.0 94.8 94.8 94.7 94.6
Warmup runs: 93.5
Removed outliers: 93.6 93.4

Current
Mean: 97.1 ms
Stdev: 0.1 ms (0.1%)
Runs: 96.9 97.1 96.9 97.1 97.0 97.2 97.0 97.3 97.1
Warmup runs: 97.1
Removed outliers: 98.8
Baseline
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1

Current
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1
`fib` function fib(32) async async function Baseline
Mean: 93.8 ms
Stdev: 0.4 ms (0.4%)
Runs: 93.6 93.6 93.8 93.7 93.9 93.6 93.4 93.7 94.5 94.5
Warmup runs: 94.1
Removed outliers: (none)

Current
Mean: 94.9 ms
Stdev: 0.1 ms (0.1%)
Runs: 95.0 95.0 94.8 95.0 94.8 94.9 94.9 94.9 95.1
Warmup runs: 94.9
Removed outliers: 96.5
Baseline
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1

Current
Mean: 1
Stdev: 0 (0.0%)
Runs: 1 1 1 1 1 1 1 1 1 1
<AsyncComponent />: 10 runs render Baseline
Mean: 65.2 ms
Stdev: 24.0 ms (36.9%)
Runs: 89.1 71.0 37.5 40.5 89.1 88.8 71.2 37.6 38.3 88.9
Warmup runs: 100.1
Removed outliers: (none)

Current
Mean: 56.6 ms
Stdev: 20.1 ms (35.5%)
Runs: 78.9 65.0 38.2 38.0 72.4 82.8 76.7 37.9 37.8 38.4
Warmup runs: 149.8
Removed outliers: (none)
Baseline
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
Render issues:
- Initial updates: 1

Current
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
Render issues:
- Initial updates: 1
Async Component render Baseline
Mean: 107.9 ms
Stdev: 33.8 ms (31.3%)
Runs: 107.7 77.3 153.4 95.5 88.9 152.9 81.5 102.0 154.7 65.3
Warmup runs: 177.2
Removed outliers: (none)

Current
Mean: 103.7 ms
Stdev: 31.2 ms (30.1%)
Runs: 101.8 64.8 145.5 100.9 76.7 146.5 88.9 76.8 145.9 89.1
Warmup runs: 164.3
Removed outliers: (none)
Baseline
Mean: 7
Stdev: 0 (0.0%)
Runs: 7 7 7 7 7 7 7 7 7 7
Render issues:
- Initial updates: 1

Current
Mean: 7
Stdev: 0 (0.0%)
Runs: 7 7 7 7 7 7 7 7 7 7
Render issues:
- Initial updates: 1
InitialRenders 1 render Baseline
Mean: 1.1 ms
Stdev: 0.1 ms (12.6%)
Runs: 1.3 1.1 1.4 1.2 1.0 1.0 1.0 1.0 1.0
Warmup runs: 1875.7
Removed outliers: 2.0

Current
Mean: 1.1 ms
Stdev: 0.1 ms (6.9%)
Runs: 1.1 1.1 1.1 1.3 1.0 1.0 1.0 1.1 1.0 1.0
Warmup runs: 12.0
Removed outliers: (none)
Baseline
Mean: 2
Stdev: 0 (0.0%)
Runs: 2 2 2 2 2 2 2 2 2 2
Render issues:
- Initial updates: 1

Current
Mean: 2
Stdev: 0 (0.0%)
Runs: 2 2 2 2 2 2 2 2 2 2
Render issues:
- Initial updates: 1
InitialRenders 3 render Baseline
Mean: 1.7 ms
Stdev: 0.0 ms (1.5%)
Runs: 1.6 1.7 1.7 1.7 1.7 1.7 1.7 1.7 1.7 1.7
Warmup runs: 1.7
Removed outliers: (none)

Current
Mean: 1.6 ms
Stdev: 0.0 ms (1.3%)
Runs: 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6
Warmup runs: 1.6
Removed outliers: (none)
Baseline
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
Render issues:
- Initial updates: 3

Current
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
Render issues:
- Initial updates: 3
ManyRenderIssues render Baseline
Mean: 2.0 ms
Stdev: 0.0 ms (1.5%)
Runs: 2.0 2.0 2.1 2.0 2.0 2.0 2.0 2.0 2.0 2.1
Warmup runs: 2.0
Removed outliers: (none)

Current
Mean: 2.0 ms
Stdev: 0.0 ms (0.8%)
Runs: 2.0 2.0 2.1 2.0 2.0 2.0 2.0 2.0 2.0 2.0
Warmup runs: 2.0
Removed outliers: (none)
Baseline
Mean: 5
Stdev: 0 (0.0%)
Runs: 5 5 5 5 5 5 5 5 5 5
Render issues:
- Initial updates: 2
- Redundant updates: 2 (3, 4)

Current
Mean: 5
Stdev: 0 (0.0%)
Runs: 5 5 5 5 5 5 5 5 5 5
Render issues:
- Initial updates: 2
- Redundant updates: 2 (3, 4)

Render Count Changes

There are no entries

Render Issues

Name Initial Updates Redundant Updates
<AsyncComponent />: 10 runs 1 🔴 -
<AsyncComponent />: 20 runs 1 🔴 -
InitialRenders 1 1 🔴 -
InitialRenders 3 3 🔴 -
RedundantUpdates - 1 (1) 🔴
ManyRenderIssues 2 🔴 2 (3, 4) 🔴
Async Component 1 🔴 -

Added Entries

There are no entries

Removed Entries

There are no entries

Generated by 🚫 dangerJS against 3cf725d

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants