- #427
f3f7aabThanks @rschristian! - Correct semver range to support beta releases of Preact v11
- #376
81e7da3Thanks @JoviDeCroock! - Insert comment markers for suspended trees, only in renderToStringAsync
- #425
e750ba1Thanks @rschristian! - Expand semver range to support the upcoming v11 beta release
- #413
27f340bThanks @f0x52! - Fix async rendering of multiple suspended components in a single Suspense boundary
- #424
e7d241cThanks @JoviDeCroock! - Fix support for signals, we need to detect and unwrap the signal
- #423
ec0b614Thanks @JoviDeCroock! - Add support for new component bits
- #417
441dea2Thanks @rschristian! - Only abort/report errors fromrenderToPipeableStream()if the stream hasn't already been closed
- #408
8e8e8acThanks @f0x52! - Ensure that the_parentis kept around across multiple suspensions and avoid circular references. In doing so ouruseIdhook should always output unique ids during renderingToString.
- #409
2afaf31Thanks @f0x52! - Ensure the renderToStream types of/streamand/stream-nodeaccept a generic for the props of the passed in VNode
- #405
0a698f6Thanks @f0x52! - renderToPipeableStream: expose errors through onError, no longer emit un-catchable error event on internal stream
- #403
ed720efThanks @JoviDeCroock! - Improve performance by pre-allocating arrays
- #397
6db4f95Thanks @rschristian! - SwitchHTML_LOWER_CASEregex to match all from line start for a marginal perf benefit.
- #393
62ade27Thanks @rschristian! - Fixspellcheck={false}not rendering asspellcheck="false"
- #391
d80e4dcThanks @marvinhagemeister! - Allow any value forclass+classNameas long as it's stringified to match browser behavior.
- #388
4621fa3Thanks @marvinhagemeister! - FixspellCheck={false}not rendering asspellcheck="false"
- #386
220ad45Thanks @JoviDeCroock! - Add async benchmarks and iterate on perf improvements
- #383
883e02bThanks @JoviDeCroock! - General performance optimisations
- #385
45b8e8bThanks @JoviDeCroock! - Improve perf a bit by hoisting the typeof check to reduce calling typeof
- #381
481b4f3Thanks @rschristian! - SupportdangerouslySetInnerHTML={undefined}withrenderToStringAsync
- #378
054dae0Thanks @ccouzens! - Fix issue where preactRenderToString returns a promise of a promise
- #372
bebe4bfThanks @jacob-ebey! - fix: stop client runtime from being corrupted fix: insert ooo chunks in the proper order
- #362
3044ac2Thanks @rschristian! - Correct stream exports
- #367
8c7e08fThanks @rschristian! - Add types for/streamand/stream-nodeexports
- #360
689e88dThanks @JoviDeCroock! - Correctly rendernullas an__htmlvalue as an empty string
- #356
4430ecfThanks @JoviDeCroock! - Add back publish with provenance
- #354
a004914Thanks @JoviDeCroock! - Introduce a streaming renderer which can be imported frompreact-render-to-string/streamandpreact-render-to-string/stream-node
- #354
a004914Thanks @JoviDeCroock! - EnsurepopoverTargetandpopoverTargetActionare serialized to lower case
- #354
a004914Thanks @JoviDeCroock! - Fix for shallow rendering incorrectly transforming Fragments into other nodes
- #354
a004914Thanks @JoviDeCroock! - EnsurecellPadding,cellSpacing, anduseMapare serialized to lower case
- #354
a004914Thanks @JoviDeCroock! - streaming rendering with Suspense boundaries as flush trigger
- #347
7bc77a3Thanks @marvinhagemeister! - Fix JSX template being detected as a top level Fragment when Deno's jsxprecompileoption is used
- #348
303b8c0Thanks @marvinhagemeister! - Perf: Remove unnecessary closure when rendering child nodes
- #344
27a8b0eThanks @JoviDeCroock! - Ensure commonjs also has the async export
- #336
c46fb59Thanks @marvinhagemeister! - Fix error thrown after suspending not being rethrown.
- #339
4462822Thanks @marvinhagemeister! - Fix invalid parent pointer empty value when rendering a suspended vnode
- #333
6acc97aThanks @JoviDeCroock! - Allow prepass like behavior where a Promise will be awaited and then continued, this is done with the newrenderToStringAsyncexport
- #324
6bf321dThanks @marvinhagemeister! - Fix mapped children not working with Deno's new precompile JSX transform.
-
926827cThanks @marvinhagemeister! - Add support for precompiled JSX transform, see https://deno.com/blog/v1.38#fastest-jsx-transform. Compared to traditional JSX transforms, the precompiled JSX transform tries to pre-serialize as much of the JSX as possible. That way less objects need to be created and serialized which relieves a lot of GC pressure.// input <div class="foo">hello</div>; // output const tpl = [`<div class="foo">hello</div>`]; jsxTemplate(tpl);
- #315
f1d81beThanks @JoviDeCroock! - avoid adding double colon for namespaced attributes
- #308
a331699Thanks @marvinhagemeister! - Fix incorrect casing of HTML attributes and SVG attributes
- #310
017a8bbThanks @marvinhagemeister! - Fix casing of namespaced attribute names
-
#305
568f139Thanks @marvinhagemeister! - Add support for error boundaries viacomponentDidCatchandgetDerivedStateFromErrorThis feature is disabled by default and can be enabled by toggling the
errorBoundariesoption:import { options } from 'preact'; // Enable error boundaries options.errorBoundaries = true;
- #301
659b456Thanks @marvinhagemeister! - Add experimental ability to render HTML comments via<Fragment UNSTABLE_comment="my-comment" />. When theUNSTABLE_commentprop is present all children of thatFragmentwill be ignored and a HTML comment will be rendered instead. This feature is added to allow framework authors to experiment with marking DOM for hydration in the client. Note that it's marked as unstable and might change in the future.
- #298
6a4b8edThanks @shinyama-k! - Fix to add type file for jsx.js
- #294
637b302Thanks @marvinhagemeister! - Bring back exports from 5.x to make migration easier
- #292
8f4692cThanks @marvinhagemeister! - Fix error in commonjs entry point
- #241
e8cbf66Thanks @developit! - Improve performance by another 5-10% usingswitchand short-circuiting, and move pretty-printing from intopreact-render-to-string/jsx.
- #282
6376f62Thanks @JoviDeCroock! - Remove trailing space for void_elements, this could fail some test_assertions as<img />will become<img/>, the otherVOID_ELEMENTSthis will be applied for can be found here
- #286
7a8b590Thanks @JoviDeCroock! - Remove the castin to VNode forpreact/debug, this is fixed in Preact >= 10.13.0
- #286
7a8b590Thanks @JoviDeCroock! - Change style calculation to use a Set rather than Regex
- #285
a0546feThanks @JoviDeCroock! - Fix CJS export
- #288
0b04860Thanks @glenchao! - Enumerate draggable attribute, so the output isn'tdraggablebutdraggable="true"
- #283
3defa9dThanks @JoviDeCroock! - Follow up fixes to #278
- #289
07ebc66Thanks @JoviDeCroock! - Supportdataattribute
- #270
5c6877dThanks @developit! - improve unmount option hook call performance
-
#278
8cf7cefThanks @JoviDeCroock! - Improve performance by- storing the void_elements in a Set
- hoisting the
x-linkregex - remove case-insensitive from regexes and calling
.toLowerCase()instead - caching suffixes for css-props
- #257
8b944b2Thanks @marvinhagemeister! - Fixpreact/debugincorrectly throwing errors on text children
- #246
ad35c4cThanks @developit and @marvinhagemeister! - Fix object and function children being rendered asundefined
- #248
aa12b3cThanks @marvinhagemeister! - Fix vnode masks not matching with core due to top level component Fragments
- #242
bd5e5ebThanks @JoviDeCroock! - correctly unmount vnodes
- #237
dec7a7aThanks @JoviDeCroock! - add parent and children for useId
- #232
2d5ca74Thanks @JoviDeCroock! - Performance enhancements
- #238
7cdf4d6Thanks @developit! - Fix the order of invocation for the "before diff" (__b) and "diffed" options hooks.
- #235
2f6d6e8Thanks @marvinhagemeister! - Remove duplicate type path inpackage.json. Only one oftypesortypingsis needed.
- #228
e4fe799Thanks @developit! - Improve string encoding performance by ~50%
- #229
d83def7Thanks @JoviDeCroock! - Split up hot paths and make separate path for opts.pretty
- #224
645f3cbThanks @rschristian! - EnsuresdefaultCheckedis serialized ascheckedattribute
- #225
31ac323Thanks @JoviDeCroock! - Optimize perf by using smarter string builder
- #219
250c15fThanks @developit! - Implement hook state settling. Setting hook state during the execution of a function component (eg: inuseMemo) will now re-render the component and use the final result. Previously, these updates were dropped.
- #215
a8672dbThanks @AleksandrHovhannisyan! - Don't add selected attribute to elements if they already contain that attribute
- #209
298d05eThanks @rschristian! - On empty className w/ compat, class attribute will no longer be duplicated
- #205
6d47c5aThanks @JoviDeCroock! - Fix serialize defaultValue as value attribute