Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.
For changes prior to v1.0.0, see the legacy releases.
What's Changed
Full Changelog: https://github.com/inertiajs/inertia/compare/v2.0.9...v2.0.10
v2.0.9 - 2025-05-09
What's Changed
New Contributors
Full Changelog: https://github.com/inertiajs/inertia/compare/v2.0.8...v2.0.9
v2.0.8 - 2025-04-10
What's Changed
New Contributors
Full Changelog: https://github.com/inertiajs/inertia/compare/v2.0.7...v2.0.8
v2.0.7 - 2025-04-08
What's Changed
New Contributors
Full Changelog: https://github.com/inertiajs/inertia/compare/v2.0.6...v2.0.7
- Deferred: More descriptive Deferred data prop error (#2284)
- Bump vite from 5.4.12 to 5.4.16 (#2288)
- Fix location return history decryption throwing error (#2282)
- Make isDirty reactive to defaults (#2236)
- Fix playground WhenVisible always (#2203)
- Wayfinder support (#2290)
- Fix history state errors by nicholaspufal (#2265)
- Bump axios from 1.7.9 to 1.8.2 (#2269)
- Bump esbuild from 0.16.17 to 0.25.0 #2231 (#2231)
- Bump vite from 5.4.11 to 5.4.12 (#2201)
- Fix anchor links on initial visits (#2258)
- Fix: Reload on mount (#2200)
- Fix SSR with scroll restoration (#2190)
- Fix for scroll + back bug (#2191)
- Backport 1.x fixes from v1.3.0 release (#2193)
- Fix playground dependencies (#2070)
- Removed Vitest tests + dependencies (#2175)
- Augment
vue
instead of @vue/runtime-core
(#2099)
- Fix prefetch missing
cacheFor
default value (#2136)
- Fix
useForm
re-renders by memoizing functions in React #2146
- WhenVisible useEffect function is not recreated when params change. (#2153)
- Ensure callback execution (#2163)
- More resilient logic for stripping the origin from page URLs (#2164)
- Add helper scripts for running tests (#2173)
- Export
InertiaFormProps
in React (#2161)
- Use default empty object in
useForm
Vue and Svelte (#2052)
- Remove
data
option from useForm
options type (#2060)
- Take over scroll restoration from browser (#2051)
Added
- Add polling
- Add link prefetching
- Add deferred props
- Add lazy loading of data when scrolling
- Add history encryption API
- Add React 19 support (#2131)
- Add client side visits (#2130)
Changed
- Removal of NProgress dependency (#2045)
- Change TypeScript module resolution in the Svelte adapter (#2035)
- Refactor
createInertiaApp
in Svelte adapter (#2036)
Fixed
- Fix: make Link href prop reactive (#2089)
Added
Changed
- Skip intercepting non-left button clicks on links (#1908, #1910)
- Changed
preserveScroll
to be true
on initial page visit (#1360)
- Return early when using
router.on()
during SSR (#1715)
- Use updater function in
setData
in useForm
hook in React adapter (#1859)
Fixed
- Fix history navigation issue on Chrome iOS (#1984, #1992)
- Fix
setNavigationType
for Safari 10 (#1957)
- Export
InertiaFormProps
in all adapters (#1596, #1734)
- Fix
isDirty
after form.defaults()
call in Vue 3 (#1985)
- Fix scroll reset on page navigation (#1980)
- Fix scroll position restoration for
[scroll-region]
elements (#1782, #1980)
- Fix
useForm
re-renders by memoizing functions in React adapter (#1607)
- Fix doubling hash when using
<React.StrictMode>
(#1728)
- Fix type augmentation in Vue 3 adapter (#1958)
- Fix form helper
transform
return type in React adapter (#1896)
- Fix props reactivity in Svelte adapter (#1969)
- Fix
<Render />
component to respect preserveState
option in Svelte adapter (#1943)
- Fix 'received an unexpected slot "default"' warning in Svelte adapter (#1941)
- Fix command + click behavior on links in React adapter (#2132)
- Fix import in Svelte adapter (#2002)
- Fix
preserveScroll
and preserveState
types (#1882)
- Revert "merge props from partial reloads" (#1895)
- Add new
except
visit option to exclude props from partial reloads (#1876)
- Deep merge props from partial reloads (#1877)
- Fix Svelte 4 slot rendering issues (#1763)
- Fix accessibility warning in Svelte
Link
component (#1858)
- Use
Omit
instead of Exclude
in router types (#1857)
- Bump axios from
v1.4.0
to v1.6.0
(#1723)
- Revert "Clear errors on form reset (#1568)" (#1716)
- Clear errors on form reset (#1568)
- Fix
Link
type in React (#1659)
- Fix type of
onClick
for Link
component in React and Vue (#1699, #1701)
- Fix form helper types for
setDefaults()
method (React) and defaults()
method (Vue) (#1504)
- Fix interface issue with
useForm()
in React and Vue adapters (#1649)
- Fix Svelte's
useForm
helper (#1610)
- Fix
<Head>
vNode handling in Vue 3 adapter (#1590)
- Add Svelte 4 support (60699c7)
Fixed
- Fix
<Head>
vNode handling in Vue 3 adapter (#1570)
- Fix watching remembered data in Vue 3 adapter (#1571)
Fixed
- Fix
<Head>
fragment detection in Vue 3 adapter (#1509)
Fixed
- Fix
usePage()
null object error in Vue 3 adapter (#1530)
Fixed
- Fix
usePage()
reactivity in Vue 2 adapter (#1527)
Changed
- Simplify the Vue 2 form helper (#1529)
Added
- Added
displayName
to Link
component in React adapter (#1512)
Fixed
- Fix
usePage()
reactivity in Vue 3 adapter (#1469)
Added
- Added initialization callback to form helper in Vue adapters (#1516)
Fixed
- Added explicit children to
InertiaHeadProps
(#1448)
- Exported
InertiaLinkProps
type (#1450)
- Improved React
usePage
generic type (#1451)
Fixed
- Fixed Vue type overrides for
$page
and $inertia
(#1393)
- Restored React
usePage
generic type (#1396)
- Prevented need to use
Method
enum with the Link component (#1392)
- Restored Vue 3
usePage
generic type (#1394)
- Fixed export of server types (#1397)
- Updated form types to support nested data (#1401)
- Allowed stronger type support with Vue
useForm
(#1413)
- Fixed Vue 2
setup
prop types (#1418)
- Fixed issue when passing multiple children to React
Head
component (#1433)
v1.0.0 - 2023-01-14
Added
- Added SSR support to Svelte library (#1349)
- Added first-class TypeScript support to React adapter
- Added first-class TypeScript support to Vue 2 adapter
- Added first-class TypeScript support to Vue 3 adapter
- Added new
useForm()
hook to Vue 2 adapter (ff59196)
Changed
- Renamed
@inertiajs/inertia
library to @inertiajs/core
(#1282)
- Renamed
@inertiajs/inertia-react
library to @inertiajs/react
(#1282)
- Renamed
@inertiajs/inertia-svelte
library to @inertiajs/svelte
(#1282)
- Renamed
@inertiajs/inertia-vue
library to @inertiajs/vue2
(#1282)
- Renamed
@inertiajs/inertia-vue3
library to @inertiajs/vue3
(#1282)
- Merged progress library to core and deprecated
@inertiajs/progress
library (#1282, 0b5f773)
- Merged server library to core and deprecated
@inertiajs/server
library (#1282)
- Renamed
Inertia
named export to router
(#1282, e556703)
- Removed deprecated named exports (#1282, e556703)
- Removed deprecated
app
argument from createInertiaApp()
in Vue adapters (#1282, 65f8a5f)
- Updated axios to 1.x (#1377)
- Simplified
usePage()
hook in Vue 3 adapter (#1373)
- Improved Svelte
use:inertia
and <Link />
component (#1344)
- Removed global
visitOptions()
hook (#1282, 30908c2)
- Switched bundler from Microbundle to ESbuild (f711b46, 8093713, 342312d, c9e12b3)
Fixed
- Fixed
<title>
tag not always being included when a title
callback is defined in createInertiaApp()
(#1055)
- Fixed types to include
undefined
as a valid FormDataConvertable
option (#1165)
- Fixed issue where remembered state wasn't clear on a full page reload (769f643)