Becklyn / mojave

A library of commonly used JavaScript tools and helpers by Becklyn
BSD 3-Clause "New" or "Revised" License
5 stars 3 forks source link

Update dependency preact to v10.0.0-beta.2 - autoclosed #194

Closed renovate[bot] closed 5 years ago

renovate[bot] commented 5 years ago

This PR contains the following updates:

Package Type Update Change
preact dependencies patch 10.0.0-beta.1 -> 10.0.0-beta.2

Release Notes

developit/preact ### [`v10.0.0-beta.2`](https://togithub.com/developit/preact/releases/10.0.0-beta.2) [Compare Source](https://togithub.com/developit/preact/compare/10.0.0-beta.1...10.0.0-beta.2) **tl;dr:** _We're excited to be one step closer to a final Preact X release! It's packed full with the addition of `Suspense`, `lazy`, performance improvements and the usual round of bug fixes_ :tada: Internally we've been referring to this one as the "Hitchcock"-Release. [@​jviide](https://togithub.com/jviide) came up again with the very fitting release title :+1: We're proud to welcome [@​sventschui](https://togithub.com/sventschui) as the newest addition to our team! And oh boy did he join us with a bang! :tada: #### The Suspense Is Real [@​sventschui](https://togithub.com/sventschui) went ahead and added basic support for both the `Suspense` component and `lazy()` to `preact/compat`. With these in place it is now a lot easier to do proper code-splitting. Just have a look at this example on how they can be used together: ```jsx import { Suspense, lazy } from "preact/compat"; const Other = lazy(() => import('./OtherComponent')); function Foo() { return Loading...
}> } ``` In the snippet above the `Other` component will only be displayed once it's loaded. Until then the `Suspense` component allows the user to display any fallback content making it ideal for any sort of spinners for example :+1: :1st_place_medal: This was one of the remaining road blocks in getting [Next.js](https://togithub.com/zeit/next.js/) to work with Preact X :tada: Note that our implementation is still considered an experimental preview :clock1030: #### The golfing continues :golf: :golfing_man: Last cycle we had a lot of fun finding ways to make Preact even smaller! In fact, we had so much fun that we continued a bit to do so leading up to this release :100: These size optimizations are really important, because they allow us to offset the byte cost for new features while staying within our self imposed byte size limit :whale: #### Faster hydration :zap: :checkered_flag: Following [@​developit](https://togithub.com/developit) and [@​housseindjirdeh](https://togithub.com/housseindjirdeh)'s talk on [Progressive Hydration at Google I/O'19](https://www.youtube.com/watch?v=k-A2VfuUROg), we've landed the first changes to support a more ideal way of handling hydration. Note that this is formally a breaking change, but it won't likely cause you any trouble. What's different is that existing server-rendered DOM element `attributes` will no longer be removed during hydration. This translates to a huge performance benefit for boot-up time, which means your page gets interactive and ready-to-go noticeably sooner if you are doing Server Side Rendering or prerendering :rocket: #### Removed string styles We removed support for string styles in favor of setting style properties only with objects. This aligns our behavior with various other virtual-dom based libraries out there :heavy_check_mark: Note that this is a \_breaking change_ from 8.x and you may need to update your code: ```jsx // before
// after
``` This one was long on our list of possible ways to cut down on size. Nonetheless we are aware that this might be a controversial change. If you have a lot of string styles or want to continue using them, you can use [preact-string-styles](https://gist.github.com/developit/d55dc3c47dd1fe81d84f5ee0ab5bfc58) to patch this behavior back into Preact X. If you don't agree this change, please let us know! #### Preact Sightings :atom_symbol: Sometimes we need a bit inspiration on how to build complete Applications with Preact. We were super stoked to see that one of the demos at Google I/O uses our library and can be inspected here on GitHub. The demo is a minesweeper-like game called [Proxx](https://togithub.com/GoogleChromeLabs/proxx) that makes clever use of some advanced web features like Web Workers and WASM. Be sure to check it out! If any of you wonderful people happen to be at [JSConfEU](https://2019.jsconf.eu/) in Berlin this weekend, let's meet in person! Both [@​cristianbote](https://togithub.com/cristianbote) and I ([@​marvinhagemeister](https://togithub.com/marvinhagemeister)) will be attending, and we have [plenty of stickers](https://twitter.com/marvinhagemeist/status/1127823733182423040) with us :wink: In closing we've been super thankful for every PR or bug report we received in the past cycle. They are crucial to make Preact rock solid and help us find edge cases we may not have thought of. Thank you all! #### Changelog ##### Features - Introduce `Suspense` and `lazy` ([#​1593](https://togithub.com/developit/preact/issues/1593), [#​1638](https://togithub.com/developit/preact/issues/1638) thanks [@​sventschui](https://togithub.com/sventschui)) - Don't read attributes during hydration ([#​1596](https://togithub.com/developit/preact/issues/1596), thanks [@​developit](https://togithub.com/developit)) - Update README with the `proxx` demo ([#​1654](https://togithub.com/developit/preact/issues/1654), thanks [@​talentedandrew](https://togithub.com/talentedandrew)) - Make consistent use of key check logic (-12 B) ([#​1651](https://togithub.com/developit/preact/issues/1651), thanks [@​andrewiggins](https://togithub.com/andrewiggins)) - Update links for the new preactjs org ([#​1649](https://togithub.com/developit/preact/issues/1649), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Support JSX-sourcemaps ([#​1628](https://togithub.com/developit/preact/issues/1628), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Simplify key matching technique ([#​1637](https://togithub.com/developit/preact/issues/1637), thanks [@​developit](https://togithub.com/developit)) - Remove the unused `bundlesize` dependency ([#​1641](https://togithub.com/developit/preact/issues/1641), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Add `travis-size-report` to the CI ([#​1633](https://togithub.com/developit/preact/issues/1633), thanks [@​wardpeet](https://togithub.com/wardpeet)) - Revert the lookup on `documentView` since this introduced a regression ([#​1631](https://togithub.com/developit/preact/issues/1631), thanks [@​cristianbote](https://togithub.com/cristianbote)) - Show `useEffect` warning instead of throwing error ([#​1623](https://togithub.com/developit/preact/issues/1623), thanks [@​yuqianma](https://togithub.com/yuqianma)) - **breaking**: Remove support for style as string and other golfing (-32B) ([#​1606](https://togithub.com/developit/preact/issues/1606), thanks [@​cristianbote](https://togithub.com/cristianbote)) - Golf Hooks (-11B) and compat (-18B) ([#​1602](https://togithub.com/developit/preact/issues/1602), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Code golf `preact.js.gz` size down by 53 B ⛳️ ([#​1599](https://togithub.com/developit/preact/issues/1599), thanks [@​jviide](https://togithub.com/jviide)) - Store text node's text content as `VNode.props` instead of `VNode.text` ([#​1600](https://togithub.com/developit/preact/issues/1600), thanks [@​jviide](https://togithub.com/jviide)) ##### Bug fixes - Update Fragment DOM log with `null` placeholder behavior ([#​1661](https://togithub.com/developit/preact/issues/1661), thanks [@​andrewiggins](https://togithub.com/andrewiggins)) - Prevent crash with nullish ref ([#​1657](https://togithub.com/developit/preact/issues/1657), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Remove `props.key` even when `key === 0` or `key === ""` ([#​1607](https://togithub.com/developit/preact/issues/1607), thanks [@​jviide](https://togithub.com/jviide)) - Fix unmount behavior when using `replaceNode` ([#​1647](https://togithub.com/developit/preact/issues/1647), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Fix `react-hot-loader` compatibility by not checking on `vnode` ref ([#​1644](https://togithub.com/developit/preact/issues/1644), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Fix `this` reference in `componentWillUnmount` under context `Consumer` ([#​1627](https://togithub.com/developit/preact/issues/1627), thanks [@​sventschui](https://togithub.com/sventschui)) - Ignore `dangerouslySetInnerHTML` during hydration ([#​1595](https://togithub.com/developit/preact/issues/1595), thanks [@​developit](https://togithub.com/developit)) - Don't compare `vnodes` when `oldVNode` has no `dom` reference ([#​1617](https://togithub.com/developit/preact/issues/1617), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - `self` is not available in non-browser environments ([#​1618](https://togithub.com/developit/preact/issues/1618), thanks [@​cristianbote](https://togithub.com/cristianbote)) - `.some` should not be used for effect invoke/cleanup ([#​1613](https://togithub.com/developit/preact/issues/1613), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Only warn once about argumentless effects ([#​1625](https://togithub.com/developit/preact/issues/1625), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Warn about missing `preact-render-to-string` dependency ([#​1603](https://togithub.com/developit/preact/issues/1603), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) - Insert portal children instead of overwriting the container ([#​1629](https://togithub.com/developit/preact/issues/1629), thanks [@​JoviDeCroock](https://togithub.com/JoviDeCroock)) ##### Typings - Add types to `compat` ([#​1609](https://togithub.com/developit/preact/issues/1609), thanks [@​pmkroeker](https://togithub.com/pmkroeker)) - Add types for Suspense/lazy ([#​1619](https://togithub.com/developit/preact/issues/1619), thanks [@​pmkroeker](https://togithub.com/pmkroeker))

Renovate configuration

:date: Schedule: At any time (no schedule defined).

:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.

:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".

:no_bell: Ignore: Close this PR and you won't be reminded about this update again.


  • [ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot. View repository job log here.