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

Get rid of eager unmounting #4484

Merged
merged 1 commit into from
Aug 28, 2024
Merged

Get rid of eager unmounting #4484

merged 1 commit into from
Aug 28, 2024

Conversation

JoviDeCroock
Copy link
Member

After landing #4483 I was exploring whether we can remove code as our skew is now very accurate. Given our optimized calculation we actually benefit from these still being present in the DOM as movement targets.

Copy link

github-actions bot commented Aug 28, 2024

📊 Tachometer Benchmark Results

Summary

duration

  • create10k: unsure 🔍 -1% - +2% (-5.90ms - +15.80ms)
    preact-local vs preact-main
  • filter-list: unsure 🔍 -1% - +0% (-0.09ms - +0.07ms)
    preact-local vs preact-main
  • hydrate1k: unsure 🔍 -0% - +1% (-0.21ms - +0.67ms)
    preact-local vs preact-main
  • many-updates: unsure 🔍 -1% - +2% (-0.18ms - +0.26ms)
    preact-local vs preact-main
  • replace1k: unsure 🔍 -3% - +2% (-2.37ms - +1.39ms)
    preact-local vs preact-main
  • text-update: unsure 🔍 -5% - +2% (-0.09ms - +0.04ms)
    preact-local vs preact-main
  • todo: unsure 🔍 -0% - +1% (-0.04ms - +0.26ms)
    preact-local vs preact-main
  • update10th1k: unsure 🔍 -5% - +2% (-1.50ms - +0.55ms)
    preact-local vs preact-main

usedJSHeapSize

  • create10k: unsure 🔍 -0% - -0% (-0.00ms - -0.00ms)
    preact-local vs preact-main
  • filter-list: unsure 🔍 -0% - -0% (-0.01ms - -0.00ms)
    preact-local vs preact-main
  • hydrate1k: unsure 🔍 -2% - +1% (-0.31ms - +0.20ms)
    preact-local vs preact-main
  • many-updates: unsure 🔍 -0% - -0% (-0.01ms - -0.00ms)
    preact-local vs preact-main
  • replace1k: unsure 🔍 -1% - +1% (-0.03ms - +0.02ms)
    preact-local vs preact-main
  • text-update: unsure 🔍 -0% - -0% (-0.00ms - -0.00ms)
    preact-local vs preact-main
  • todo: faster ✔ 0% - 1% (0.01ms - 0.01ms)
    preact-local vs preact-main
  • update10th1k: unsure 🔍 -0% - +0% (-0.01ms - +0.00ms)
    preact-local vs preact-main

Results

create10k

duration

VersionAvg timevs preact-localvs preact-main
preact-local877.57ms - 897.07ms-unsure 🔍
-1% - +2%
-5.90ms - +15.80ms
preact-main877.62ms - 887.12msunsure 🔍
-2% - +1%
-15.80ms - +5.90ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local25.31ms - 25.31ms-unsure 🔍
-0% - -0%
-0.00ms - -0.00ms
preact-main25.31ms - 25.31msunsure 🔍
+0% - +0%
+0.00ms - +0.00ms
-
filter-list

duration

VersionAvg timevs preact-localvs preact-main
preact-local16.61ms - 16.71ms-unsure 🔍
-1% - +0%
-0.09ms - +0.07ms
preact-main16.61ms - 16.72msunsure 🔍
-0% - +1%
-0.07ms - +0.09ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local1.69ms - 1.70ms-unsure 🔍
-0% - -0%
-0.01ms - -0.00ms
preact-main1.70ms - 1.70msunsure 🔍
+0% - +0%
+0.00ms - +0.01ms
-
hydrate1k

duration

VersionAvg timevs preact-localvs preact-main
preact-local69.79ms - 70.59ms-unsure 🔍
-0% - +1%
-0.21ms - +0.67ms
preact-main69.78ms - 70.14msunsure 🔍
-1% - +0%
-0.67ms - +0.21ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local15.58ms - 15.91ms-unsure 🔍
-2% - +1%
-0.31ms - +0.20ms
preact-main15.61ms - 15.99msunsure 🔍
-1% - +2%
-0.20ms - +0.31ms
-
many-updates

duration

VersionAvg timevs preact-localvs preact-main
preact-local16.60ms - 16.90ms-unsure 🔍
-1% - +2%
-0.18ms - +0.26ms
preact-main16.56ms - 16.88msunsure 🔍
-2% - +1%
-0.26ms - +0.18ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local4.61ms - 4.61ms-unsure 🔍
-0% - -0%
-0.01ms - -0.00ms
preact-main4.62ms - 4.62msunsure 🔍
+0% - +0%
+0.00ms - +0.01ms
-
replace1k

duration

VersionAvg timevs preact-localvs preact-main
preact-local74.92ms - 77.37ms-unsure 🔍
-3% - +2%
-2.37ms - +1.39ms
preact-main75.21ms - 78.06msunsure 🔍
-2% - +3%
-1.39ms - +2.37ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local3.48ms - 3.52ms-unsure 🔍
-1% - +1%
-0.03ms - +0.02ms
preact-main3.49ms - 3.52msunsure 🔍
-1% - +1%
-0.02ms - +0.03ms
-

run-warmup-0

VersionAvg timevs preact-localvs preact-main
preact-local28.82ms - 29.78ms-unsure 🔍
-1% - +3%
-0.19ms - +0.91ms
preact-main28.68ms - 29.21msunsure 🔍
-3% - +1%
-0.91ms - +0.19ms
-

run-warmup-1

VersionAvg timevs preact-localvs preact-main
preact-local34.01ms - 35.42ms-unsure 🔍
-3% - +4%
-0.88ms - +1.23ms
preact-main33.76ms - 35.32msunsure 🔍
-4% - +3%
-1.23ms - +0.88ms
-

run-warmup-2

VersionAvg timevs preact-localvs preact-main
preact-local25.06ms - 25.65ms-unsure 🔍
-3% - +0%
-0.88ms - +0.03ms
preact-main25.44ms - 26.13msunsure 🔍
-0% - +3%
-0.03ms - +0.88ms
-

run-warmup-3

VersionAvg timevs preact-localvs preact-main
preact-local30.01ms - 31.47ms-unsure 🔍
-3% - +3%
-1.03ms - +1.05ms
preact-main29.99ms - 31.48msunsure 🔍
-3% - +3%
-1.05ms - +1.03ms
-

run-warmup-4

VersionAvg timevs preact-localvs preact-main
preact-local22.03ms - 23.67ms-unsure 🔍
-7% - +4%
-1.52ms - +0.84ms
preact-main22.34ms - 24.04msunsure 🔍
-4% - +7%
-0.84ms - +1.52ms
-

run-final

VersionAvg timevs preact-localvs preact-main
preact-local22.52ms - 23.71ms-unsure 🔍
-6% - +1%
-1.41ms - +0.34ms
preact-main23.01ms - 24.30msunsure 🔍
-2% - +6%
-0.34ms - +1.41ms
-
text-update

duration

VersionAvg timevs preact-localvs preact-main
preact-local1.92ms - 2.01ms-unsure 🔍
-5% - +2%
-0.09ms - +0.04ms
preact-main1.94ms - 2.04msunsure 🔍
-2% - +5%
-0.04ms - +0.09ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local0.98ms - 0.98ms-unsure 🔍
-0% - -0%
-0.00ms - -0.00ms
preact-main0.98ms - 0.98msunsure 🔍
+0% - +0%
+0.00ms - +0.00ms
-
todo

duration

VersionAvg timevs preact-localvs preact-main
preact-local26.33ms - 26.57ms-unsure 🔍
-0% - +1%
-0.04ms - +0.26ms
preact-main26.26ms - 26.43msunsure 🔍
-1% - +0%
-0.26ms - +0.04ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local1.24ms - 1.25ms-faster ✔
0% - 1%
0.01ms - 0.01ms
preact-main1.25ms - 1.25msslower ❌
0% - 1%
0.01ms - 0.01ms
-
update10th1k

duration

VersionAvg timevs preact-localvs preact-main
preact-local30.61ms - 32.00ms-unsure 🔍
-5% - +2%
-1.50ms - +0.55ms
preact-main31.02ms - 32.54msunsure 🔍
-2% - +5%
-0.55ms - +1.50ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local3.55ms - 3.56ms-unsure 🔍
-0% - +0%
-0.01ms - +0.00ms
preact-main3.56ms - 3.57msunsure 🔍
-0% - +0%
-0.00ms - +0.01ms
-

tachometer-reporter-action v2 for Benchmarks

Copy link

github-actions bot commented Aug 28, 2024

Size Change: -196 B (-0.32%)

Total Size: 61.8 kB

Filename Size Change
dist/preact.js 4.67 kB -33 B (-0.7%)
dist/preact.min.js 4.7 kB -33 B (-0.7%)
dist/preact.min.module.js 4.7 kB -33 B (-0.7%)
dist/preact.min.umd.js 4.72 kB -33 B (-0.69%)
dist/preact.module.js 4.69 kB -31 B (-0.66%)
dist/preact.umd.js 4.74 kB -33 B (-0.69%)
ℹ️ View Unchanged
Filename Size
compat/dist/compat.js 4.11 kB
compat/dist/compat.module.js 4.04 kB
compat/dist/compat.umd.js 4.18 kB
debug/dist/debug.js 3.7 kB
debug/dist/debug.module.js 3.71 kB
debug/dist/debug.umd.js 3.78 kB
devtools/dist/devtools.js 259 B
devtools/dist/devtools.module.js 274 B
devtools/dist/devtools.umd.js 345 B
hooks/dist/hooks.js 1.53 kB
hooks/dist/hooks.module.js 1.56 kB
hooks/dist/hooks.umd.js 1.6 kB
jsx-runtime/dist/jsxRuntime.js 981 B
jsx-runtime/dist/jsxRuntime.module.js 956 B
jsx-runtime/dist/jsxRuntime.umd.js 1.06 kB
test-utils/dist/testUtils.js 451 B
test-utils/dist/testUtils.module.js 456 B
test-utils/dist/testUtils.umd.js 536 B

compressed-size-action

@coveralls
Copy link

coveralls commented Aug 28, 2024

Coverage Status

coverage: 99.484% (-0.002%) from 99.486%
when pulling f5357fd on get-rid-of-eager-unmounting
into 2aa25df on main.

@JoviDeCroock JoviDeCroock force-pushed the get-rid-of-eager-unmounting branch from ed35556 to f5357fd Compare August 28, 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.

3 participants