1 hours ago
router

Release 2026-09-06 21:27

Release 2026-09-06 21:27

Changes

Fix

  • history: handle blockers consistently across history traversal (#8264) (9035abc411) by @Sheraff
  • router-core: fix dangling references in published declarations (#8207) (08eff50c44) by @Sheraff
  • react-router: avoid rewriting unchanged head assets (#8257) (cf166d160e) by @schiller-manuel
  • router-core: skip lifecycle callbacks below fallback boundaries (#8165) (2f20c00224) by @Sheraff
  • router: handle unknown error boundary values (#8209) (28a5e4504e) by @Sheraff
  • router-core: retain not-found boundary during navigation (#8161) (f0b5eda544) by @Sheraff
  • docs: Ensure we use normal install for query integration package (#8228) (650acb4a89) by @sommeeeer
  • preserve shouldThrow in route-scoped hooks (#8169) (0caf6b9a2b) by @mizukendesu

Performance

  • router-core: reduce navigation promise chains (#8259) (216c0c4803) by @Sheraff
  • router: use URL.canParse for absolute URL checks (#8251) (0497caeef3) by @Sheraff
  • router-core: avoid redundant promises for ready routes (#8244) (c18e690814) by @Sheraff
  • router-core: avoid quadratic cache resource handoff (#8240) (2f9150309b) by @Sheraff
  • router-core: gate JSON.parse attempts behind jsonStart guard in parseSearchWith (#8142) (50eafcaebb) by @Sheraff
  • router-core: replace the LRU cache with a trimmed SIEVE cache (#8230) (ee283480df) by @Sheraff
  • router-core: share settle chain between superseded navigation waiters (#8222) (edf0e16ebf) by @Sheraff
  • start: optimize Rsbuild import protection reporting (#8164) (37877da166) by @SyMind

Chore

  • simplify bundle optimization commands (#8253) (af2f9d1c44) by @schiller-manuel

Packages

  • @tanstack/history@1.162.2
  • @tanstack/nitro-v2-vite-plugin@1.155.1
  • @tanstack/react-router@1.170.33
  • @tanstack/react-start@1.168.50
  • @tanstack/react-start-client@1.168.31
  • @tanstack/react-start-rsc@0.1.49
  • @tanstack/react-start-server@1.167.38
  • @tanstack/router-cli@1.167.34
  • @tanstack/router-core@1.171.28
  • @tanstack/router-generator@1.167.34
  • @tanstack/router-plugin@1.168.36
  • @tanstack/router-vite-plugin@1.167.36
  • @tanstack/solid-router@1.170.31
  • @tanstack/solid-start@1.168.48
  • @tanstack/solid-start-client@1.168.30
  • @tanstack/solid-start-server@1.167.37
  • @tanstack/start-client-core@1.170.28
  • @tanstack/start-plugin-core@1.171.40
  • @tanstack/start-server-core@1.169.32
  • @tanstack/start-static-server-functions@1.167.33
  • @tanstack/start-storage-context@1.167.30
  • @tanstack/vue-router@1.170.30
  • @tanstack/vue-start@1.168.47
  • @tanstack/vue-start-client@1.167.33
  • @tanstack/vue-start-server@1.167.37
1 hours ago
router

@tanstack/vue-start@1.168.47

Patch Changes

  • Updated dependencies [2f20c00, 28a5e45, f0b5eda, 37877da, 0497cae, 0caf6b9]:
    • @tanstack/vue-router@1.170.30
    • @tanstack/start-plugin-core@1.171.40
    • @tanstack/start-client-core@1.170.28
    • @tanstack/start-server-core@1.169.32
    • @tanstack/vue-start-client@1.167.33
    • @tanstack/vue-start-server@1.167.37
1 hours ago
router

@tanstack/vue-router@1.170.30

Patch Changes

  • #8165 2f20c00 - Exclude structural descendants below error and not-found boundaries from route lifecycle callbacks. Preserve lifecycle membership through invalidation, hydration, background reloads, and superseded navigation publication.

  • #8209 28a5e45 - Preserve falsy thrown values in React and Vue error boundaries. Type React and Vue boundary error components and onCatch callbacks as unknown. Solid boundary errors remain typed as Error; SSR now wraps non-Error loader errors to match Solid’s native boundary behavior, preserving the original value in cause. Router state and loader onError values are unchanged.

    When upgrading React or Vue, narrow boundary errors (for example, with error instanceof Error) before reading message or stack. ErrorComponentProps<TError> remains available for values narrowed to a specific error type. Route onError types are unchanged.

  • #8161 f0b5eda - Retain successful not-found matches as terminal shared boundaries during client navigation, preserving route context while the destination loads.

  • #8251 0497cae - Use URL.canParse for absolute URL checks in links, navigation, redirects, and build configuration. Preserve a URL constructor fallback for older browsers.

  • #8169 0caf6b9 - Fix route-scoped useMatch, useSearch, and useParams APIs to forward the shouldThrow option and preserve optional return types when shouldThrow: false.

  • Updated dependencies [edf0e16, 2f20c00, 28a5e45, 08eff50, 216c0c4, 2f91503, f0b5eda, 50eafca, 0497cae, ee28348, 9035abc, c18e690]:

    • @tanstack/router-core@1.171.28
    • @tanstack/history@1.162.2
1 hours ago
router

@tanstack/start-storage-context@1.167.30

Patch Changes

1 hours ago
router

@tanstack/start-plugin-core@1.171.40

Patch Changes

  • #8164 37877da - Improve Rsbuild import protection performance by scanning the compilation graph once and deferring diagnostic work until a violation is found.

  • #8251 0497cae - Use URL.canParse for absolute URL checks in links, navigation, redirects, and build configuration. Preserve a URL constructor fallback for older browsers.

  • Updated dependencies [edf0e16, 2f20c00, 28a5e45, 08eff50, 216c0c4, 2f91503, f0b5eda, 50eafca, 0497cae, ee28348, c18e690]:

    • @tanstack/router-core@1.171.28
    • @tanstack/router-generator@1.167.34
    • @tanstack/router-plugin@1.168.36
    • @tanstack/start-server-core@1.169.32
1 hours ago
router

@tanstack/vue-start-client@1.167.33

Patch Changes

1 hours ago
router

@tanstack/start-client-core@1.170.28

Patch Changes

1 hours ago
router

@tanstack/vue-start-server@1.167.37

Patch Changes

1 hours ago
router

@tanstack/start-server-core@1.169.32

Patch Changes

1 hours ago
router

@tanstack/start-static-server-functions@1.167.33

Patch Changes

  • Updated dependencies []:
    • @tanstack/start-client-core@1.170.28
    • @tanstack/react-start@1.168.50
    • @tanstack/solid-start@1.168.48