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

(major) - Tracking PR for v11 #4549

Open
wants to merge 37 commits into
base: main
Choose a base branch
from
Open

(major) - Tracking PR for v11 #4549

wants to merge 37 commits into from

Conversation

JoviDeCroock
Copy link
Member

@JoviDeCroock JoviDeCroock commented Nov 10, 2024

We will do this as a means to remove IE11, cleanup our imports exports and drive support for #4613 in 11 rather than X.

Closes #4613
Closes #4406
Closes #3084
Closes #4442
Closes #4461
Closes #3335 as won't do
Closes #2004 as won't do
Closes #2331 as won't do

Breaking changes

Features

Fixes

Questions

  • Check the impact of moving _dirty and others to _component flags

Can be done outside of a major version

Rejected

Copy link

github-actions bot commented Nov 10, 2024

📊 Tachometer Benchmark Results

Summary

duration

  • create10k: unsure 🔍 -1% - +0% (-9.73ms - +2.54ms)
    preact-local vs preact-main
  • filter-list: unsure 🔍 -0% - +0% (-0.04ms - +0.05ms)
    preact-local vs preact-main
  • hydrate1k: unsure 🔍 -1% - +0% (-1.04ms - +0.19ms)
    preact-local vs preact-main
  • many-updates: unsure 🔍 -1% - +4% (-0.19ms - +0.63ms)
    preact-local vs preact-main
  • replace1k: unsure 🔍 -2% - +1% (-1.44ms - +0.87ms)
    preact-local vs preact-main
  • text-update: unsure 🔍 -4% - +4% (-0.09ms - +0.09ms)
    preact-local vs preact-main
  • todo: faster ✔ 1% - 3% (0.44ms - 1.01ms)
    preact-local vs preact-main
  • update10th1k: unsure 🔍 -4% - +4% (-1.17ms - +1.33ms)
    preact-local vs preact-main

usedJSHeapSize

  • create10k: unsure 🔍 +0% - +0% (+0.02ms - +0.02ms)
    preact-local vs preact-main
  • filter-list: faster ✔ 0% - 3% (0.01ms - 0.05ms)
    preact-local vs preact-main
  • hydrate1k: unsure 🔍 -5% - +3% (-0.48ms - +0.26ms)
    preact-local vs preact-main
  • many-updates: unsure 🔍 -1% - +0% (-0.02ms - +0.02ms)
    preact-local vs preact-main
  • replace1k: unsure 🔍 -0% - +0% (-0.01ms - +0.01ms)
    preact-local vs preact-main
  • text-update: faster ✔ 0% - 1% (0.00ms - 0.01ms)
    preact-local vs preact-main
  • todo: unsure 🔍 -3% - +0% (-0.04ms - +0.00ms)
    preact-local vs preact-main
  • update10th1k: unsure 🔍 -1% - +1% (-0.04ms - +0.02ms)
    preact-local vs preact-main

Results

create10k

duration

VersionAvg timevs preact-localvs preact-main
preact-local928.57ms - 935.20ms-unsure 🔍
-1% - +0%
-9.73ms - +2.54ms
preact-main930.32ms - 940.64msunsure 🔍
-0% - +1%
-2.54ms - +9.73ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local19.20ms - 19.20ms-unsure 🔍
+0% - +0%
+0.02ms - +0.02ms
preact-main19.18ms - 19.18msunsure 🔍
-0% - -0%
-0.02ms - -0.02ms
-
filter-list

duration

VersionAvg timevs preact-localvs preact-main
preact-local16.55ms - 16.60ms-unsure 🔍
-0% - +0%
-0.04ms - +0.05ms
preact-main16.53ms - 16.61msunsure 🔍
-0% - +0%
-0.05ms - +0.04ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local1.52ms - 1.54ms-faster ✔
0% - 3%
0.01ms - 0.05ms
preact-main1.54ms - 1.57msslower ❌
0% - 3%
0.01ms - 0.05ms
-
hydrate1k

duration

VersionAvg timevs preact-localvs preact-main
preact-local73.41ms - 74.09ms-unsure 🔍
-1% - +0%
-1.04ms - +0.19ms
preact-main73.67ms - 74.68msunsure 🔍
-0% - +1%
-0.19ms - +1.04ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local9.49ms - 10.00ms-unsure 🔍
-5% - +3%
-0.48ms - +0.26ms
preact-main9.58ms - 10.12msunsure 🔍
-3% - +5%
-0.26ms - +0.48ms
-
many-updates

duration

VersionAvg timevs preact-localvs preact-main
preact-local16.13ms - 16.89ms-unsure 🔍
-1% - +4%
-0.19ms - +0.63ms
preact-main16.12ms - 16.45msunsure 🔍
-4% - +1%
-0.63ms - +0.19ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local3.76ms - 3.79ms-unsure 🔍
-1% - +0%
-0.02ms - +0.02ms
preact-main3.77ms - 3.79msunsure 🔍
-0% - +1%
-0.02ms - +0.02ms
-
replace1k
  • Browser: chrome-headless
  • Sample size: 100
  • Built by: CI #4615
  • Commit: 28038c2

duration

VersionAvg timevs preact-localvs preact-main
preact-local66.57ms - 68.27ms-unsure 🔍
-2% - +1%
-1.44ms - +0.87ms
preact-main66.92ms - 68.49msunsure 🔍
-1% - +2%
-0.87ms - +1.44ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local2.97ms - 2.99ms-unsure 🔍
-0% - +0%
-0.01ms - +0.01ms
preact-main2.98ms - 2.99msunsure 🔍
-0% - +0%
-0.01ms - +0.01ms
-

run-warmup-0

VersionAvg timevs preact-localvs preact-main
preact-local29.83ms - 30.42ms-unsure 🔍
-1% - +2%
-0.32ms - +0.49ms
preact-main29.76ms - 30.32msunsure 🔍
-2% - +1%
-0.49ms - +0.32ms
-

run-warmup-1

VersionAvg timevs preact-localvs preact-main
preact-local34.14ms - 35.25ms-unsure 🔍
-3% - +2%
-1.10ms - +0.53ms
preact-main34.38ms - 35.58msunsure 🔍
-2% - +3%
-0.53ms - +1.10ms
-

run-warmup-2

VersionAvg timevs preact-localvs preact-main
preact-local25.33ms - 25.71ms-faster ✔
1% - 3%
0.31ms - 0.87ms
preact-main25.90ms - 26.31msslower ❌
1% - 3%
0.31ms - 0.87ms
-

run-warmup-3

VersionAvg timevs preact-localvs preact-main
preact-local25.58ms - 26.63ms-faster ✔
4% - 8%
1.00ms - 2.22ms
preact-main27.41ms - 28.01msslower ❌
4% - 9%
1.00ms - 2.22ms
-

run-warmup-4

VersionAvg timevs preact-localvs preact-main
preact-local24.80ms - 26.00ms-faster ✔
5% - 10%
1.41ms - 2.81ms
preact-main27.15ms - 27.87msslower ❌
5% - 11%
1.41ms - 2.81ms
-

run-final

VersionAvg timevs preact-localvs preact-main
preact-local20.03ms - 20.61ms-unsure 🔍
-3% - +0%
-0.70ms - +0.05ms
preact-main20.41ms - 20.89msunsure 🔍
-0% - +3%
-0.05ms - +0.70ms
-
text-update
  • Browser: chrome-headless
  • Sample size: 100
  • Built by: CI #4615
  • Commit: 28038c2

duration

VersionAvg timevs preact-localvs preact-main
preact-local2.03ms - 2.15ms-unsure 🔍
-4% - +4%
-0.09ms - +0.09ms
preact-main2.02ms - 2.16msunsure 🔍
-4% - +4%
-0.09ms - +0.09ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local1.12ms - 1.12ms-faster ✔
0% - 1%
0.00ms - 0.01ms
preact-main1.12ms - 1.12msslower ❌
0% - 1%
0.00ms - 0.01ms
-
todo

duration

VersionAvg timevs preact-localvs preact-main
preact-local33.52ms - 33.98ms-faster ✔
1% - 3%
0.44ms - 1.01ms
preact-main34.30ms - 34.64msslower ❌
1% - 3%
0.44ms - 1.01ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local1.22ms - 1.25ms-unsure 🔍
-3% - +0%
-0.04ms - +0.00ms
preact-main1.24ms - 1.27msunsure 🔍
-0% - +3%
-0.00ms - +0.04ms
-
update10th1k

duration

VersionAvg timevs preact-localvs preact-main
preact-local29.46ms - 31.33ms-unsure 🔍
-4% - +4%
-1.17ms - +1.33ms
preact-main29.49ms - 31.15msunsure 🔍
-4% - +4%
-1.33ms - +1.17ms
-

usedJSHeapSize

VersionAvg timevs preact-localvs preact-main
preact-local2.94ms - 2.98ms-unsure 🔍
-1% - +1%
-0.04ms - +0.02ms
preact-main2.95ms - 2.99msunsure 🔍
-1% - +1%
-0.02ms - +0.04ms
-

tachometer-reporter-action v2 for CI

Copy link

github-actions bot commented Nov 10, 2024

Size Change: -32.1 kB (-40.93%) 🎉

Total Size: 46.4 kB

Filename Size Change
compat/dist/compat.js 3.69 kB -427 B (-10.36%) 👏
compat/dist/compat.mjs 3.61 kB -437 B (-10.8%) 👏
compat/dist/compat.module.js 0 B -4.05 kB (removed) 🏆
compat/dist/compat.umd.js 3.75 kB -436 B (-10.41%) 👏
debug/dist/debug.js 3.85 kB +35 B (+0.92%)
debug/dist/debug.mjs 3.85 kB +35 B (+0.92%)
debug/dist/debug.module.js 0 B -3.82 kB (removed) 🏆
debug/dist/debug.umd.js 3.94 kB +40 B (+1.03%)
devtools/dist/devtools.mjs 271 B -3 B (-1.09%)
devtools/dist/devtools.module.js 0 B -274 B (removed) 🏆
dist/preact.js 4.61 kB -135 B (-2.85%)
dist/preact.min.js 0 B -4.76 kB (removed) 🏆
dist/preact.min.module.js 0 B -4.77 kB (removed) 🏆
dist/preact.min.umd.js 0 B -4.79 kB (removed) 🏆
dist/preact.mjs 4.62 kB -134 B (-2.82%)
dist/preact.module.js 0 B -4.76 kB (removed) 🏆
dist/preact.umd.js 4.68 kB -115 B (-2.4%)
hooks/dist/hooks.js 1.55 kB +13 B (+0.85%)
hooks/dist/hooks.mjs 1.58 kB +8 B (+0.51%)
hooks/dist/hooks.module.js 0 B -1.57 kB (removed) 🏆
hooks/dist/hooks.umd.js 1.62 kB +11 B (+0.68%)
jsx-runtime/dist/jsxRuntime.js 861 B -117 B (-11.96%) 👏
jsx-runtime/dist/jsxRuntime.mjs 830 B -122 B (-12.82%) 👏
jsx-runtime/dist/jsxRuntime.module.js 0 B -952 B (removed) 🏆
jsx-runtime/dist/jsxRuntime.umd.js 934 B -118 B (-11.22%) 👏
test-utils/dist/testUtils.mjs 473 B -4 B (-0.84%)
test-utils/dist/testUtils.module.js 0 B -477 B (removed) 🏆
ℹ️ View Unchanged
Filename Size
devtools/dist/devtools.js 260 B
devtools/dist/devtools.umd.js 346 B
test-utils/dist/testUtils.js 473 B
test-utils/dist/testUtils.umd.js 555 B

compressed-size-action

@coveralls
Copy link

coveralls commented Nov 10, 2024

Coverage Status

coverage: 99.456% (-0.2%) from 99.61%
when pulling 28038c2 on v11-2
into 625aacf on main.

@JoviDeCroock JoviDeCroock force-pushed the v11-2 branch 4 times, most recently from af99557 to 067be2b Compare November 10, 2024 13:13
@rschristian
Copy link
Member

#4406 would be another easy thing to fit in, swapping out our (pretty much unused & problematic) package.json##browser condition for package.json##module

@JoviDeCroock JoviDeCroock force-pushed the v11-2 branch 2 times, most recently from a12176d to 14ea8f6 Compare November 23, 2024 08:23
@JoviDeCroock JoviDeCroock force-pushed the v11-2 branch 2 times, most recently from 5caed5c to 39339b2 Compare December 22, 2024 09:19
@JoviDeCroock JoviDeCroock force-pushed the v11-2 branch 2 times, most recently from d328910 to 41622b2 Compare February 11, 2025 08:40
@JoviDeCroock JoviDeCroock marked this pull request as ready for review February 11, 2025 09:45
@JoviDeCroock JoviDeCroock changed the title V11 2 (major) - Tracking PR for v11 Feb 11, 2025
rschristian and others added 27 commits March 9, 2025 08:31
* Revert assign and avoid repeating indexed access

* Check parentNode instead

* Use flag

* Remove type

* Remove todo file
* Forward ref by default

* Optimizations
* Move `defaultProps` into `preact/compat`

This will be handled in `options.vnode` for function/class components.
This hook gets called for every invocation of `jsx`/`createElement` and
`cloneElement`.

* Try it

* refactor: This is horrific but seems to work? (#4662)

---------

Co-authored-by: Ryan Christian <33403762+rschristian@users.noreply.github.com>
* Remove unused imports

* Comment denoted hydration

* Make it work

* Golfies
* Remove unused imports

* refactor: Switch to Object.is for hook args

* refactor: Copy to `useReducer` & store `Object` accessor

* test: Add tests for `useEffect` & `useState` w/ `NaN`

Co-authored-by: jayrobin <james.michael.robinson@googlemail.com>

---------

Co-authored-by: jdecroock <decroockjovi@gmail.com>
Co-authored-by: jayrobin <james.michael.robinson@googlemail.com>
This reverts commit 6b8bfa2.
* refactor: Switch to `package.json#exports.module`, drop `.min` builds, &  use `.mjs` exclusively

* chore: Remove leftover CJS shell

* test: Fix export for karma

* fix: coverage not generated in minify tests

---------

Co-authored-by: Marvin Hagemeister <hello@marvinh.dev>
* Remove automatic px suffix

* Remove from jsx-runtime
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
5 participants