fix(deps): update dependency astro to v4.7.0 - autoclosed
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
astro (source) | dependencies | minor | 4.4.1 -> 4.7.0 |
Release Notes
withastro/astro (astro)
v4.7.0
Minor Changes
-
#10665
7b4f284
Thanks @Princesseuh! - Adds new utilities to ease the creation of toolbar apps includingdefineToolbarApp
to make it easier to define your toolbar app andapp
andserver
helpers for easier communication between the toolbar and the server. These new utilities abstract away some of the boilerplate code that is common in toolbar apps, and lower the barrier of entry for app authors.For example, instead of creating an event listener for the
app-toggled
event and manually typing the value in the callback, you can now use theonAppToggled
method. Additionally, communicating with the server does not require knowing any of the Vite APIs anymore, as a newserver
object is passed to theinit
function that contains easy to use methods for communicating with the server.import { defineToolbarApp } from "astro/toolbar"; export default defineToolbarApp({ init(canvas, app, server) { - app.addEventListener("app-toggled", (e) => { - console.log(`App is now ${state ? "enabled" : "disabled"}`);. - }); + app.onToggled(({ state }) => { + console.log(`App is now ${state ? "enabled" : "disabled"}`); + }); - if (import.meta.hot) { - import.meta.hot.send("my-app:my-client-event", { message: "world" }); - } + server.send("my-app:my-client-event", { message: "world" }) - if (import.meta.hot) { - import.meta.hot.on("my-server-event", (data: {message: string}) => { - console.log(data.message); - }); - } + server.on<{ message: string }>("my-server-event", (data) => { + console.log(data.message); // data is typed using the type parameter + }); }, })
Server helpers are also available on the server side, for use in your integrations, through the new
toolbar
object:"astro:server:setup": ({ toolbar }) => { toolbar.on<{ message: string }>("my-app:my-client-event", (data) => { console.log(data.message); toolbar.send("my-server-event", { message: "hello" }); }); }
This is a backwards compatible change and your your existing dev toolbar apps will continue to function. However, we encourage you to build your apps with the new helpers, following the updated Dev Toolbar API documentation.
-
#10734
6fc4c0e
Thanks @Princesseuh! - Astro will now automatically check for updates when you run the dev server. If a new version is available, a message will appear in the terminal with instructions on how to update. Updates will be checked once per 10 days, and the message will only appear if the project is multiple versions behind the latest release.This behavior can be disabled by running
astro preferences disable checkUpdates
or setting theASTRO_DISABLE_UPDATE_CHECK
environment variable tofalse
. -
#10762
43ead8f
Thanks @bholmesdev! - Enables type checking for JavaScript files when using thestrictest
TS config. This ensures consistency with Astro's other TS configs, and fixes type checking for integrations like Astro DB when using anastro.config.mjs
.If you are currently using the
strictest
preset and would like to still disable.js
files, setallowJS: false
in yourtsconfig.json
.
Patch Changes
-
#10861
b673bc8
Thanks @mingjunlu! - Fixes an issue whereastro build
writes type declaration files tooutDir
when it's outside of root directory. -
#10684
8b59d5d
Thanks @PeterDraex! - Update sharp to 0.33 to fix issue with Alpine Linux
v4.6.4
Patch Changes
-
#10846
3294f7a
Thanks @matthewp! - Prevent getCollection breaking in vitest -
#10856
30cf82a
Thanks @robertvanhoesel! - Prevents inputs with a name attribute of action or method to break ViewTransitions' form submission -
#10833
8d5f3e8
Thanks @renovate! - Updatesesbuild
dependency to v0.20. This should not affect projects in most cases. -
#10801
204b782
Thanks @rishi-raj-jain! - Fixes an issue where images in MD required a relative specifier (e.g../
)Now, you can use the standard
![](relative/img.png)
syntax in MD files for images colocated in the same folder: no relative specifier required!There is no need to update your project; your existing images will still continue to work. However, you may wish to remove any relative specifiers from these MD images as they are no longer necessary:
- ![A cute dog](./dog.jpg) + ![A cute dog](dog.jpg) <!-- This dog lives in the same folder as my article! -->
-
#10841
a2df344
Thanks @martrapp! - Due to regression on mobile WebKit browsers, reverts a change made for JavaScript animations during view transitions.
v4.6.3
Patch Changes
-
#10799
dc74afca9f5eebc2d61331298d6ef187d92051e0
Thanks @martrapp! - Fixes an issue with persisted non-text input fields that have the focus during view transition navigation. -
#10773
35e43ecdaae7adc4b9a0b974192a033568cfb3f0
Thanks @lilnasy! - Improves performance for frequent use of small components. -
#10763
63132771373ce1510be3e8814897accc0bf62ef8
Thanks @matthewp! - Invalidate CC cache manifest when lockfile or config changes -
#10811
77822a822b04b5113726f713df104e8667333c59
Thanks @AvinashReddy3108! - Update list of available integrations in theastro add
CLI help.
v4.6.2
Patch Changes
-
#10732
a92e263beb6e0166f1f13c97803d1861793e2a99
Thanks @rishi-raj-jain! - Correctly setsbuild.assets
directory duringvite
config setup -
#10776
1607face67051b16d4648555f1001b2a9308e377
Thanks @fshafiee! - Fixes cookies type inference -
#10796
90669472df3a05b33f0de46fd2d039e3eba7f7dd
Thanks @bluwy! - Disables streaming when rendering site withoutput: "static"
-
#10782
b0589d05538fcc77dd3c38198bf93f3548362cd8
Thanks @nektro! - Handles possible null value when callingwhich-pm
during dynamic package installation -
#10774
308b5d8c122f44e7724bb2f3ad3aa5c43a83e584
Thanks @Princesseuh! - Fixesastro add
sometimes modifyingbaseUrl
unintentionally -
#10783
4dbd545304d1a8af903c8c97f237eb55c988c40b
Thanks @jurajkapsz! - Fixes Picture component specialFormatsFallback fallback check -
#10775
06843121450899ecf0390ca4efaff6c9a6fe0f75
Thanks @Princesseuh! - Fixes assets endpoint in serverless returning 404 in certain situations where the website might be under a protected route -
#10787
699f4559a279b374bddb3e5e48c72afe2709e8e7
Thanks @martrapp! - Fixes a timing issue in the view transition simulation.
v4.6.1
Patch Changes
-
#10708
742866c5669a2be4f8b5a4c861cadb933c381415
Thanks @horo-fox! - Limits parallel imports withingetCollection()
to prevent EMFILE errors when accessing files -
#10755
c6d59b6fb7db20af957a8706c8159c50619235ef
Thanks @ematipico! - Fixes a case where the i18n fallback failed to correctly redirect to the index page with SSR enabled
v4.6.0
Minor Changes
-
#10591
39988ef8e2c4c4888543c973e06d9b9939e4ac95
Thanks @mingjunlu! - Adds a new dev toolbar settings option to change the horizontal placement of the dev toolbar on your screen: bottom left, bottom center, or bottom right. -
#10689
683d51a5eecafbbfbfed3910a3f1fbf0b3531b99
Thanks @ematipico! - Deprecate support for versions of Node.js older thanv18.17.1
for Node.js 18, older thanv20.0.3
for Node.js 20, and the complete Node.js v19 release line.This change is in line with Astro's Node.js support policy.
-
#10678
2e53b5fff6d292b7acdf8c30a6ecf5e5696846a1
Thanks @ematipico! - Adds a new experimental security option to prevent Cross-Site Request Forgery (CSRF) attacks. This feature is available only for pages rendered on demand:import { defineConfig } from 'astro/config'; export default defineConfig({ experimental: { security: { csrfProtection: { origin: true, }, }, }, });
Enabling this setting performs a check that the "origin" header, automatically passed by all modern browsers, matches the URL sent by each
Request
.This experimental "origin" check is executed only for pages rendered on demand, and only for the requests
POST,
PATCH,
DELETEand
PUTwith one of the following
content-type` headers: 'application/x-www-form-urlencoded', 'multipart/form-data', 'text/plain'.It the "origin" header doesn't match the pathname of the request, Astro will return a 403 status code and won't render the page.
-
#10193
440681e7b74511a17b152af0fd6e0e4dc4014025
Thanks @ematipico! - Adds a new i18n routing optionmanual
to allow you to write your own i18n middleware:import { defineConfig } from 'astro/config'; // astro.config.mjs export default defineConfig({ i18n: { locales: ['en', 'fr'], defaultLocale: 'fr', routing: 'manual', }, });
Adding
routing: "manual"
to your i18n config disables Astro's own i18n middleware and provides you with helper functions to write your own:redirectToDefaultLocale
,notFound
, andredirectToFallback
:// middleware.js import { redirectToDefaultLocale } from 'astro:i18n'; export const onRequest = defineMiddleware(async (context, next) => { if (context.url.startsWith('/about')) { return next(); } else { return redirectToDefaultLocale(context, 302); } });
Also adds a
middleware
function that manually creates Astro's i18n middleware. This allows you to extend Astro's i18n routing instead of completely replacing it. Runmiddleware
in combination with your own middleware, using thesequence
utility to determine the order:import { defineMiddleware, sequence } from 'astro:middleware'; import { middleware } from 'astro:i18n'; // Astro's own i18n routing config export const userMiddleware = defineMiddleware(); export const onRequest = sequence( userMiddleware, middleware({ redirectToDefaultLocale: false, prefixDefaultLocale: true, }) );
-
#10671
9e14a78cb05667af9821948c630786f74680090d
Thanks @fshafiee! - Adds thehttpOnly
,sameSite
, andsecure
options when deleting a cookie
Patch Changes
-
#10747
994337c99f84304df1147a14504659439a9a7326
Thanks @lilnasy! - Fixes an issue where functions could not be used as named slots. -
#10750
7e825604ddf90c989537e07939a39dc249343897
Thanks @OliverSpeir! - Fixes a false positive for "Invalidtabindex
on non-interactive element" rule for roleless elements (div
andspan
). -
#10745
d51951ce6278d4b59deed938d65e1cb72b5102df
Thanks @lilnasy! - Fixes an issue where CLI commands could not report the reason for failure before exiting. -
#10661
e2cd7f4291912dadd4a654bc7917856c58a72a97
Thanks @liruifengv! - Fixed errorOverlay theme toggle bug. -
Updated dependencies [
ccafa8d230f65c9302421a0ce0a0adc5824bfd55
,683d51a5eecafbbfbfed3910a3f1fbf0b3531b99
]:
v4.5.18
Patch Changes
-
#10728
f508c4b7d54316e737f454a3777204b23636d4a0
Thanks @ematipico! - Fixes a regression where some very specific code rendered usingexpressive-code
was not escaped properly. -
#10737
8a30f257b1f3618b01212a591b82ad7a63c82fbb
Thanks @lilnasy! - Fixes a regression where constructing and returning 404 responses from a middleware resulted in the dev server getting stuck in a loop. -
#10719
b21b3ba307235510707ee9f5bd49f71473a07004
Thanks @ematipico! - Fixes a false positive fordiv
andspan
elements when running the Dev Toolbar accessibility audits.Those are special elements that don't have an interaction assigned by default. Instead, it is assigned through the
role
attribute. This means that cases like the following are now deemed correct:<div role="tablist"></div> <span role="button" onclick="" onkeydown=""></span>
v4.5.17
Patch Changes
-
#10688
799f6f3f29a3ef4f76347870a209ffa89651adfa
Thanks @bluwy! - Marks rendererjsxImportSource
andjsxTransformOptions
options as deprecated as they are no longer used since Astro 3.0 -
#10657
93d353528fa1a85b67e3f1e9514ed2a1b42dfd94
Thanks @natemoo-re! - Improves the color contrast for notification badges on dev toolbar apps -
#10693
1d26e9c7f7d8f47e33bc68d3b30bbffce25c7b63
Thanks @apetta! - Adds thedisableremoteplayback
attribute to MediaHTMLAttributes interface -
#10695
a15975e41cb5eaf6ed8eb3ebaee676a17e433052
Thanks @bluwy! - Skips prerender chunk if building with static output -
#10707
5e044a5eafaa206d2ef8b62c37d1bcd37f0a4078
Thanks @horo-fox! - Logs an error when a page'sgetStaticPaths
fails -
#10686
fa0f593890502faf5709ab881fe0e45519d2f7af
Thanks @bluwy! - Prevents inlining scripts if used by other chunks when using theexperimental.directRenderScript
option
v4.5.16
Patch Changes
-
#10679
ca6bb1f31ef041e6ccf8ef974856fa945ff5bb31
Thanks @martrapp! - Generates missing popstate events for Firefox when navigating to hash targets on the same page. -
#10669
0464563e527f821e53d78028d9bbf3c4e1050f5b
Thanks @Princesseuh! - Fixes Astro waiting infinitely in CI when a required package was not installed
v4.5.15
Patch Changes
-
#10666
55ddb2ba4889480f776a8d29b9dcd531b9f5ab3e
Thanks @lilnasy! - Fixes an issue where forwarded requests did not include hostname on node-based adapters. This also makes error pages more reliable. -
#10642
4f5dc14f315eba7ea6ec5cc8e5dacb0cb81288dd
Thanks @OliverSpeir! - Fixes typing issues when usingformat
andquality
options with remote images -
#10616
317d18ef8c9cf4fd13647518e3fd352774a86481
Thanks @NikolaRHristov! - This change disables thesharp
libvips
image cache as it errors when the file is too small and operations are happening too fast (runs into a race condition)
v4.5.14
Patch Changes
-
#10470
320c309ca9fbe51c40e6ba846d04a0cb49aced5f
Thanks @liruifengv! - improvesclient:only
error message -
#10496
ce985631129e49f7ea90e6ea690ef9f9cf0e6987
Thanks @florian-lefebvre! - Makes the warning less scary when adding 3rd-party integrations usingastro add
v4.5.13
Patch Changes
-
#10495
046d69d517118ab5c0e71604b321729d66ddffff
Thanks @satyarohith! - This patch allows astro to run in node-compat mode in Deno. Deno doesn't support construction of response from async iterables in node-compat mode so we need to use ReadableStream. -
#10605
a16a829f4e25ad5c9a1b4557ec089fc8ab53320f
Thanks @martrapp! - Fixes an issue with outdated page titles in browser history when using text fragments in view transition navigation. -
#10584
e648c5575a8774af739231cfa9fc27a32086aa5f
Thanks @duanwilliam! - Fixes a bug where JSX runtime would error on components with nullish prop values in certain conditions. -
#10608
e31bea0704890ff92ce4f9b0ce536c1c90715f2c
Thanks @matthewp! - Fixes bug with head content being pushed into body -
Updated dependencies [
2cf116f80cb5e421ab5cc5eb4a654e7b78c1b8de
,374efcdff9625ca43309d89e3b9cfc9174351512
]:
v4.5.12
Patch Changes
-
#10596
20463a6c1e1271d8dc3cb0ab3419ee5c72abd218
Thanks @Princesseuh! - AddremoveBase
function -
Updated dependencies [
20463a6c1e1271d8dc3cb0ab3419ee5c72abd218
]:
v4.5.11
Patch Changes
-
#10567
fbdc10f90f7baa5c49f2f53e3e4ce8f453814c01
Thanks @Princesseuh! - Fixesastro:assets
not working when using complex config withvite.build.rollupOptions.output.assetFileNames
-
#10593
61e283e5a0d95b6ef5d3c4c985d6ee78f74bbd8e
Thanks @Princesseuh! - Fixes Polymorphic type helper causing TypeScript errors in certain cases after the previous update -
#10543
0fd36bdb383297b32cc523b57d2442132da41595
Thanks @matthewp! - Fixes inline stylesheets with content collections cache -
#10582
a05953538fcf524786385830b99c0c5a015173e8
Thanks @lilnasy! - Fixes an issue where the dev server got stuck in a loop while routing responses with a 404 status code to the 404 route.
v4.5.10
Patch Changes
-
#10549
54c2f9707f5d038630143f769e3075c698474654
Thanks @admirsaheta! - Updates theHTMLAttributes
type exported fromastro
to allow data attributes -
#10562
348c1ca1323d0516c2dcf8e963343cd12cb5407f
Thanks @apetta! - Fixes minor type issues inside the built-in components of Astro -
#10550
34fa8e131b85531e6629390307108ffc4adb7ed1
Thanks @Skn0tt! - Fixes bug where server builds would include unneeded assets in SSR Function, potentially leading to upload errors on Vercel, Netlify because of size limits -
Updated dependencies [
c585528f446ccca3d4c643f4af5d550b93c18902
]:
v4.5.9
Patch Changes
-
#10532
8306ce1ff7b71a2a0d7908336c9be462a54d395a
Thanks @martrapp! - Fixes a style issue ofclient:only
components in DEV mode during view transitions. -
#10473
627e47d67af4846cea2acf26a96b4124001b26fc
Thanks @bluwy! - Fixes and improves performance when rendering Astro JSX
v4.5.8
Patch Changes
-
#10504
8e4e554cc211e59c329c0a5d110c839c886ff120
Thanks @Princesseuh! - Update Babel version to fix regression in Babel's7.24.2
. -
Updated dependencies [
19e42c368184013fc30d1e46753b9e9383bb2bdf
]:
v4.5.7
Patch Changes
-
#10493
e4a6462751725878bfe47632eeafa6854cad5bf2
Thanks @firefoxic! -<link>
tags created by astro for optimized stylesheets now do not include the closing forward slash. This slash is optional for void elements such as link, but made some html validation fail.
v4.5.6
Patch Changes
-
#10455
c12666166db724915e42e37a048483c99f88e6d9
Thanks @lilnasy! - Adds a helpful error message that will be shown when an endpoint does not return aResponse
. -
#10426
6a9a35ee15069541c3144012385366a3c689240a
Thanks @markgaze! - Fixes an issue with generating JSON schemas when the schema is a function -
#10448
fcece3658697248ab58f77b3d4a8b14d362f3c47
Thanks @lilnasy! - Fixes an issue where multiple rendering errors resulted in a crash of the SSR app server.
v4.5.5
Patch Changes
-
#10379
3776ecf0aa9e08a992d3ae76e90682fd04093721
Thanks @1574242600! - Fixes a routing issue with partially truncated dynamic segments. -
#10442
f8e0ad3c52a37b8a2175fe2f5ff2bd0cd738f499
Thanks @Princesseuh! - Fixes small rendering issues with the dev toolbar in certain contexts -
#10438
5b48cc0fc8383b0659a595afd3a6ee28b28779c3
Thanks @bholmesdev! - Generate Astro DB types when runningastro sync
. -
#10456
1900a8f9bc337f3a882178d1770e10ab67fab0ce
Thanks @martrapp! - Fixes an error when usingastro:transtions/client
without<ViewTransitions/>
v4.5.4
Patch Changes
-
#10427
128c7a36397d99608dea918885b68bd302d00e7f
Thanks @lilnasy! - Fixes an issue where error pages did not have access to theAstro.locals
fields provided by the adapter.
v4.5.3
Patch Changes
-
#10410
055fe293c6702dd27bcd6c4f59297c6d4385abb1
Thanks @lilnasy! - Fixes an issue where configured redirects could not include certain characters in the target path. -
#9820
8edc42aa7c209b12d98ecf20cdecccddf7314af0
Thanks @alexnguyennz! - Prevents fully formed URLs in attributes from being escaped
v4.5.2
Patch Changes
-
#10400
629c9d7c4d96ae5711d95601e738b3d31d268116
Thanks @mingjunlu! - Fixes an issue where dev toolbar x-ray didn't escape props content.
v4.5.1
Patch Changes
-
#10728
f508c4b7d54316e737f454a3777204b23636d4a0
Thanks @ematipico! - Fixes a regression where some very specific code rendered usingexpressive-code
was not escaped properly. -
#10737
8a30f257b1f3618b01212a591b82ad7a63c82fbb
Thanks @lilnasy! - Fixes a regression where constructing and returning 404 responses from a middleware resulted in the dev server getting stuck in a loop. -
#10719
b21b3ba307235510707ee9f5bd49f71473a07004
Thanks @ematipico! - Fixes a false positive fordiv
andspan
elements when running the Dev Toolbar accessibility audits.Those are special elements that don't have an interaction assigned by default. Instead, it is assigned through the
role
attribute. This means that cases like the following are now deemed correct:<div role="tablist"></div> <span role="button" onclick="" onkeydown=""></span>
v4.5.0
Minor Changes
-
#10206
dc87214141e7f8406c0fdf6a7f425dad6dea6d3e
Thanks @lilnasy! - Allows middleware to run when a matching page or endpoint is not found. Previously, apages/404.astro
orpages/[...catch-all].astro
route had to match to allow middleware. This is now not necessary.When a route does not match in SSR deployments, your adapter may show a platform-specific 404 page instead of running Astro's SSR code. In these cases, you may still need to add a
404.astro
or fallback route with spread params, or use a routing configuration option if your adapter provides one. -
#9960
c081adf998d30419fed97d8fccc11340cdc512e0
Thanks @StandardGage! - Allows passing any props to the<Code />
component -
#10102
e3f02f5fb1cf0dae3c54beb3a4af3dbf3b06abb7
Thanks @bluwy! - Adds a newexperimental.directRenderScript
configuration option which provides a more reliable strategy to prevent scripts from being executed in pages where they are not used.This replaces the
experimental.optimizeHoistedScript
flag introduced in v2.10.4 to prevent unused components' scripts from being included in a page unexpectedly. That experimental option no longer exists and must be removed from your configuration, whether or not you enabledirectRenderScript
:// astro.config.mjs import { defineConfig } from 'astro/config'; export default defineConfig({ experimental: { - optimizeHoistedScript: true, + directRenderScript: true } });
With
experimental.directRenderScript
configured, scripts are now directly rendered as declared in Astro files (including existing features like TypeScript, importingnode_modules
, and deduplicating scripts). You can also now conditionally render scripts in your Astro file.However, this means scripts are no longer hoisted to the
<head>
and multiple scripts on a page are no longer bundled together. If you enable this option, you should check that all your<script>
tags behave as expected.This option will be enabled by default in Astro 5.0.
-
#10130
5a9528741fa98d017b269c7e4f013058028bdc5d
Thanks @bluwy! - Stabilizesmarkdown.shikiConfig.experimentalThemes
asmarkdown.shikiConfig.themes
. No behaviour changes are made to this option. -
#10189
1ea0a25b94125e4f6f2ac82b42f638e22d7bdffd
Thanks @peng! - Adds the option to pass an object tobuild.assetsPrefix
. This allows for the use of multiple CDN prefixes based on the target file type.When passing an object to
build.assetsPrefix
, you must also specify afallback
domain to be used for all other file types not specified.Specify a file extension as the key (e.g. 'js', 'png') and the URL serving your assets of that file type as the value:
// astro.config.mjs import { defineConfig } from 'astro/config'; export default defineConfig({ build: { assetsPrefix: { js: 'https://js.cdn.example.com', mjs: 'https://js.cdn.example.com', // if you have .mjs files, you must add a new entry like this png: 'https://images.cdn.example.com', fallback: 'https://generic.cdn.example.com', }, }, });
-
#10252
3307cb34f17159dfd3f03144697040fcaa10e903
Thanks @Princesseuh! - Adds support for emitting warning and info notifications from dev toolbar apps.When using the
toggle-notification
event, the severity can be specified throughdetail.level
:eventTarget.dispatchEvent( new CustomEvent('toggle-notification', { detail: { level: 'warning', }, }) );
-
#10186
959ca5f9f86ef2c0a5a23080cc01c25f53d613a9
Thanks @Princesseuh! - Adds the ability to set colors on all the included UI elements for dev toolbar apps. Previously, only badge and buttons could be customized. -
#10136
9cd84bd19b92fb43ae48809f575ee12ebd43ea8f
Thanks @matthewp! - Changes the default behavior oftransition:persist
to update the props of persisted islands upon navigation. Also adds a new view transitions optiontransition:persist-props
(default:false
) to prevent props from updating as needed.Islands which have the
transition:persist
property to keep their state when using the<ViewTransitions />
router will now have their props updated upon navigation. This is useful in cases where the component relies on page-specific props, such as the current page title, which should update upon navigation.For example, the component below is set to persist across navigation. This component receives a
products
props and might have some internal state, such as which filters are applied:<ProductListing transition:persist products={products} />
Upon navigation, this component persists, but the desired
products
might change, for example if you are visiting a category of products, or you are performing a search.Previously the props would not change on navigation, and your island would have to handle updating them externally, such as with API calls.
With this change the props are now updated, while still preserving state.
You can override this new default behavior on a per-component basis using
transition:persist-props=true
to persist both props and state during navigation:<ProductListing transition:persist-props="true" products={products} />
-
#9977
0204b7de37bf626e1b97175b605adbf91d885386
Thanks @OliverSpeir! - Supports adding thedata-astro-rerun
attribute on script tags so that they will be re-executed after view transitions<script is:inline data-astro-rerun> ... </script>
-
#10145
65692fa7b5f4440c644c8cf3dd9bc50103d2c33b
Thanks @alexanderniebuhr! - Adds experimental JSON Schema support for content collections.This feature will auto-generate a JSON Schema for content collections of
type: 'data'
which can be used as the$schema
value for TypeScript-style autocompletion/hints in tools like VSCode.To enable this feature, add the experimental flag:
import { defineConfig } from 'astro/config'; export default defineConfig({ experimental: { + contentCollectionJsonSchema: true } });
This experimental implementation requires you to manually reference the schema in each data entry file of the collection:
// src/content/test/entry.json { + "$schema": "../../../.astro/collections/test.schema.json", "test": "test" }
Alternatively, you can set this in your VSCode
json.schemas
settings:"json.schemas": [ { "fileMatch": [ "/src/content/test/**" ], "url": "../../../.astro/collections/test.schema.json" } ]
Note that this initial implementation uses a library with known issues for advanced Zod schemas, so you may wish to consult these limitations before enabling the experimental flag.
-
#10130
5a9528741fa98d017b269c7e4f013058028bdc5d
Thanks @bluwy! - Migratesshikiji
toshiki
1.0 -
#10268
2013e70bce16366781cc12e52823bb257fe460c0
Thanks @Princesseuh! - Adds support for page mutations to the audits in the dev toolbar. Astro will now rerun the audits whenever elements are added or deleted from the page. -
#10217
5c7862a9fe69954f8630538ebb7212cd04b8a810
Thanks @Princesseuh! - Updates the UI for dev toolbar audits with new information
Patch Changes
-
#10360
ac766647b0e6156b7c4a0bb9a11981fe168852d7
Thanks @nmattia! - Fixes an issue where some CLI commands attempted to directly read vite config files. -
#10291
8107a2721b6abb07c3120ac90e03c39f2a44ab0c
Thanks @bluwy! - Treeshakes unused Astro component scoped styles -
#10368
78bafc5d661ff7dd071c241cb1303c4d8a774d21
Thanks @Princesseuh! - Updates the basetsconfig.json
preset withjsx: 'preserve'
in order to fix errors when importing Astro files inside.js
and.ts
files. -
Updated dependencies [
c081adf998d30419fed97d8fccc11340cdc512e0
,1ea0a25b94125e4f6f2ac82b42f638e22d7bdffd
,5a9528741fa98d017b269c7e4f013058028bdc5d
,a31bbd7ff8f3ec62ee507f72d1d25140b82ffc18
]:
v4.4.15
Patch Changes
-
#10317
33583e8b31ee8a33e26cf57f30bb422921f4745d
Thanks @lilnasy! - Fixes an issue where elements slotted within interactive framework components disappeared after hydration.
v4.4.14
Patch Changes
-
#10355
8ce9fffd44b0740621178d61fb1425bf4155c2d7
Thanks @ematipico! - Fixes a regression where full dynamic routes were prioritized over partial dynamic routes. Now a route likefood-[name].astro
is matched before[name].astro
. -
#10356
d121311a3f4b5345e344e31f75d4e7164d65f729
Thanks @mingjunlu! - Fixes an issue wheregetCollection
might returnundefined
when content collection is empty -
#10325
f33cce8f6c3a2e17847658cdedb015bd93cc1ee3
Thanks @lilnasy! - Fixes an issue wherectx.site
included the configuredbase
in API routes and middleware, unlikeAstro.site
in astro pages. -
#10343
f973aa9110592fa9017bbe84387f22c24a6d7159
Thanks @ematipico! - Fixes some false positive in the dev toolbar a11y audits, by adding thea
element to the list of interactive elements. -
#10295
fdd5bf277e5c1cfa30c1bd2ca123f4e90e8d09d9
Thanks @rossrobino! - Adds a prefetch fallback when using theexperimental.clientPrerender
option. If prerendering fails, which can happen if Chrome extensions block prerendering, it will fallback to prefetching the URL. This works by adding aprefetch
field to thespeculationrules
script, but does not create an extra request.
v4.4.13
Patch Changes
-
#10342
a2e9b2b936666b2a4779feb00dcb8ff0ab82c2ec
Thanks @matthewp! - Fixes @astrojs/db loading TS in the fixtures
v4.4.12
Patch Changes
-
#10336
f2e60a96754ed1d86001fe4d5d3a0c0ef657408d
Thanks @FredKSchott! - Fixes an issue where slotting interactive components within a "client:only" component prevented all component code in the page from running.
v4.4.11
Patch Changes
-
#10281
9deb919ff95b1d2ffe5a5f70ec683e32ebfafd05
Thanks @lilnasy! - Fixes an issue where404.astro
was ignored withi18n
routing enabled. -
#10279
9ba3e2605daee3861e3bf6c5768f1d8bced4709d
Thanks @lilnasy! - Fixes an issue where returning redirect responses resulted in missing files with certain adapters. -
#10319
19ecccedaab6d8fa0ff23711c88fa7d4fa34df38
Thanks @lilnasy! - Fixes an issue where streaming SSR responses sometimes failed with "iterator.result
is not a function" on node-based adapters. -
#10302
992537e79f1847b590a2e226aac88a47a6304f68
Thanks @florian-lefebvre! - Fixes an issue that causes static entrypoints build to fail because of the path in certain conditions. Specifically, it failed if the path had an extension (like.astro
,.mdx
etc) and such extension would be also within the path (like./.astro/index.astro
). -
#10298
819d20a89c0d269333c2d397c1080884f516307a
Thanks @Fryuni! - Fix an incorrect conflict resolution between pages generated from static routes and rest parameters
v4.4.10
Patch Changes
-
#10235
4bc360cd5f25496aca3232f6efb3710424a14a34
Thanks @sanman1k98! - Fixes jerky scrolling on IOS when using view transitions.
v4.4.9
Patch Changes
-
#10278
a548a3a99c2835c19662fc38636f92b2bda26614
Thanks @Princesseuh! - Fixes original images sometimes being kept / deleted when they shouldn't in both MDX and Markdoc -
#10280
3488be9b59d1cb65325b0e087c33bcd74aaa4926
Thanks @bholmesdev! - Finalize db API to a shared db/ directory.
v4.4.8
Patch Changes
-
#10275
5e3e74b61daa2ba44c761c9ab5745818661a656e
Thanks @Princesseuh! - Fixes dev toolbar warning about using the proper loading attributes on images usingdata:
URIs
v4.4.7
Patch Changes
-
#10274
e556151603a2f0173059d0f98fdcbec0610b48ff
Thanks @lilnasy! - Fixes a regression introduced in v4.4.5 where image optimization did not work in dev mode when a base was configured. -
#10263
9bdbed723e0aa4243d7d6ee64d1c1df3b75b9aeb
Thanks @martrapp! - Adds auto completion forastro:
event names when adding or removing event listeners ondocument
. -
#10284
07f89429a1ef5173d3321e0b362a9dc71fc74fe5
Thanks @Princesseuh! - Fixes an issue where in Node SSR, the image endpoint could be used maliciously to reveal unintended information about the underlying system.Thanks to Google Security Team for reporting this issue.
v4.4.6
Patch Changes
-
#10247
fb773c9161bf8faa5ebd7e115f3564c3359e56ea
Thanks @martrapp! - Fixes an issue wheretransition:animate="none"
still allowed the browser-native morph animation. -
#10248
8ae5d99534fc09d650e10e64a09b61a2807574f2
Thanks @ematipico! - Fixes an issue where multiple injected routes with the sameentrypoint
but differentpattern
were incorrectly cached, causing some of them not being rendered in the dev server. -
#10250
57655a99db34e20e9661c039fab253b867013318
Thanks @log101! - Fixes the overwriting of localised index pages with redirects -
#10239
9c21a9df6b03e36bd78dc553e13c55b9ef8c44cd
Thanks @mingjunlu! - Improves the message ofMiddlewareCantBeLoaded
for clarity -
#10222
ade9759cae74ca262b988260250bcb202235e811
Thanks @martrapp! - Adds a warning in DEV mode when using view transitions on a device with prefer-reduced-motion enabled. -
#10251
9b00de0a76b4f4b5b808e8c78e4906a2497e8ecf
Thanks @mingjunlu! - Fixes TypeScript type definitions forCode
componenttheme
andexperimentalThemes
props
v4.4.5
Patch Changes
-
#10221
4db82d9c7dce3b73fe43b86020fcfa326c1357ec
Thanks @matthewp! - Prevents errors in templates from crashing the server -
#10219
afcb9d331179287629b5ffce4020931258bebefa
Thanks @matthewp! - Fix dynamic slots missing hydration scripts -
#10220
1eadb1c5290f2f4baf538c34889a09d5fcfb9bd4
Thanks @Princesseuh! - Fixes some built-in apps of the dev toolbar not closing when clicking the page -
#10154
e64bd0740b44aed5cfaf67e5c37a1c56ed4442f4
Thanks @Cherry! - Fixes an issue whereconfig.vite.build.assetsInlineLimit
could not be set as a function. -
#10196
8fb32f390d40cfa12a82c0645928468d27218866
Thanks @lilnasy! - Fixes an issue where a warning about headers being accessed in static mode is unnecessarily shown when i18n is enabled. -
#10199
6aa660ae7abc6841d7a3396b29f10b9fb7910ce5
Thanks @lilnasy! - Fixes an issue where prerendered pages had access to query params in dev mode.
v4.4.4
Patch Changes
-
#10195
903eace233033998811b72e27a54c80d8e59ff37
Thanks @1574242600! - Fix build failure caused by read-only files under /public (in the presence of client-side JS). -
#10205
459f74bc71748279fe7dce0688f38bd74b51c5c1
Thanks @martrapp! - Adds an error message for non-string transition:name values -
#10208
8cd38f02456640c063552aef00b2b8a216b3935d
Thanks @log101! - Fixes custom headers are not added to the Node standalone server responses in preview mode
v4.4.3
Patch Changes
-
#10143
7c5fcd2fa817472f480bbfbbc11b9ed71a7210ab
Thanks @bluwy! - Improves the defaultoptimizeDeps.entries
Vite config to avoid globbing server endpoints, and respect thesrcDir
option -
#10197
c856c729404196900a7386c8426b81e79684a6a9
Thanks @Princesseuh! - Fixes errors being logged twice in some cases -
#10166
598f30c7cd6c88558e3806d9bc5a15d426d83992
Thanks @bluwy! - Improves Astro style tag HMR when updating imported styles -
#10194
3cc20109277813ccb9578ca87a8b0d680a73c35c
Thanks @matthewp! - Fixes an issue related to content collections usage in browser context caused bycsssec
v4.4.2
Patch Changes
-
#10169
a46249173edde66b03c19441144272baa8394fb4
Thanks @ematipico! - Fixes an issue with thei18n.routing
types, where an internal transformation was causing the generation of incorrect types for integrations.
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot. The local configuration can be found in the local Renovate Bot repository.