Skip to content
New issue

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

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

Already on GitHub? # to your account

fix: correctly restore _original #4280

Merged
merged 2 commits into from
Feb 15, 2024
Merged

Conversation

JoviDeCroock
Copy link
Member

We have to restore _original to the oldVNode value else the counter in createElement gets outdated. We did this implicitly before #4171 by copying the oldVNode rather than the new one.

fixes #4279

Copy link

github-actions bot commented Feb 15, 2024

📊 Tachometer Benchmark Results

Summary

duration

  • 02_replace1k: unsure 🔍 -2% - +1% (-1.20ms - +1.07ms)
    preact-local vs preact-main
  • 03_update10th1k_x16: unsure 🔍 -6% - +0% (-2.24ms - +0.02ms)
    preact-local vs preact-main
  • 07_create10k: unsure 🔍 -1% - +1% (-8.68ms - +8.34ms)
    preact-local vs preact-main
  • filter_list: unsure 🔍 -1% - +1% (-0.20ms - +0.12ms)
    preact-local vs preact-main
  • hydrate1k: unsure 🔍 -1% - +2% (-0.91ms - +1.84ms)
    preact-local vs preact-main
  • many_updates: unsure 🔍 -5% - +1% (-0.82ms - +0.16ms)
    preact-local vs preact-main
  • text_update: unsure 🔍 -3% - +3% (-0.07ms - +0.08ms)
    preact-local vs preact-main
  • todo: unsure 🔍 -3% - +2% (-0.91ms - +0.45ms)
    preact-local vs preact-main

usedJSHeapSize

  • 02_replace1k: unsure 🔍 -0% - +0% (-0.00ms - +0.00ms)
    preact-local vs preact-main
  • 03_update10th1k_x16: unsure 🔍 -0% - +0% (-0.01ms - +0.00ms)
    preact-local vs preact-main
  • 07_create10k: unsure 🔍 -0% - +0% (-0.00ms - +0.00ms)
    preact-local vs preact-main
  • filter_list: unsure 🔍 -0% - +0% (-0.00ms - +0.00ms)
    preact-local vs preact-main
  • hydrate1k: unsure 🔍 -0% - +0% (-0.00ms - +0.00ms)
    preact-local vs preact-main
  • many_updates: unsure 🔍 -0% - +0% (-0.00ms - +0.00ms)
    preact-local vs preact-main
  • text_update: unsure 🔍 +0% - +0% (+0.00ms - +0.00ms)
    preact-local vs preact-main
  • todo: unsure 🔍 +0% - +0% (+0.00ms - +0.00ms)
    preact-local vs preact-main

Results

02_replace1k

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main76.90ms - 78.39ms-unsure 🔍
-1% - +2%
-1.07ms - +1.20ms
unsure 🔍
-2% - +1%
-1.48ms - +0.93ms
preact-local76.72ms - 78.44msunsure 🔍
-2% - +1%
-1.20ms - +1.07ms
-unsure 🔍
-2% - +1%
-1.62ms - +0.94ms
preact-hooks76.97ms - 78.88msunsure 🔍
-1% - +2%
-0.93ms - +1.48ms
unsure 🔍
-1% - +2%
-0.94ms - +1.62ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main3.48ms - 3.48ms-unsure 🔍
-0% - +0%
-0.00ms - +0.00ms
faster ✔
1% - 1%
0.02ms - 0.02ms
preact-local3.48ms - 3.48msunsure 🔍
-0% - +0%
-0.00ms - +0.00ms
-faster ✔
1% - 1%
0.02ms - 0.02ms
preact-hooks3.50ms - 3.50msslower ❌
1% - 1%
0.02ms - 0.02ms
slower ❌
1% - 1%
0.02ms - 0.02ms
-

run-warmup-0

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main29.90ms - 30.72ms-unsure 🔍
-3% - +1%
-0.86ms - +0.44ms
unsure 🔍
-3% - +1%
-1.03ms - +0.20ms
preact-local30.01ms - 31.03msunsure 🔍
-1% - +3%
-0.44ms - +0.86ms
-unsure 🔍
-3% - +2%
-0.89ms - +0.48ms
preact-hooks30.27ms - 31.18msunsure 🔍
-1% - +3%
-0.20ms - +1.03ms
unsure 🔍
-2% - +3%
-0.48ms - +0.89ms
-

run-warmup-1

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main39.65ms - 41.76ms-unsure 🔍
-0% - +6%
-0.14ms - +2.44ms
unsure 🔍
-4% - +2%
-1.47ms - +0.85ms
preact-local38.81ms - 40.31msunsure 🔍
-6% - +0%
-2.44ms - +0.14ms
-faster ✔
1% - 6%
0.57ms - 2.35ms
preact-hooks40.54ms - 41.50msunsure 🔍
-2% - +4%
-0.85ms - +1.47ms
slower ❌
1% - 6%
0.57ms - 2.35ms
-

run-warmup-2

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main26.29ms - 26.70ms-unsure 🔍
-1% - +1%
-0.35ms - +0.17ms
unsure 🔍
-1% - +1%
-0.34ms - +0.21ms
preact-local26.43ms - 26.75msunsure 🔍
-1% - +1%
-0.17ms - +0.35ms
-unsure 🔍
-1% - +1%
-0.21ms - +0.27ms
preact-hooks26.39ms - 26.74msunsure 🔍
-1% - +1%
-0.21ms - +0.34ms
unsure 🔍
-1% - +1%
-0.27ms - +0.21ms
-

run-warmup-3

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main24.93ms - 26.12ms-unsure 🔍
-4% - +3%
-0.90ms - +0.65ms
unsure 🔍
-3% - +3%
-0.79ms - +0.85ms
preact-local25.15ms - 26.15msunsure 🔍
-3% - +4%
-0.65ms - +0.90ms
-unsure 🔍
-2% - +4%
-0.60ms - +0.91ms
preact-hooks24.93ms - 26.06msunsure 🔍
-3% - +3%
-0.85ms - +0.79ms
unsure 🔍
-4% - +2%
-0.91ms - +0.60ms
-

run-warmup-4

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main27.07ms - 28.61ms-unsure 🔍
-5% - +2%
-1.51ms - +0.71ms
faster ✔
1% - 7%
0.39ms - 2.12ms
preact-local27.44ms - 29.04msunsure 🔍
-3% - +5%
-0.71ms - +1.51ms
-unsure 🔍
-6% - +0%
-1.75ms - +0.04ms
preact-hooks28.70ms - 29.49msslower ❌
1% - 8%
0.39ms - 2.12ms
unsure 🔍
-0% - +6%
-0.04ms - +1.75ms
-

run-final

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main22.72ms - 23.68ms-unsure 🔍
-4% - +3%
-0.87ms - +0.59ms
unsure 🔍
-4% - +1%
-1.03ms - +0.19ms
preact-local22.78ms - 23.89msunsure 🔍
-3% - +4%
-0.59ms - +0.87ms
-unsure 🔍
-4% - +2%
-0.96ms - +0.39ms
preact-hooks23.24ms - 24.00msunsure 🔍
-1% - +4%
-0.19ms - +1.03ms
unsure 🔍
-2% - +4%
-0.39ms - +0.96ms
-
03_update10th1k_x16

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main34.87ms - 36.44ms-unsure 🔍
-0% - +7%
-0.02ms - +2.24ms
unsure 🔍
-0% - +6%
-0.08ms - +2.20ms
preact-local33.73ms - 35.36msunsure 🔍
-6% - +0%
-2.24ms - +0.02ms
-unsure 🔍
-3% - +3%
-1.21ms - +1.11ms
preact-hooks33.76ms - 35.42msunsure 🔍
-6% - +0%
-2.20ms - +0.08ms
unsure 🔍
-3% - +4%
-1.11ms - +1.21ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main3.44ms - 3.45ms-unsure 🔍
-0% - +0%
-0.00ms - +0.01ms
faster ✔
0% - 1%
0.01ms - 0.02ms
preact-local3.44ms - 3.45msunsure 🔍
-0% - +0%
-0.01ms - +0.00ms
-faster ✔
0% - 1%
0.01ms - 0.02ms
preact-hooks3.46ms - 3.47msslower ❌
0% - 1%
0.01ms - 0.02ms
slower ❌
0% - 1%
0.01ms - 0.02ms
-
07_create10k

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main914.95ms - 927.17ms-unsure 🔍
-1% - +1%
-8.34ms - +8.68ms
unsure 🔍
-1% - +1%
-7.16ms - +6.85ms
preact-local914.97ms - 926.82msunsure 🔍
-1% - +1%
-8.68ms - +8.34ms
-unsure 🔍
-1% - +1%
-7.17ms - +6.52ms
preact-hooks917.79ms - 924.65msunsure 🔍
-1% - +1%
-6.85ms - +7.16ms
unsure 🔍
-1% - +1%
-6.52ms - +7.17ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main26.48ms - 26.48ms-unsure 🔍
-0% - +0%
-0.00ms - +0.00ms
unsure 🔍
-0% - -0%
-0.02ms - -0.02ms
preact-local26.48ms - 26.48msunsure 🔍
-0% - +0%
-0.00ms - +0.00ms
-unsure 🔍
-0% - -0%
-0.02ms - -0.02ms
preact-hooks26.50ms - 26.50msunsure 🔍
+0% - +0%
+0.02ms - +0.02ms
unsure 🔍
+0% - +0%
+0.02ms - +0.02ms
-
filter_list

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main16.63ms - 16.92ms-unsure 🔍
-1% - +1%
-0.12ms - +0.20ms
unsure 🔍
-0% - +1%
-0.07ms - +0.24ms
preact-local16.67ms - 16.81msunsure 🔍
-1% - +1%
-0.20ms - +0.12ms
-unsure 🔍
-0% - +1%
-0.04ms - +0.14ms
preact-hooks16.63ms - 16.75msunsure 🔍
-1% - +0%
-0.24ms - +0.07ms
unsure 🔍
-1% - +0%
-0.14ms - +0.04ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main1.49ms - 1.50ms-unsure 🔍
-0% - +0%
-0.00ms - +0.00ms
faster ✔
2% - 2%
0.02ms - 0.03ms
preact-local1.49ms - 1.50msunsure 🔍
-0% - +0%
-0.00ms - +0.00ms
-faster ✔
2% - 2%
0.02ms - 0.03ms
preact-hooks1.52ms - 1.52msslower ❌
2% - 2%
0.02ms - 0.03ms
slower ❌
2% - 2%
0.02ms - 0.03ms
-
hydrate1k

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main79.34ms - 81.16ms-unsure 🔍
-2% - +1%
-1.84ms - +0.91ms
unsure 🔍
-1% - +2%
-0.89ms - +1.33ms
preact-local79.69ms - 81.75msunsure 🔍
-1% - +2%
-0.91ms - +1.84ms
-unsure 🔍
-1% - +2%
-0.53ms - +1.90ms
preact-hooks79.38ms - 80.68msunsure 🔍
-2% - +1%
-1.33ms - +0.89ms
unsure 🔍
-2% - +1%
-1.90ms - +0.53ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main6.17ms - 6.18ms-unsure 🔍
-0% - +0%
-0.00ms - +0.00ms
unsure 🔍
-0% - -0%
-0.03ms - -0.02ms
preact-local6.17ms - 6.18msunsure 🔍
-0% - +0%
-0.00ms - +0.00ms
-unsure 🔍
-0% - -0%
-0.03ms - -0.02ms
preact-hooks6.20ms - 6.20msunsure 🔍
+0% - +0%
+0.02ms - +0.03ms
unsure 🔍
+0% - +0%
+0.02ms - +0.03ms
-
many_updates

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main16.86ms - 17.63ms-unsure 🔍
-1% - +5%
-0.16ms - +0.82ms
unsure 🔍
-3% - +3%
-0.47ms - +0.57ms
preact-local16.61ms - 17.23msunsure 🔍
-5% - +1%
-0.82ms - +0.16ms
-unsure 🔍
-4% - +1%
-0.74ms - +0.19ms
preact-hooks16.85ms - 17.54msunsure 🔍
-3% - +3%
-0.57ms - +0.47ms
unsure 🔍
-1% - +4%
-0.19ms - +0.74ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main4.60ms - 4.60ms-unsure 🔍
-0% - +0%
-0.00ms - +0.00ms
unsure 🔍
-0% - -0%
-0.02ms - -0.02ms
preact-local4.60ms - 4.60msunsure 🔍
-0% - +0%
-0.00ms - +0.00ms
-unsure 🔍
-0% - -0%
-0.02ms - -0.02ms
preact-hooks4.62ms - 4.62msunsure 🔍
+0% - +0%
+0.02ms - +0.02ms
unsure 🔍
+0% - +0%
+0.02ms - +0.02ms
-
text_update

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main2.54ms - 2.64ms-unsure 🔍
-3% - +3%
-0.08ms - +0.07ms
faster ✔
5% - 10%
0.14ms - 0.30ms
preact-local2.54ms - 2.64msunsure 🔍
-3% - +3%
-0.07ms - +0.08ms
-faster ✔
5% - 10%
0.14ms - 0.29ms
preact-hooks2.75ms - 2.87msslower ❌
5% - 12%
0.14ms - 0.30ms
slower ❌
5% - 11%
0.14ms - 0.29ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main0.72ms - 0.72ms-unsure 🔍
-0% - -0%
-0.00ms - -0.00ms
faster ✔
3% - 3%
0.02ms - 0.02ms
preact-local0.72ms - 0.72msunsure 🔍
+0% - +0%
+0.00ms - +0.00ms
-faster ✔
3% - 3%
0.02ms - 0.02ms
preact-hooks0.75ms - 0.75msslower ❌
3% - 3%
0.02ms - 0.02ms
slower ❌
3% - 3%
0.02ms - 0.02ms
-
todo

duration

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main26.18ms - 27.49ms-unsure 🔍
-2% - +3%
-0.45ms - +0.91ms
unsure 🔍
-5% - +0%
-1.26ms - +0.12ms
preact-local26.42ms - 26.80msunsure 🔍
-3% - +2%
-0.91ms - +0.45ms
-faster ✔
2% - 4%
0.51ms - 1.09ms
preact-hooks27.19ms - 27.63msunsure 🔍
-1% - +5%
-0.12ms - +1.26ms
slower ❌
2% - 4%
0.51ms - 1.09ms
-

usedJSHeapSize

VersionAvg timevs preact-mainvs preact-localvs preact-hooks
preact-main0.95ms - 0.95ms-unsure 🔍
-0% - -0%
-0.00ms - -0.00ms
faster ✔
3% - 3%
0.03ms - 0.03ms
preact-local0.95ms - 0.95msunsure 🔍
+0% - +0%
+0.00ms - +0.00ms
-faster ✔
3% - 3%
0.03ms - 0.03ms
preact-hooks0.98ms - 0.98msslower ❌
3% - 3%
0.03ms - 0.03ms
slower ❌
3% - 3%
0.03ms - 0.03ms
-

tachometer-reporter-action v2 for Benchmarks

Copy link

github-actions bot commented Feb 15, 2024

Size Change: +10 B (0%)

Total Size: 60.1 kB

Filename Size Change
dist/preact.js 4.55 kB +1 B
dist/preact.min.js 4.59 kB +1 B
dist/preact.min.module.js 4.58 kB +2 B (0%)
dist/preact.min.umd.js 4.61 kB +2 B (0%)
dist/preact.module.js 4.57 kB +2 B (0%)
dist/preact.umd.js 4.63 kB +2 B (0%)
ℹ️ View Unchanged
Filename Size Change
compat/dist/compat.js 4 kB 0 B
compat/dist/compat.module.js 3.92 kB 0 B
compat/dist/compat.umd.js 4.06 kB 0 B
debug/dist/debug.js 3.52 kB 0 B
debug/dist/debug.module.js 3.52 kB 0 B
debug/dist/debug.umd.js 3.6 kB 0 B
devtools/dist/devtools.js 232 B 0 B
devtools/dist/devtools.module.js 241 B 0 B
devtools/dist/devtools.umd.js 316 B 0 B
hooks/dist/hooks.js 1.55 kB 0 B
hooks/dist/hooks.module.js 1.59 kB 0 B
hooks/dist/hooks.umd.js 1.63 kB 0 B
jsx-runtime/dist/jsxRuntime.js 963 B 0 B
jsx-runtime/dist/jsxRuntime.module.js 938 B 0 B
jsx-runtime/dist/jsxRuntime.umd.js 1.04 kB 0 B
test-utils/dist/testUtils.js 453 B 0 B
test-utils/dist/testUtils.module.js 454 B 0 B
test-utils/dist/testUtils.umd.js 536 B 0 B

compressed-size-action

@coveralls
Copy link

coveralls commented Feb 15, 2024

Coverage Status

coverage: 99.472%. remained the same
when pulling fe2899a on correctly-restore-original
into 65310c6 on main.

Copy link
Member

@marvinhagemeister marvinhagemeister left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great find!

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Problem with rendering child component on props changes
3 participants