-
Notifications
You must be signed in to change notification settings - Fork 813
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
Update dependency preact to v10.3.4 #14996
Conversation
Caution: This PR has changes that must be merged to WordPress.com |
Howdy! The Jetpack team has disappeared for a few days to a secret island lair to concoct new ways to make Jetpack one hundred billion percent better. As a result, your Pull Request may not be reviewed right away. Do not worry, we will be back next week to look at your work! Thank you for your understanding. |
This is an automated check which relies on |
renovate[bot], Your synced wpcom patch D40356-code has been updated. |
r204437-wpcom |
This PR contains the following updates:
10.3.2
->10.3.4
Release Notes
preactjs/preact
v10.3.4
Compare Source
This is a maintenance release, upgrading should be free, please do report it in case you encounter any issues.
render-queue sorting
Preact batches all rendering work and executes from the top of the Virtual DOM tree to the bottom. However, if new rendering tasks were added during an existing render, they were processed without regard for their depth in the tree.
Thanks to a clever fix from @jviide, Preact's render queue is now immutable. Any new tasks added during rendering are placed into a second batch.
material-ui integration
A peculiar issue users were seeing with material-ui related to a ref never getting populated, we went very deep into the codebase and found out that our forwardRef was a bit too eager, at creation it would already start forwarding. We moved this to a later point, now just before the vnode will get diffed the ref will be forwarded.
Fixes:
Maintenance:
v10.3.3
Compare Source
tl;dr: Some minor changes which make this release safe to upgrade for everyone!
Another week, another Preact release! It seems like the previous one wasn't too long ago, but there are already so many cool changes in
master
that we're eager to bundle them in a neat release!Much improved conditional rendering
One insanely cool and very important change was done by @andrewiggins, who woke up one day and found a very elegant solution to handling conditionally rendered elements. Most virtual-dom-based frameworks mark a falsy result with some sort placeholder (sometimes referred to as "holes"), so that the diffing algorithm can ensure that elements are not moved around needlessly.
It's not just for performance though as they are some real world consequences to moving nodes around. The most common annoyance is
<input>
-elements losing focus whenever a parent is moved. With this change we are pretty confident that we squashed all known issues on that front 👍Improved SVG attribute casing
SVG also received a big change by @steveharrison . It's his first contribution Preact and he already knocked it out of the park with an excellent PR. HE went through the whole SVG spec and noticed that we didn't match some of the weird casings of SVG-Attributes properly and his PR remedies that beautifully! 💯
Preact sightings
@pksjce finished her YouTube series where she reads through a portion of the Preact source code. With that she helped us tremendously in spotting areas in code which lacked comments and finally pushed us to create a proper "Contributing" guide. If you are considering contributing to Preact, this short document is well worth a read as it contains an overview of the repo's structure and answers for the most common questions regarding our code. That said if you feel like something is missing or you do have troubles understanding some sections of the source, please reach out to us! We're here to help and feedback about friction points is crucial to making Preact better for everyone 👍
Checking our official website you may have noticed some slight changes here and there. They're mostly to simplify navigation or to give our docs a more fitting structure. The long term plan is to integrate our learnings about the most common support questions we get and fill in those spots. @NJalal7 spotted a few of those areas and even found a bug in Preact in the process that we we're promptly able to fix 🙌
Thank you so much to everyone who contributed code, helped us in narrowing down issues or participated in making Preact even better. Preact wouldn't be were it is now without you all ❤️
Features
isPropagationStopped
fn to event (#2378, thanks @reznord)isDefaultPrevented
fn to event (#2377, thanks @teodragovic)preact/debug
(#2362, thanks @developit)Bug Fixes
event.isPropagationStopped()
(#2380, thanks @38elements)setState
insidecomponentWillMount
(#2367, thanks @marvinhagemeister)useEffect/useLayoutEffect
(#2358, thanks @JoviDeCroock)null
placeholder DOM placement (#2355, thanks @andrewiggins)Typings
options.event
type definition (#2381, thanks @38elements)Maintenance
excessDomChildren
into the same code block (#2356, thanks @andrewiggins)null
placeholders (#2352, thanks @andrewiggins)Renovate configuration
📅 Schedule: "every weekend" in timezone UTC.
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻️ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.