đ Patch Changes
-
#11509
dfbca06
Thanks @bluwy! - Excludes hoisted scripts and styles from Astro components imported with?url
or?raw
-
#11561
904f1e5
Thanks @ArmandPhilippot! - Uses the correct pageSize default inpage.size
JSDoc comment -
#11571
1c3265a
Thanks @bholmesdev! - BREAKING CHANGE to the experimental Actions API only. Install the latest@astrojs/react
integration as well if youâre using React 19 features.Make
.safe()
the default return value for actions. This means{ data, error }
will be returned when calling an action directly. If you prefer to get the data while allowing errors to throw, chain the.orThrow()
modifier.import { actions } from 'astro:actions';// Beforeconst { data, error } = await actions.like.safe();// Afterconst { data, error } = await actions.like();// Beforeconst newLikes = await actions.like();// Afterconst newLikes = await actions.like.orThrow();To migrate your existing action calls:
- Remove
.safe
from existing safe action calls - Add
.orThrow
to existing unsafe action calls
- Remove
-
#11546
7f26de9
Thanks @ArmandPhilippot! - Remove âSSR Onlyâ mention inAstro.redirect
inline documentation and update reference link. -
#11525
8068131
Thanks @ematipico! - Fixes a case where the build was failing whenexperimental.actions
was enabled, an adapter was in use, and there were not actions inside the user code base. -
#11574
e3f29d4
Thanks @Princesseuh! - Fixes line with the error not being properly highlighted in the error overlay -
#11570
84189b6
Thanks @bholmesdev! - BREAKING CHANGE to the experimental Actions API only. Install the latest@astrojs/react
integration as well if youâre using React 19 features.Updates the Astro Actions fallback to support
action={actions.name}
instead of usinggetActionProps().
This will submit a form to the server in zero-JS scenarios using a search parameter:---import { actions } from 'astro:actions';---<form action={actions.logOut}><!--output: action="?_astroAction=logOut"--><button>Log Out</button></form>You may also construct form action URLs using string concatenation, or by using the
URL()
constructor, with the an actionâs.queryString
property:---import { actions } from 'astro:actions';const confirmationUrl = new URL('/confirmation', Astro.url);confirmationUrl.search = actions.queryString;---<form method="POST" action={confirmationUrl.pathname}><button>Submit</button></form>getActionProps()
is now deprecated. To use the new fallback pattern, remove thegetActionProps()
input from your form and pass your action function to the formaction
attribute:---import {actions,getActionProps,} from 'astro:actions';---<form method="POST" action={actions.logOut}><form method="POST"><input {...getActionProps(actions.logOut)} /><button>Log Out</button></form> -
#11559
1953dbb
Thanks @bryanwood! - Allows actions to return falsy values without an error -
#11553
02c85b5
Thanks @ematipico! - Fixes an issue in content collection caching, where two documents with the same contents were generating an error during the build. -
#11548
602c5bf
Thanks @TheOtterlord! - Fixesastro add
for packages with only prerelease versions -
#11566
0dcef3a
Thanks @Princesseuh! - Fixes DomException errors not being handled properly -
#11529
504c383
Thanks @matthewp! - Fix server islands with trailingSlash: always