Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v1 #456

Merged
merged 32 commits into from
Jun 16, 2024
Merged

v1 #456

merged 32 commits into from
Jun 16, 2024

Conversation

mdjastrzebski
Copy link
Member

@mdjastrzebski mdjastrzebski commented Feb 20, 2024

Summary

  • Rename: measurePerformance => measureRenders
  • Rename: resetToDefault() => resetToDefaults()
  • Modify measure* output to allow multiple tests
  • Migration guide

Test plan

Copy link

changeset-bot bot commented Feb 20, 2024

🦋 Changeset detected

Latest commit: a3deecd

The changes in this PR will be included in the next version bump.

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link
Contributor

github-actions bot commented Feb 21, 2024

Performance Comparison Report

  • Current: HEAD (36adf54) - 2024-06-14 20:45:34Z
  • Baseline: main (3e6e6a4) - 2024-06-14 20:44:14Z

Significant Changes To Duration

Name Type Duration Count
fib 30 function 82.5 ms → 38.5 ms (-44.0 ms, -53.3%) 🟢🟢 1 → 1
Other Component 20 render 113.9 ms → 66.0 ms (-47.9 ms, -42.0%) 🟢🟢 4 → 4
Other Component 10 legacy scenario render 113.8 ms → 64.0 ms (-49.8 ms, -43.8%) 🟢🟢 4 → 4
Other Component 10 render 114.3 ms → 63.6 ms (-50.7 ms, -44.4%) 🟢🟢 4 → 4
fib 31 function 135.6 ms → 63.0 ms (-72.6 ms, -53.5%) 🟢🟢 1 → 1
Async Component render 188.2 ms → 105.8 ms (-82.4 ms, -43.8%) 🟢🟢 7 → 7
fib 32 function 233.9 ms → 101.5 ms (-132.4 ms, -56.6%) 🟢🟢 1 → 1
Show details
Name Type Duration Count
fib 30 function Baseline
Mean: 82.5 ms
Stdev: 1.3 ms (1.6%)
Runs: 85.0 82.8 82.8 82.8 82.8 82.7 82.7 82.6 80.7 80.0

Current
Mean: 38.5 ms
Stdev: 0.2 ms (0.4%)
Runs: 38.5 38.4 38.6 38.4 38.4 38.4 38.4 38.4 38.4 38.9
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
Other Component 20 render Baseline
Mean: 113.9 ms
Stdev: 5.8 ms (5.1%)
Runs: 127 123 122 120 117 116 116 114 114 114 113 113 113 112 109 108 108 107 107 105

Current
Mean: 66.0 ms
Stdev: 5.6 ms (8.5%)
Runs: 70 64 64 62 61 71 59 63 64 74 59 66 67 72 81 63 62 66 71 62
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

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
Other Component 10 legacy scenario render Baseline
Mean: 113.8 ms
Stdev: 6.8 ms (6.0%)
Runs: 124 121 120 117 114 114 111 107 106 104

Current
Mean: 64.0 ms
Stdev: 5.9 ms (9.2%)
Runs: 62 58 62 69 61 74 58 63 60 73
Baseline
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4

Current
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
Other Component 10 render Baseline
Mean: 114.3 ms
Stdev: 3.8 ms (3.3%)
Runs: 119 118 117 117 116 114 113 112 109 108

Current
Mean: 63.6 ms
Stdev: 3.3 ms (5.1%)
Runs: 61 59 62 71 64 66 62 65 63 63
Baseline
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4

Current
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
fib 31 function Baseline
Mean: 135.6 ms
Stdev: 1.1 ms (0.8%)
Runs: 137.4 136.1 135.9 135.8 135.8 135.7 135.7 135.7 135.6 132.8

Current
Mean: 63.0 ms
Stdev: 0.0 ms (0.1%)
Runs: 63.0 63.0 63.1 63.0 63.1 63.0 63.0 63.0 63.0 63.1
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
Async Component render Baseline
Mean: 188.2 ms
Stdev: 7.7 ms (4.1%)
Runs: 201 196 193 189 189 188 187 186 177 176

Current
Mean: 105.8 ms
Stdev: 4.7 ms (4.5%)
Runs: 104 104 115 106 109 102 106 111 100 101
Baseline
Mean: 7
Stdev: 0 (0.0%)
Runs: 7 7 7 7 7 7 7 7 7 7

Current
Mean: 7
Stdev: 0 (0.0%)
Runs: 7 7 7 7 7 7 7 7 7 7
fib 32 function Baseline
Mean: 233.9 ms
Stdev: 5.3 ms (2.3%)
Runs: 236.9 236.8 236.5 236.4 236.2 235.4 235.2 234.6 232.0 219.4

Current
Mean: 101.5 ms
Stdev: 0.6 ms (0.6%)
Runs: 100.5 100.6 100.8 101.7 102.0 101.9 101.9 101.9 102.1 102.0
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

Meaningless Changes To Duration

There are no entries

Render Count Changes

There are no entries

Render Issues

Name Initial Updates Redundant Updates
Other Component 10 1 🔴 -
Other Component 10 legacy scenario 1 🔴 -
Other Component 20 1 🔴 -
Async Component 1 🔴 -
InitialRenders 1 1 🔴 -
InitialRenders 3 3 🔴 -
RedundantUpdates - 1 (1) 🔴
ManyRenderIssues 2 🔴 2 (3, 4) 🔴

Added Scenarios

Name Type Duration Count
InitialRenders 1 render 1.5 ms 2
InitialRenders 3 render 1.4 ms 4
ManyRenderIssues render 1.4 ms 5
RedundantUpdates render 0.7 ms 2
Show details
Name Type Duration Count
InitialRenders 1 render Current
Mean: 1.5 ms
Stdev: 0.5 ms (35.1%)
Runs: 2 1 1 2 2 2 1 1 2 1
Current
Mean: 2
Stdev: 0 (0.0%)
Runs: 2 2 2 2 2 2 2 2 2 2
InitialRenders 3 render Current
Mean: 1.4 ms
Stdev: 0.7 ms (49.9%)
Runs: 2 2 2 2 1 1 1 0 1 2
Current
Mean: 4
Stdev: 0 (0.0%)
Runs: 4 4 4 4 4 4 4 4 4 4
ManyRenderIssues render Current
Mean: 1.4 ms
Stdev: 0.7 ms (49.9%)
Runs: 0 1 1 2 2 2 2 2 1 1
Current
Mean: 5
Stdev: 0 (0.0%)
Runs: 5 5 5 5 5 5 5 5 5 5
RedundantUpdates render Current
Mean: 0.7 ms
Stdev: 0.8 ms (117.6%)
Runs: 0 2 1 0 0 0 2 1 0 1
Current
Mean: 2
Stdev: 0 (0.0%)
Runs: 2 2 2 2 2 2 2 2 2 2

Removed Scenarios

There are no entries

Generated by 🚫 dangerJS against a3deecd

* chore: yarn berry (wip)

chore: forward reassure cli in the main package

chore: remove --force

chore: fix ci

chore: fix ci

chore: fix typecheck

chore: fix danger

chore: fix danger

chore: fix ci

chore: fix danger

refactor: tweaks

* chore: workspace deps

* chore: add changeset
mdjastrzebski and others added 15 commits May 9, 2024 14:36
chore: update danger.js
* chore: upgrade turbo

* chore: update React Native / test app

* chore: fix wasm error
* chore: update other deps

* chore: update peer deps

* chore: update deps
* chore: tweak workflow

* chore: update docs
* chore: export types

* chore: gen yarn.lock

* chore: tweaks docs

* refactor: rename types

* chore: add docs
* chore: clean scripts

* chore: tweak turbo
* feat: detect unnecessary render and warn user

feat: capture json representations in an array to compare after for unnecessary rendering

fix: get current testingLibrary for comparasion only react-native for now

fix: save json representation instead of string for rendered component state and compare changes between states using dfs

fix: test name

fix: update comparasion function and save compare results into output.json and show comparation results in the end of the test

fix: update interface and variable names based on pr recommendatations

chore: rebase to v1

* refactor: improve output formatting

* refactor: fix typo

* refactor: remove unnecessary warning

* refactor: improve testing

* refactor: improve report criteria

* refactor: improve naming

* refactor: improve code structure & tests

* refactor: tweaks

* feat: improve markdown output

* refactor: custom tree comparer

* refactor: clean up code

* refactor: update JSON structure

* refactor: use "initial update count" naming

* chore: fix lint

* chore: improve tests

* refactor: tweaks

* docs: update

* refactor: self code review

* docs: tweaks

* chore: add changeset

* refactor: final tweaks

---------

Co-authored-by: Guven Karanfil <guven.karanfil@smartface.io>
Co-authored-by: Maciej Jastrzebski <mdjastrzebski@gmail.com>
@mdjastrzebski mdjastrzebski merged commit ebcf9d6 into main Jun 16, 2024
2 checks passed
@mdjastrzebski mdjastrzebski deleted the v1 branch June 16, 2024 15:17
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.

None yet

2 participants