Releases: preactjs/preact
Releases · preactjs/preact
10.22.1
Fixes
- Only check is connected for dom nodes (#4409, thanks @JoviDeCroock)
- Prevent useMemo from being too lazy with repeated renders (#4426, thanks @JoviDeCroock)
- Replace isConnected with parentDom.contains (#4421, thanks @JoviDeCroock)
- Graciously handle array shuffling (#4413, thanks @JoviDeCroock)
- Support popover boolean attribute (#4393, thanks @JoviDeCroock)
Types
- Improve React compatibility for
Ref
type. (#4403, thanks @maxbrieiev) - Expose stream render from
preact-render-to-string
(#4395, thanks @Austaras)
Maintenance
- Prefer
globalThis
overwindow
if available (#4401, thanks @marvinhagemeister) - Bump lockfile version to v3 (#4398, thanks @rschristian)
Performance
- Improve perf by skipping some lifecycle hooks for perf (#4366, thanks @JoviDeCroock)
- Create hot path for unmounting a tree of context (#4396, thanks @JoviDeCroock)
- Migrate husky v9 (#4390, thanks @castrogarciajs)
- Migrate to oxlint (#4387, thanks @JoviDeCroock)
- Migrate to biome (#4386, thanks @JoviDeCroock)
10.22.0
Features
- Support MathML namespace (#4364, thanks @rschristian)
Types
- Add popover types (#4378, thanks @rschristian)
Maintenance
- Skip running compressed-size builds twice (#4377, thanks @rschristian)
- Test types and warnings (#4369, thanks @rschristian)
- Bump compressed-size-action (#4368, thanks @rschristian)
Fixes
- Allow the same component to render many times across different phases (#4382, thanks @JoviDeCroock)
- Provide error for illegal nesting of
<button>
and<a>
(#4376, thanks @rschristian) - Disallow
<tr>
as a child of<table>
(#4375, thanks @rschristian) - Change syntax in
compat/client
for IE11 support (#4372, thanks @rschristian)
10.21.0
Features
- Debug throw on too many rerenders (#4349, thanks @rschristian)
- Add compat/client types (#4345, thanks @rschristian)
Fixes
- Expose hooks through compat's
ReactCurrentDispatcher
(#4342, thanks @rschristian) - Respect default value (#4341, thanks @JoviDeCroock)
- Incorrect "missing transform-jsx-source" warning (#4350, thanks @rschristian)
Types
- Support ComponentChild(ren) in compat render/hydrate/createPortal (#4346, thanks @rschristian)
- Import and re-export PreactElement (#3228, thanks @henryqdineen)
Maintenance
- Add zustand and redux-toolkit to the demo. (#3523, thanks @MortezaMirjavadi)
- Optimise jsx runtime (#4337, thanks @JoviDeCroock)
10.20.2
Fixes
- Check whether
oldDom
is present in the DOM (#4318, thanks @JoviDeCroock) - Simplify the logic introduced in #4322 & use eventClock for capture events too (#4324, thanks @jviide)
- Use a virtual clock instead of Date.now() for event dispatch times (#4322, thanks @jviide)
Types
- Add template tag JSX type (#4334, thanks @marvinhagemeister)
Maintenance
- Integrate the new benchmarks repo and update (#4310, thanks @andrewiggins)
- Some byte improvements (#4321, thanks @JoviDeCroock)
10.20.1
Fixes
- Add special case for focusIn and focusOut (#4316, thanks @JoviDeCroock)
10.20.0
Features
- Add isMemo to compact to allow compatibility with react-is dependant libraries (#4302, thanks @ziongh)
Fixes
- Fix case where shrinking a list would cause an exception (#4312, thanks @JoviDeCroock)
10.19.7
Types
- Bring consistency to our focus-event types (#4307, thanks @JoviDeCroock)
- Add onScrollend listener type (#4305, thanks @JoviDeCroock)
- Align state updater type with Raeect (#4306, thanks @JoviDeCroock)
Fixes
- Revert batch commit callbacks from all components in the render queue (#4297, thanks @JoviDeCroock)
10.19.6
tl;dr: This release contains bug fixes for incorrect ordering of unkeyed children.
Fixes
- Match
null
placeholders using skewed index (#4290, thanks @andrewiggins) - Fix increment skew when we aren't removing the first pointer (#4284, thanks @JoviDeCroock)
- Fix invalid vnode internal id for text nodes (#4291, thanks @marvinhagemeister)
- Fix unkeyed reconciliation order in certain scenarios (#4287, thanks @marvinhagemeister, thanks @JoviDeCroock)
Full Changelog: 10.19.5...10.19.6
10.19.5
Fixes
- Address scenario where we would crash when replacing a matched vnode with null (#4281, thanks @JoviDeCroock)
- Correctly restore _original (#4280, thanks @JoviDeCroock)
- Protect against nullish render (#4278, thanks @JoviDeCroock)
- Support setting translate through direct access (#3800, thanks @JoviDeCroock)
Types
10.19.4
Fixes
- event-listeners in safari 12.3 fix (#4253, thanks @JoviDeCroock)
- support passing context into pure component (#4269, thanks @JoviDeCroock)
- retain masks across render invocations (#4245, thanks @JoviDeCroock)
- skip comment nodes for placeChild (#4128, thanks @JoviDeCroock)
- ensure we are able to support capture events from compat (#4243, thanks @JoviDeCroock)
- batch commit callbacks from all components in the render queue (#4234, thanks @developit)
Types
- improve preact compat types adding a few missing @types/react used by styled-components (#4271, thanks @jduthon)
- add ComponentType to preact/compat (#4239, thanks @ianobermiller)
- add missing contenteditable "inherit" value (#4242, thanks @marvinhagemeister)
Maintenance
- add some sensible timeouts to actions that call out to external services (#4259, thanks @andrewiggins)
- improve types of hook source (#4229, thanks @andrewiggins)