Release Preact X - Virtuous DOM and the Fragments of Suspense · preactjs/preact...
source link: https://github.com/preactjs/preact/releases/tag/10.0.0
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Virtuous DOM and the Fragments of Suspense · preactjs/preact · GitHub
tl;dr: Preact X is the next major version of Preact fully packed with features like Fragments, Hooks, componentDidCatch, Test-Utils, Debug-Warnings, many compatibility fixes and so much more
It's finally happening! After months of hard work we've crossed the finish line and are over the moon with excitement to finally mark Preact X as stable. We'd like to thank everybody who tested it and submitted bug reports.
We originally planned to release a sort-of migration release as version 9 with just the breaking changes from X, but that got canned because many users reported that the upgrade process was easy enough and didn't warrant a long migration period in-between. In fact we got many reports that the upgrade could be done in under an hour, despite some of the breaking changes in X, making the need for a migration release even less desirable.
What's new?
Preact X ships with several major features and we combined them all in a single document on our site. If you're upgrading an existing Preact 8.x
project, we got you covered with a detailed upgrade guide.
To give a quick summary of the new features:
Fragments
componentDidCatch
preact/hooks
addonpreact/test-utils
addoncreateContext
APIcompat
moved to core- Plethora of compatibility fixes
- Many new warnings in
preact/debug
- Same 3 kB size as Preact 8
Again, we highly recommend checking out our new site and specifically the what's new section.
Changes since RC 4
Bug Fixes
- Rewrite
shouldComponentUpdate
handling to take more edge cases into account (#1931, thanks @JoviDeCroock) - Fix
UNSAFE_*
lifecycles being overwritten incompat
(#1946, thanks @marvinhagemeister) - Fix
PureComponent
rerendering when__source
changes (#1950, thanks @JoviDeCroock) - Fix default argument in
useState
not applied in rare cases (#1948, thanks @JoviDeCroock) - Change
.forceUpdate()
to participate in the update queue (#1939, thanks @developit) - Fix
vnode._children
should keep their type asarray
when diffing (#1924, thanks @cristianbote) - Allow numeric CSS values to be 0 (e.g.
opacity
) (#1927, thanks @JoviDeCroock) - Fix unnecessary rerender on equal contexts (#1925, thanks @JoviDeCroock)
Typings
- Add
disableRemotePlayback
to HTML Attributes (#1955, thanks @JoviDeCroock) - Add
volume
to HTML Attributes (#1938, thanks @jessicabyrne)
Maintenance
- Prevent mangling of
__source
and__self
(#1958, thanks @JoviDeCroock) - Add documentation on how to do releases (#1928, thanks @marvinhagemeister)
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK