chore(deps): update dependency astro to v4.16.18 #54
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "renovate/astro-4.x-lockfile"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
4.11.5
->4.16.18
Release Notes
withastro/astro (astro)
v4.16.18
Compare Source
Patch Changes
#12757
d0aaac3
Thanks @matthewp! - Remove all assets created from the server build#12757
d0aaac3
Thanks @matthewp! - Clean server sourcemaps from static outputv4.16.17
Compare Source
Patch Changes
e7d14c3
Thanks @ematipico! - Fixes an issue where thecheckOrigin
feature wasn't correctly checking thecontent-type
headerv4.16.16
Compare Source
Patch Changes
#12542
65e50eb
Thanks @kadykov! - Fix JPEG image size determination#12525
cf0d8b0
Thanks @ematipico! - Fixes an issue where withi18n
enabled, Astro couldn't render the404.astro
component for non-existent routes.v4.16.15
Compare Source
Patch Changes
b140a3f
Thanks @ematipico! - Fixes a regression where Astro was trying to accessRequest.headers
v4.16.14
Compare Source
Patch Changes
#12480
c3b7e7c
Thanks @matthewp! - Removes the default throw behavior inastro:env
#12444
28dd3ce
Thanks @ematipico! - Fixes an issue where a server island hydration script might fail case the island ID misses from the DOM.#12476
80a9a52
Thanks @florian-lefebvre! - Fixes a case where the Content Layerglob()
loader would not update when renaming or deleting an entry#12418
25baa4e
Thanks @oliverlynch! - Fix cached image redownloading if it is the first asset#12477
46f6b38
Thanks @ematipico! - Fixes an issue where the SSR build was emitting thedist/server/entry.mjs
file with an incorrect import at the top of the file/#12365
a23985b
Thanks @apatel369! - Fixes an issue whereAstro.currentLocale
was not correctly returning the locale for 404 and 500 pages.v4.16.13
Compare Source
Patch Changes
#12436
453ec6b
Thanks @martrapp! - Fixes a potential null access in the clientside router#12392
0462219
Thanks @apatel369! - Fixes an issue where scripts were not correctly injected during the build. The issue was triggered when there were injected routes with the sameentrypoint
and differentpattern
v4.16.12
Compare Source
Patch Changes
acac0af
Thanks @ematipico! - Fixes an issue where the dev server returns a 404 status code when a user middleware returns a validResponse
.v4.16.11
Compare Source
Patch Changes
#12305
f5f7109
Thanks @florian-lefebvre! - Fixes a case where the error overlay would not escape the message#12402
823e73b
Thanks @ematipico! - Fixes a case where Astro allowed to call an action without usingAstro.callAction
. This is now invalid, and Astro will show a proper error.v4.16.10
Compare Source
Patch Changes
#12311
bf2723e
Thanks @dinesh-58! - Addschecked
to the list of boolean attributes.#12363
222f718
Thanks @Fryuni! - Fixes code generated byastro add
command when adding a version of an integration other than the defaultlatest
.#12368
493fe43
Thanks @bluwy! - Improves error logs when executing commands#12355
c4726d7
Thanks @apatel369! - Improves error reporting for invalid frontmatter in MDX files during theastro build
command. The error message now includes the file path where the frontmatter parsing failed.v4.16.9
Compare Source
Patch Changes
#12333
836cd91
Thanks @imattacus! - Destroy the server response stream if async error is thrown#12358
7680349
Thanks @spacedawwwg! - HonorsinlineAstroConfig
parameter ingetViteConfig
when creating a logger#12353
35795a1
Thanks @hippotastic! - Fixes an issue in dev server watch file handling that could cause multiple restarts for a single file change.#12351
5751488
Thanks @florian-lefebvre! - Reverts a change made in4.16.6
that prevented usage ofastro:env
secrets inside middleware in SSR#12346
20e5a84
Thanks @bluwy! - Fixes sourcemap generation when prefetch is enabled#12349
1fc83d3
Thanks @norskeld! - Fixes thegetImage
options type so it properly extendsImageTransform
v4.16.8
Compare Source
Patch Changes
#12338
9ca89b3
Thanks @situ2001! - ResetsNODE_ENV
to ensure install command run in dev mode#12286
9d6bcdb
Thanks @florian-lefebvre! - Fixes a case where a warning for experimentalastro:env
support would be shown when using an adapter but not actually usingastro:env
#12342
ffc836b
Thanks @liruifengv! - Fixes a typo in the command name of the CLI#12301
0cfc69d
Thanks @apatel369! - Fixes an issue with action handler context by passing the correct context (ActionAPIContext
).#12312
5642ef9
Thanks @koyopro! - Fixes an issue where usinggetViteConfig()
returns incorrect and duplicate configuration#12245
1d4f6a4
Thanks @bmenant! - Addcomponents
property to MDXInstance type definition (RenderResult and module import)#12340
94eaeea
Thanks @ematipico! - Fixes an issue where Astro actions didn't work whenbase
was different from/
v4.16.7
Compare Source
Patch Changes
#12263
e9e8080
Thanks @Fryuni! - Fixes conflict between server islands and on-demand dynamic routes in the form of/[...rest]
or/[paramA]/[paramB]
.#12279
b781f88
Thanks @jsparkdev! - Update wrong error message#12273
c2ee963
Thanks @ascorbic! - Fixes an issue with some package managers where sites would not build if TypeScript was not installed.#12235
a75bc5e
Thanks @ematipico! - Fixes a bug where Astro Actions couldn't redirect to the correct pathname when there was a rewrite involved.#11839
ff522b9
Thanks @icaliman! - Fixes error when returning a top-levelnull
from an Astro file frontmatter#12272
388d237
Thanks @ascorbic! - Correctly handles local images when using a base path in SSRv4.16.6
Compare Source
Patch Changes
#11823
a3d30a6
Thanks @DerTimonius! - fix: improve error message when inferSize is used in local images with the Image component#12227
8b1a641
Thanks @florian-lefebvre! - Fixes a case where environment variables would not be refreshed when usingastro:env
#12239
2b6daa5
Thanks @ematipico! - BREAKING CHANGE to the experimental Container API onlyChanges the default page rendering behavior of Astro components in containers, and adds a new option
partial: false
to render full Astro pages as before.Previously, the Container API was rendering all Astro components as if they were full Astro pages containing
<!DOCTYPE html>
by default. This was not intended, and now by default, all components will render as page partials: only the contents of the components without a page shell.To render the component as a full-fledged Astro page, pass a new option called
partial: false
torenderToString()
andrenderToResponse()
:v4.16.5
Compare Source
Patch Changes
ff68ba5
Thanks @martrapp! - Fixes an issue with cssesc in dev mode when settingvite.ssr.noExternal: true
v4.16.4
Compare Source
Patch Changes
#12223
79ffa5d
Thanks @ArmandPhilippot! - Fixes a false positive reported by the dev toolbar Audit app where a label was considered missing when associated with a buttonThe
button
element can be used with a label (e.g. to create a switch) and should not be reported as an accessibility issue when used as a child of alabel
.#12199
c351352
Thanks @ematipico! - Fixes a regression in the computation ofAstro.currentLocale
#12222
fb55695
Thanks @ematipico! - Fixes an issue where the edge middleware couldn't correctly compute the client IP address when callingctx.clientAddress()
v4.16.3
Compare Source
Patch Changes
#12220
b049359
Thanks @bluwy! - Fixes accidental internalsetOnSetGetEnv
parameter rename that caused runtime errors#12197
2aa2dfd
Thanks @ematipico! - Fix a regression where a port was incorrectly added to theAstro.url
v4.16.2
Compare Source
Patch Changes
12b0022
Thanks @bluwy! - Reverts https://github.com/withastro/astro/pull/12173 which causedCan't modify immutable headers
warnings and 500 errors on Cloudflare Pagesv4.16.1
Compare Source
Patch Changes
#12542
65e50eb
Thanks @kadykov! - Fix JPEG image size determination#12525
cf0d8b0
Thanks @ematipico! - Fixes an issue where withi18n
enabled, Astro couldn't render the404.astro
component for non-existent routes.v4.16.0
Compare Source
Minor Changes
#12039
710a1a1
Thanks @ematipico! - Adds amarkdown.shikiConfig.langAlias
option that allows aliasing a non-supported code language to a known language. This is useful when the language of your code samples is not a built-in Shiki language, but you want your Markdown source to contain an accurate language while also displaying syntax highlighting.The following example configures Shiki to highlight
cjs
code blocks using thejavascript
syntax highlighter:Then in your Markdown, you can use the alias as the language for a code block for syntax highlighting:
#11984
3ac2263
Thanks @chaegumi! - Adds a newbuild.concurrency
configuration option to specify the number of pages to build in parallelIn most cases, you should not change the default value of
1
.Use this option only when other attempts to reduce the overall rendering time (e.g. batch or cache long running tasks like fetch calls or data access) are not possible or are insufficient.
Use this option only if the refactors are not possible. If the number is set too high, the page rendering may slow down due to insufficient memory resources and because JS is single-threaded.
Patch Changes
#12160
c6fd1df
Thanks @louisescher! - Fixes a bug whereastro.config.mts
andastro.config.cts
weren't reloading the dev server upon modifications.#12130
e96bcae
Thanks @thehansys! - Fixes a bug in the parsing ofx-forwarded-\*
Request
headers, where multiple values assigned to those headers were not correctly parsed.Now, headers like
x-forwarded-proto: https,http
are correctly parsed.#12147
9db755a
Thanks @ascorbic! - Skips setting statusMessage header for HTTP/2 responseHTTP/2 doesn't support status message, so setting this was logging a warning.
#12151
bb6d37f
Thanks @ematipico! - Fixes an issue whereAstro.currentLocale
wasn't incorrectly computed when thedefaultLocale
belonged to a custom locale path.Updated dependencies [
710a1a1
]:v4.15.12
Compare Source
Patch Changes
#12121
2490ceb
Thanks @ascorbic! - Support passing the valuesInfinity
and-Infinity
as island props.#12118
f47b347
Thanks @Namchee! - Removes thestrip-ansi
dependency in favor of the native Node API#12126
6e1dfeb
Thanks @ascorbic! - Clear content layer cache when astro version changes#12117
a46839a
Thanks @ArmandPhilippot! - Updates Vite links to use their new domain#12124
499fbc9
Thanks @ascorbic! - Allows special characters in Action names#12123
b8673df
Thanks @Princesseuh! - Fixes missingbody
property on CollectionEntry types for content layer entries#12132
de35daa
Thanks @jcayzac! - Updates thecookie
dependency to avoid the CVE 2024-47764 vulnerability.#12113
a54e520
Thanks @ascorbic! - Adds a helpful error when attempting to render an undefined collection entryv4.15.11
Compare Source
Patch Changes
#12097
11d447f
Thanks @ascorbic! - Fixes error where references in content layer schemas sometimes incorrectly report as missing#12108
918953b
Thanks @lameuler! - Fixes a bug where data URL images were not correctly handled. The bug resulted in anENAMETOOLONG
error.#12105
42037f3
Thanks @ascorbic! - Returns custom statusText that has been set in a Response#12109
ea22558
Thanks @ematipico! - Fixes a regression that was introduced by an internal refactor of how the middleware is loaded by the Astro application. The regression was introduced by #11550.When the edge middleware feature is opted in, Astro removes the middleware function from the SSR manifest, and this wasn't taken into account during the refactor.
#12106
d3a74da
Thanks @ascorbic! - Handles case where an immutable Response object is returned from an endpoint#12090
d49a537
Thanks @markjaquith! - Server islands: changes the server island HTML placeholder comment so that it is much less likely to get removed by HTML minifiers.v4.15.10
Compare Source
Patch Changes
#12084
12dae50
Thanks @Princesseuh! - Adds missing filePath property on content layer entries#12046
d7779df
Thanks @martrapp! - View transitions: Fixes Astro's fade animation to prevent flashing during morph transitions.#12043
1720c5b
Thanks @bluwy! - Fixes injected endpointprerender
option detection#12095
76c5fbd
Thanks @TheOtterlord! - Fix installing non-stable versions of integrations withastro add
v4.15.9
Compare Source
Patch Changes
#12034
5b3ddfa
Thanks @ematipico! - Fixes an issue where the middleware wasn't called when a project uses404.astro
.#12042
243ecb6
Thanks @ematipico! - Fixes a problem in the Container API, where a polyfill wasn't correctly applied. This caused an issue in some environments wherecrypto
isn't supported.#12038
26ea5e8
Thanks @ascorbic! - Resolves image paths in content layer with initial slash as project-relativeWhen using the
image()
schema helper, previously paths with an initial slash were treated as public URLs. This was to match the behavior of markdown images. However this is a change from before, where paths with an initial slash were treated as project-relative. This change restores the previous behavior, so that paths with an initial slash are treated as project-relative.v4.15.8
Compare Source
Patch Changes
#12014
53cb41e
Thanks @ascorbic! - Fixes an issue where component styles were not correctly included in rendered MDX#12031
8c0cae6
Thanks @ematipico! - Fixes a bug where the rewrite vianext(/*..*/)
inside a middleware didn't compute the newAPIContext.params
#12026
40e7a1b
Thanks @bluwy! - Initializes the Markdown processor only when there's.md
files#12028
d3bd673
Thanks @bluwy! - Handles route collision detection only if it matchesgetStaticPaths
#12027
dd3b753
Thanks @fviolette! - Addselected
to the list of boolean attributes#12001
9be3e1b
Thanks @uwej711! - Remove dependency on path-to-regexpv4.15.7
Compare Source
Patch Changes
#12000
a2f8c5d
Thanks @ArmandPhilippot! - Fixes an outdated link used to document Content Layer API#11915
0b59fe7
Thanks @azhirov! - Fix: prevent island from re-rendering when using transition:persist (#11854)v4.15.6
Compare Source
Patch Changes
#11993
ffba5d7
Thanks @matthewp! - Fix getStaticPaths regressionThis reverts a previous change meant to remove a dependency, to fix a regression with multiple nested spread routes.
#11964
06eff60
Thanks @TheOtterlord! - Add wayland (wl-copy) support toastro info
v4.15.5
Compare Source
Patch Changes
#11939
7b09c62
Thanks @bholmesdev! - Adds support for Zod discriminated unions on Action form inputs. This allows forms with different inputs to be submitted to the same action, using a given input to decide which object should be used for validation.This example accepts either a
create
orupdate
form submission, and uses thetype
field to determine which object to validate against.The corresponding
create
andupdate
forms may look like this:v4.15.4
Compare Source
Patch Changes
#11879
bd1d4aa
Thanks @matthewp! - Allow passing a cryptography key via ASTRO_KEYFor Server islands Astro creates a cryptography key in order to hash props for the islands, preventing accidental leakage of secrets.
If you deploy to an environment with rolling updates then there could be multiple instances of your app with different keys, causing potential key mismatches.
To fix this you can now pass the
ASTRO_KEY
environment variable to your build in order to reuse the same key.To generate a key use:
This will print out an environment variable to set like:
#11935
c58193a
Thanks @Princesseuh! - Fixesastro add
not using the proper export point when adding certain adaptersv4.15.3
Compare Source
Patch Changes
#11902
d63bc50
Thanks @ascorbic! - Fixes case where content layer did not update during clean dev builds on Linux and Windows#11886
7ff7134
Thanks @matthewp! - Fixes a missing error message when actions throws duringastro sync
#11904
ca54e3f
Thanks @wtchnm! - perf(assets): avoid downloading original image when using cachev4.15.2
Compare Source
Patch Changes
#11870
8e5257a
Thanks @ArmandPhilippot! - Fixes typo in documenting thefallbackType
property in i18n routing#11884
e450704
Thanks @ascorbic! - Correctly handles content layer data where the transformed value does not match the input schema#11900
80b4a18
Thanks @delucis! - Fixes the user-facing type of the newi18n.routing.fallbackType
option to be optionalv4.15.1
Compare Source
Patch Changes
#12121
2490ceb
Thanks @ascorbic! - Support passing the valuesInfinity
and-Infinity
as island props.#12118
f47b347
Thanks @Namchee! - Removes thestrip-ansi
dependency in favor of the native Node API#12126
6e1dfeb
Thanks @ascorbic! - Clear content layer cache when astro version changes#12117
a46839a
Thanks @ArmandPhilippot! - Updates Vite links to use their new domain#12124
499fbc9
Thanks @ascorbic! - Allows special characters in Action names#12123
b8673df
Thanks @Princesseuh! - Fixes missingbody
property on CollectionEntry types for content layer entries#12132
de35daa
Thanks @jcayzac! - Updates thecookie
dependency to avoid the CVE 2024-47764 vulnerability.#12113
a54e520
Thanks @ascorbic! - Adds a helpful error when attempting to render an undefined collection entryv4.15.0
Compare Source
Minor Changes
#11729
1c54e63
Thanks @ematipico! - Adds a new variantsync
for theastro:config:setup
hook'scommand
property. This value is set when calling the commandastro sync
.If your integration previously relied on knowing how many variants existed for the
command
property, you must update your logic to account for this new option.#11743
cce0894
Thanks @ph1p! - Adds a new, optional propertytimeout
for theclient:idle
directive.This value allows you to specify a maximum time to wait, in milliseconds, before hydrating a UI framework component, even if the page is not yet done with its initial load. This means you can delay hydration for lower-priority UI elements with more control to ensure your element is interactive within a specified time frame.
#11677
cb356a5
Thanks @ematipico! - Adds a new optionfallbackType
toi18n.routing
configuration that allows you to control how fallback pages are handled.When
i18n.fallback
is configured, this new routing option controls whether to redirect to the fallback page, or to rewrite the fallback page's content in place.The
"redirect"
option is the default value and matches the current behavior of the existing fallback system.The option
"rewrite"
uses the new rewriting system to create fallback pages that render content on the original, requested URL without a browser refresh.For example, the following configuration will generate a page
/fr/index.html
that will contain the same HTML rendered by the page/en/index.html
whensrc/pages/fr/index.astro
does not exist.#11708
62b0d20
Thanks @martrapp! - Adds a new objectswapFunctions
to expose the necessary utility functions onastro:transitions/client
that allow you to build custom swap functions to be used with view transitions.The example below uses these functions to replace Astro's built-in default
swap
function with one that only swaps the<main>
part of the page:See the view transitions guide for more information about hooking into the
astro:before-swap
lifecycle event and adding a custom swap implementation.#11843
5b4070e
Thanks @bholmesdev! - Exposesz
from the newastro:schema
module. This is the new recommended import source for all Zod utilities when using Astro Actions.v4.14.6
Compare Source
Patch Changes
#11847
45b599c
Thanks @ascorbic! - Fixes a case where Vite would be imported by the SSR runtime, causing bundling errors and bloat.#11822
6fcaab8
Thanks @bluwy! - Marks internalvite-plugin-fileurl
plugin withenforce: 'pre'
#11713
497324c
Thanks @voidfill! - Prevents prefetching of the same urls with different hashes.#11814
2bb72c6
Thanks @eduardocereto! - Updates the documentation for experimental Content Layer API with a corrected code example#11842
1ffaae0
Thanks @stephan281094! - Fixes a typo in theMissingImageDimension
error message#11828
20d47aa
Thanks @bholmesdev! - Improves error message when invalid data is returned by an Action.v4.14.5
Compare Source
Patch Changes
#11809
62e97a2
Thanks @bholmesdev! - Fixes usage of.transform()
,.refine()
,.passthrough()
, and other effects on Action form inputs.#11812
260c4be
Thanks @bholmesdev! - ExposesActionAPIContext
type from theastro:actions
module.#11813
3f7630a
Thanks @bholmesdev! - Fixes unexpectedundefined
value when calling an action from the client without a return value.v4.14.4
Compare Source
Patch Changes
#11794
3691a62
Thanks @bholmesdev! - Fixes unexpected warning log when using Actions on "hybrid" rendered projects.#11801
9f943c1
Thanks @delucis! - Fixes a bug where thefilePath
property was not available on content collection entries when using the content layerfile()
loader with a JSON file that contained an object instead of an array. This was breaking use of theimage()
schema utility among other things.v4.14.3
Compare Source
Patch Changes
#11780
c6622ad
Thanks @Princesseuh! - Deprecates the Squoosh image service, to be removed in Astro 5.0. We recommend migrating to the default Sharp service.#11790
41c3fcb
Thanks @sarah11918! - Updates the documentation for experimentalastro:env
with a corrected link to the RFC proposal#11773
86a3391
Thanks @ematipico! - Changes messages logged when using unsupported, deprecated, or experimental adapter features for clarity#11745
89bab1e
Thanks @bluwy! - Prints prerender dynamic value usage warning only if it's used#11774
c6400ab
Thanks @florian-lefebvre! - Fixes the path returned byinjectTypes
#11730
2df49a6
Thanks @florian-lefebvre! - Simplifies path operations ofastro sync
#11771
49650a4
Thanks @florian-lefebvre! - Fixes an error thrown byastro sync
when anastro:env
virtual module is imported inside the Content Collections config#11744
b677429
Thanks @bluwy! - Disables the WebSocket server when creating a Vite server for loading config filesv4.14.2
Compare Source
Patch Changes
391324d
Thanks @bluwy! - Reverts back toyargs-parser
package for CLI argument parsingv4.14.1
Compare Source
Patch Changes
#11725
6c1560f
Thanks @ascorbic! - Prevents content layer importing node builtins in runtime#11692
35af73a
Thanks @matthewp! - Prevent errant HTML from crashing server islandsWhen an HTML minifier strips away the server island comment, the script can't correctly know where the end of the fallback content is. This makes it so that it simply doesn't remove any DOM in that scenario. This means the fallback isn't removed, but it also doesn't crash the browser.
#11727
3c2f93b
Thanks @florian-lefebvre! - Fixes a type issue when using the Content Layer in devv4.14.0
Compare Source
Minor Changes
#11657
a23c69d
Thanks @bluwy! - Deprecates the option for route-generating files to export a dynamic value forprerender
. Only static values are now supported (e.g.export const prerender = true
or= false
). This allows for better treeshaking and bundling configuration in the future.Adds a new
"astro:route:setup"
hook to the Integrations API to allow you to dynamically set options for a route at build or request time through an integration, such as enabling on-demand server rendering.To migrate from a dynamic export to the new hook, update or remove any dynamic
prerender
exports from individual routing files:Instead, create an integration with the
"astro:route:setup"
hook and update the route'sprerender
option:#11360
a79a8b0
Thanks @ascorbic! - Adds a newinjectTypes()
utility to the Integration API and refactors how type generation worksUse
injectTypes()
in theastro:config:done
hook to inject types into your user's project by adding a new a*.d.ts
file.The
filename
property will be used to generate a file at/.astro/integrations/<normalized_integration_name>/<normalized_filename>.d.ts
and must end with".d.ts"
.The
content
property will create the body of the file, and must be valid TypeScript.Additionally,
injectTypes()
returns a URL to the normalized path so you can overwrite its content later on, or manipulate it in any way you want.Codegen has been refactored. Although
src/env.d.ts
will continue to work as is, we recommend you update it:#11605
d3d99fb
Thanks @jcayzac! - Adds a new propertymeta
to Astro's built-in<Code />
component.This allows you to provide a value for Shiki's
meta
attribute to pass options to transformers.The following example passes an option to highlight lines 1 and 3 to Shiki's
transformerMetaHighlight
:v4.13.4
Compare Source
Patch Changes
#11678
34da907
Thanks @ematipico! - Fixes a case where omitting a semicolon and line ending with carriage return - CRLF - in theprerender
option could throw an error.#11535
932bd2e
Thanks @matthewp! - Encrypt server island propsServer island props are now encrypted with a key generated at build-time. This is intended to prevent accidentally leaking secrets caused by exposing secrets through prop-passing. This is not intended to allow a server island to be trusted to skip authentication, or to protect against any other vulnerabilities other than secret leakage.
See the RFC for an explanation: https://github.com/withastro/roadmap/blob/server-islands/proposals/server-islands.md#props-serialization
#11655
dc0a297
Thanks @billy-le! - Fixes Astro Actionsinput
validation when usingdefault
values with a form input.#11689
c7bda4c
Thanks @ematipico! - Fixes an issue in the Astro actions, where the size of the generated cookie was exceeding the size permitted by theSet-Cookie
header.v4.13.3
Compare Source
Patch Changes
#11653
32be549
Thanks @florian-lefebvre! - Updatesastro:env
docs to reflect current developments and usage guidance#11658
13b912a
Thanks @bholmesdev! - FixesorThrow()
type when calling an Action without aninput
validator.#11603
f31d466
Thanks @bholmesdev! - Improves user experience when render an Action result from a form POST request:?_astroAction=NAME
flag when a result is rendered.Also improves the DX of directing to a new route on success. Actions will now redirect to the route specified in your
action
string on success, and redirect back to the previous page on error. This follows the routing convention of established backend frameworks like Laravel.For example, say you want to redirect to a
/success
route whenactions.signup
succeeds. You can add/success
to youraction
string like so:/success
.You can retrieve the action result from either page using the
Astro.getActionResult()
function.Note on security
This uses a temporary cookie to forward the action result to the next page. The cookie will be deleted when that page is rendered.
⚠ The action result is not encrypted. In general, we recommend returning minimal data from an action handler to a) avoid leaking sensitive information, and b) avoid unexpected render issues once the temporary cookie is deleted. For example, a
login
function may return a user's session id to retrieve from your Astro frontmatter, rather than the entire user object.v4.13.2
Compare Source
Patch Changes
#11648
589d351
Thanks @bholmesdev! - Fixes unexpected error when refreshing a POST request from a form using Actions.#11600
09ec2ca
Thanks @ArmandPhilippot! - DeprecatesgetEntryBySlug
andgetDataEntryById
functions exported byastro:content
in favor ofgetEntry
.#11593
81d7150
Thanks @bholmesdev! - Adds support forDate()
,Map()
, andSet()
from action results. See devalue for a complete list of supported values.Also fixes serialization exceptions when deploying Actions with edge middleware on Netlify and Vercel.
#11617
196092a
Thanks @abubakriz! - Fix toolbar audit incorrectly flagging images as above the fold.#11634
2716f52
Thanks @bholmesdev! - Fixes internal server error when calling an Astro Action without arguments on Vercel.#11628
9aaf58c
Thanks @madbook! - Ensures consistent CSS chunk hashes across different environmentsv4.13.1
Compare Source
Patch Changes
#11584
a65ffe3
Thanks @bholmesdev! - Removes async local storage dependency from Astro Actions. This allows Actions to run in Cloudflare and Stackblitz without opt-in flags or other configuration.This also introduces a new convention for calling actions from server code. Instead of calling actions directly, you must wrap function calls with the new
Astro.callAction()
utility.v4.13.0
Compare Source
Minor Changes
#11507
a62345f
Thanks @ematipico! - Adds color-coding to the console output during the build to highlight slow pages.Pages that take more than 500 milliseconds to render will have their build time logged in red. This change can help you discover pages of your site that are not performant and may need attention.
#11379
e5e2d3e
Thanks @alexanderniebuhr! - Theexperimental.contentCollectionJsonSchema
feature introduced behind a flag in v4.5.0 is no longer experimental and is available for general use.If you are working with collections of type
data
, Astro will now auto-generate JSON schema files for your editor to get IntelliSense and type-checking. A separate file will be created for each data collection in your project based on your collections defined insrc/content/config.ts
using a library calledzod-to-json-schema
.This feature requires you to manually set your schema's file path as the value for
$schema
in each data entry file of the collection:Alternatively, you can set this value in your editor settings. For example, to set this value in VSCode's
json.schemas
setting, provide the path of files to match and the location of your JSON schema:If you were previously using this feature, please remove the experimental flag from your Astro config:
If you have been waiting for stabilization before using JSON Schema generation for content collections, you can now do so.
Please see the content collections guide for more about this feature.
#11542
45ad326
Thanks @ematipico! - Theexperimental.rewriting
feature introduced behind a flag in v4.8.0 is no longer experimental and is available for general use.Astro.rewrite()
andcontext.rewrite()
allow you to render a different page without changing the URL in the browser. Unlike using a redirect, your visitor is kept on the original page they visited.Rewrites can be useful for showing the same content at multiple paths (e.g. /products/shoes/men/ and /products/men/shoes/) without needing to maintain two identical source files.
Rewrites are supported in Astro pages, endpoints, and middleware.
Return
Astro.rewrite()
in the frontmatter of a.astro
page component to display a different page's content, such as fallback localized content:v4.12.3
Compare Source
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.v4.12.2
Compare Source
Patch Changes
#11505
8ff7658
Thanks @ematipico! - Enhances the dev server logging when rewrites occur during the lifecycle or rendering.The dev server will log the status code before and after a rewrite:
#11506
026e8ba
Thanks @sarah11918! - Fixes typo in documenting theslot="fallback"
attribute for Server Islands experimental feature.#11508
ca335e1
Thanks @cramforce! - Escapes HTML in serialized props#11501
4db78ae
Thanks @martrapp! - Adds the missing export for accessing thegetFallback()
function of the client site router.v4.12.1
Compare Source
Patch Changes
#11486
9c0c849
Thanks @ematipico! - Adds a new function calledaddClientRenderer
to the Container API.This function should be used when rendering components using the
client:*
directives. TheaddClientRenderer
API must be usedafter the use of the
addServerRenderer
:#11500
4e142d3
Thanks @Princesseuh! - Fixes inferRemoteSize type not working#11496
53ccd20
Thanks @alfawal! - Hide the dev toolbar onwindow.print()
(CTRL + P)v4.12.0
Compare Source
Minor Changes
#11341
49b5145
Thanks @madcampos! - Adds support for Shiki'sdefaultColor
option.This option allows you to override the values of a theme's inline style, adding only CSS variables to give you more flexibility in applying multiple color themes.
Configure
defaultColor: false
in your Shiki config to apply throughout your site, or pass to Astro's built-in<Code>
component to style an individual code block.v4.11.6
Compare Source
Patch Changes
#11459
bc2e74d
Thanks @mingjunlu! - Fixes false positive audit warnings on elements with the role "tabpanel".#11472
cb4e6d0
Thanks @delucis! - Avoids targeting all files in thesrc/
directory for eager optimization by Vite. After this change, only JSX, Vue, Svelte, and Astro components get scanned for early optimization.#11387
b498461
Thanks @bluwy! - Fixes prerendering not removing unused dynamic imported chunks#11437
6ccb30e
Thanks @NuroDev! - Fixes a case where Astro's configexperimental.env.schema
keys did not allow numbers. Numbers are still not allowed as the first character to be able to generate valid JavaScript identifiers#11439
08baf56
Thanks @bholmesdev! - Expands theisInputError()
utility fromastro:actions
to accept errors of any type. This should now allow type narrowing from a try / catch block.#11452
0e66849
Thanks @FugiTech! - Fixes an issue where using .nullish() in a formdata Astro action would always parse as a string#11438
619f07d
Thanks @bholmesdev! - Exposes utility types fromastro:actions
for thedefineAction
handler (ActionHandler
) and theActionError
code (ActionErrorCode
).#11456
17e048d
Thanks @RickyC0626! - Fixesastro dev --open
unexpected behavior that spawns a new tab every time a config file is saved#11337
0a4b31f
Thanks @florian-lefebvre! - Adds a new propertyexperimental.env.validateSecrets
to allow validating private variables on the server.By default, this is set to
false
and only public variables are checked on start. If enabled, secrets will also be checked on start (dev/build modes). This is useful for example in some CIs to make sure all your secrets are correctly set before deploying.#11443
ea4bc04
Thanks @bholmesdev! - Expose newActionReturnType
utility fromastro:actions
. This infers the return type of an action by passingtypeof actions.name
as a type argument. This example defines alike
action that returnslikes
as an object:In your client code, you can infer this handler return value with
ActionReturnType
:#11436
7dca68f
Thanks @bholmesdev! - Fixesastro:actions
autocompletion for thedefineAction
accept
property#11455
645e128
Thanks @florian-lefebvre! - Improvesastro:env
invalid variables errorsConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.
eede174912
toa0e3165b61
a0e3165b61
to7918dcb973
7918dcb973
to88dd801e9e
88dd801e9e
tob058b9da6a
b058b9da6a
toe57e8eca77
e57e8eca77
to13acfb928d
13acfb928d
toa3749d261a
a3749d261a
to72030737c4
72030737c4
to6a2a1fa99a
6a2a1fa99a
to06c26e2b2e
06c26e2b2e
tob93dec6106
b93dec6106
to07dd9d46dd
07dd9d46dd
to1bb6b6ffb5
1bb6b6ffb5
to5862abeb81
5862abeb81
toc4e19b74bb
c4e19b74bb
to1c67348219
1c67348219
to10c07bc2f8
10c07bc2f8
to79785735e7
79785735e7
tod68ef1e18b
d68ef1e18b
to366790a601
chore(deps): update dependency astro to v4.16.17to chore(deps): update dependency astro to v4.16.18366790a601
to2b78ca10f2
2b78ca10f2
to7b4dcc6693
7b4dcc6693
to2dbec06449
2dbec06449
tobbcc88cf6e
bbcc88cf6e
to6b0d9c0e30
6b0d9c0e30
tof38c7b125c
f38c7b125c
toc29d56886d
c29d56886d
tof9fe4c0d93
f9fe4c0d93
to8a37fa860e
8a37fa860e
tof26bdc79e3
f26bdc79e3
to18e2d84078
18e2d84078
tod517dde07f
d517dde07f
to03d18bd30c
03d18bd30c
tofbc5389eb7
fbc5389eb7
to4cceeee2f9
4cceeee2f9
to7c1f91641a
7c1f91641a
toc44c3b52e5
c44c3b52e5
to22ed45a32e
22ed45a32e
to694f5d4965
694f5d4965
to3da33b817e
3da33b817e
to60b88a3ee8
60b88a3ee8
to4b47592e82
4b47592e82
to026684a82b
026684a82b
toed39760892
ed39760892
to60c0c20838
60c0c20838
to654c66ad69
654c66ad69
toc1530ff604
c1530ff604
to8e4e29bc7d
8e4e29bc7d
tocc60cd1910
cc60cd1910
to2de55f4310
2de55f4310
toeae9e7cf49
eae9e7cf49
toa8832dca06
a8832dca06
to7b79d5756a
7b79d5756a
to1dd84a6547
1dd84a6547
to89ad3ec26e
89ad3ec26e
to0d4f0de58b
0d4f0de58b
to08c8a1cb71
08c8a1cb71
to87fafac690
87fafac690
tof1b13d08d2
f1b13d08d2
to6f2e374994
6f2e374994
tof2791233ba
f2791233ba
toe5a2247406
e5a2247406
to2f78525251
2f78525251
tof5bbd3753a
f5bbd3753a
tod5f737d91c
d5f737d91c
tobebde00b5f
bebde00b5f
tobfcf57f2b0
bfcf57f2b0
to09219aa3ea
09219aa3ea
to07eb4fd8bd
07eb4fd8bd
to9213800b73
9213800b73
to8506e5e256
8506e5e256
to161efd5324
161efd5324
to650535500e
650535500e
toccbe876eab
ccbe876eab
to0b801ede97
0b801ede97
to36646214f1
36646214f1
to84299b6aae
84299b6aae
tod1112c04af
d1112c04af
to1f739f49f5
1f739f49f5
tob8e9251e7f
b8e9251e7f
to89fffdfc90
89fffdfc90
tod7537b2bbb
d7537b2bbb
toe1bcdd6a3b
e1bcdd6a3b
to315c9e13ba
315c9e13ba
to611cab89d5
611cab89d5
to2e9a2ba180
2e9a2ba180
tod9f99207c2
d9f99207c2
to8a9aecb795
8a9aecb795
tobe79d5583b
be79d5583b
to7d856291ea
7d856291ea
to2751e3b4ab
2751e3b4ab
tod9a6f5bbd9
d9a6f5bbd9
to94ef31e2e2
0454330726
tofdc90134ab
fdc90134ab
to0cb1435475
0cb1435475
tof16dcc6105
f16dcc6105
to06033c625e
06033c625e
to1ba9172932
1ba9172932
to7258cfae2f
7258cfae2f
to6ef06e2305
6ef06e2305
to4f6f601bf0
4f6f601bf0
tod06d566c99
d06d566c99
toc2ee9e901a
c2ee9e901a
toef4d23a96d
ef4d23a96d
tob53ccf93c6
b53ccf93c6
toba56699b87
ba56699b87
to7dd226acb7
7dd226acb7
tocf77475d7b
cf77475d7b
to614cffbf15
457cb77018
tob9c57c7d83
b9c57c7d83
to70fd5ca95a
70fd5ca95a
to351c93b519
351c93b519
to2e85b52f73
2e85b52f73
to13c84805f0
13c84805f0
tof759838022
f759838022
tod33ef824e4
d33ef824e4
to1502f417b9
1502f417b9
to00e9dcd478
00e9dcd478
tofc914a8a93
fc914a8a93
tofec19ca996
fec19ca996
to854c4d761f
854c4d761f
to191f3cb62d
191f3cb62d
to634ad55698
634ad55698
toc39ae976a2
c39ae976a2
to462902c071
462902c071
to6e563c215b
6e563c215b
to9a1a668320
9a1a668320
to0fc6f58ba1
0fc6f58ba1
to6773bb3d56
6773bb3d56
to96f5fc6d8d
96f5fc6d8d
to1c579af92d
1c579af92d
to9c79cae849
9c79cae849
to6e5e38cce4
6e5e38cce4
to37b47776fb
37b47776fb
to3eb6670d4a
3eb6670d4a
to6e5ece2148
6e5ece2148
toaf893045b7
af893045b7
toc694879d24
c694879d24
toa2b6f891d5
a2b6f891d5
to0ac7e0e9ca
0ac7e0e9ca
toc43b51a2ee
c43b51a2ee
to43dce928dc
43dce928dc
toece8f6664a
ece8f6664a
tob1ec8c7525
b1ec8c7525
to90b6c684b4
90b6c684b4
to355f37f698
355f37f698
to09a95863a4
09a95863a4
to35fe44f86f
35fe44f86f
tobd1853f14f
bd1853f14f
to08e6f2c0b1
08e6f2c0b1
toe67ed90cbb
e67ed90cbb
to3d28500b11
3d28500b11
tod2818bb272
d2818bb272
to403fc378b3
403fc378b3
toe62ba3f564
e62ba3f564
to4bd2bcc838
4bd2bcc838
to3acecea577
3acecea577
to77f21fac51
77f21fac51
toa91ea4bb65
a91ea4bb65
tof1ce27882a
f1ce27882a
toed2f798d7a
ed2f798d7a
to02147898ca
02147898ca
to44394d9994
44394d9994
toa2ffe494b6
a2ffe494b6
toc88d61a025
c88d61a025
tod164ea0444
d164ea0444
to462ef3352c
462ef3352c
to478dd4e2bd
478dd4e2bd
to6417f0eeb5
6417f0eeb5
to4724184b74
4724184b74
to5d8e50463d
5d8e50463d
to8ec925fbb5
8ec925fbb5
to6b1133fda1
6b1133fda1
tod4bebc025d
d4bebc025d
toc3eef60257
c3eef60257
tof9f8bf5afe
f9f8bf5afe
to1980d1c3b2
1980d1c3b2
tob45b274009
b45b274009
to9f96ce6d60
9f96ce6d60
tof3335d5ba9
f3335d5ba9
toa39a0ada81
a39a0ada81
to9b7937f6f8
9b7937f6f8
to6a956c32ad
6a956c32ad
tof6ce2be94d
f6ce2be94d
to520c706ed1
520c706ed1
to67182b8cba
67182b8cba
tocfb5e329cf
cfb5e329cf
to3e3131341b
3e3131341b
to9909fb839a
9909fb839a
to6dd3b6a4b6
6dd3b6a4b6
to71903ba4f6
37af42448d
toe44109de0b
e44109de0b
to1fd31724bf
1fd31724bf
to080cad8916
Checkout
From your project repository, check out a new branch and test the changes.