@tanstack/solid-router@2.0.0-beta.22
Pre-releasePatch Changes
-
#7584
41e7a24- Remove unnecessary setTimeout from Match components -
#7609
51b4bd4- perf(solid-router): makeuseLinkPropsproxy-free in the spread hot pathuseLinkPropspreviously layered four proxies (mergefor defaults, two
splitProps/omitproxies, and a finalmergeof spreadable props with the
resolved props memo). Solid'sspread()re-enumerated all of them through V8
proxy traps on every navigation, for everyLink, which showed up in CodSpeed
profiles as a large unattributed "NodeJS internals" cost.useLinkPropsnow returns a plain object with a stable key set whose
reactivity lives in property getters backed by fine-grained memos. Values that
no longer apply resolve toundefined, whichspread()treats as attribute
removal. The built-location memo also gained href-based equality so downstream
memos skip work when a navigation doesn't change a link's target.This makes the client-side navigation benchmark ~30% faster.
Note: keys returned by
activeProps/inactivePropsfunctions are discovered
once at setup — functions that later return brand-new keys (beyond the initial
set plusclass/style) won't have those keys applied. -
#7688
259efbe- Upgradesolid-jsand@solidjs/webto2.0.0-beta.15