Skip to content

@tanstack/solid-router@2.0.0-beta.22

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 25 Jun 01:03
· 13 commits to main since this release
Immutable release. Only release title and notes can be modified.
3d265ea

Patch Changes

  • #7584 41e7a24 - Remove unnecessary setTimeout from Match components

  • #7609 51b4bd4 - perf(solid-router): make useLinkProps proxy-free in the spread hot path

    useLinkProps previously layered four proxies (merge for defaults, two
    splitProps/omit proxies, and a final merge of spreadable props with the
    resolved props memo). Solid's spread() re-enumerated all of them through V8
    proxy traps on every navigation, for every Link, which showed up in CodSpeed
    profiles as a large unattributed "NodeJS internals" cost.

    useLinkProps now 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 to undefined, which spread() 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/inactiveProps functions are discovered
    once at setup — functions that later return brand-new keys (beyond the initial
    set plus class/style) won't have those keys applied.

  • #7688 259efbe - Upgrade solid-js and @solidjs/web to 2.0.0-beta.15