โ ๏ธ Breaking Change
Impact Score: 7/10
Astro [email protected] โ Release Notes & Engineering Impact
Source available โ automated, not human-reviewed
Component: astro ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.
Analysis updated: 2026-11-01.
Breaking-change evidence from the source
- [#14796](https://github.com/withastro/astro/pull/14796) [`c29a785`](https://github.com/withastro/astro/commit/c29a785d57f08c5526828379d748f788797d9c39) Thanks [@florian-lefebvre](https://github.com/florian-lefebvre)! - **BREAKING CHANGE to the experimental Fonts API only**
โก Executive Summary (TL;DR)
Astro [email protected]. Source highlight: Adds experimental SVGO optimization support for SVG assets
Who Does This Impact? (Role-Based Analysis)
๐ป Software Engineers & Devs
Check the source notes against the package and APIs you use before upgrading.
๐ Product & Engineering Leads
Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.
โ๏ธ DevOps & Security
Verify the target version, runtime requirements and rollback procedure in the official documentation.
โ ๏ธ Breaking Changes & Deprecations (1)
- - [#14796](https://github.com/withastro/astro/pull/14796) [`c29a785`](https://github.com/withastro/astro/commit/c29a785d57f08c5526828379d748f788797d9c39) Thanks [@florian-lefebvre](https://github.com/florian-lefebvre)! - **BREAKING CHANGE to the experimental Fonts API only**
โจ New Features & Capabilities (4)
- Adds experimental SVGO optimization support for SVG assets
- Adds a hint for code agents to use the `--yes` flag to skip prompts when running `astro add`
- Adds the `ActionInputSchema` utility type to automatically infer the TypeScript type of an action's input based on its Zod schema
- Adds new CLI shortcuts available when running `astro preview`:
๐ง Bug Fixes & Patches (3)
- Removes `picocolors` as dependency in favor of the fork `piccolore`.
- Improves `astro info`
- **BREAKING CHANGE to the experimental Fonts API only**
๐ View Raw Release Notes (Original Developer Log)
### Minor Changes
- [#13880](https://github.com/withastro/astro/pull/13880) [`1a2ed01`](https://github.com/withastro/astro/commit/1a2ed01c92fe93843046396a2c854514747f4df8) Thanks [@azat-io](https://github.com/azat-io)! - Adds experimental SVGO optimization support for SVG assets
Astro now supports automatic SVG optimization using SVGO during build time. This experimental feature helps reduce SVG file sizes while maintaining visual quality, improving your site's performance.
To enable SVG optimization with default settings, add the following to your `astro.config.mjs`:
```js
import { defineConfig } from 'astro/config';
export default defineConfig({
experimental: {
svgo: true,
},
});
```
To customize optimization, pass a [SVGO configuration object](https://svgo.dev/docs/plugins/):
```js
export default defineConfig({
experimental: {
svgo: {
plugins: [
'preset-default',
{
name: 'removeViewBox',
active: false,
},
],
},
},
});
```
For more information on enabling and using this feature in your project, see the [experimental SVG optimization docs](https://docs.astro.build/en/reference/experimental-flags/svg-optimization/).
- [#14810](https://github.com/withastro/astro/pull/14810) [`2e845fe`](https://github.com/withastro/astro/commit/2e845fe56de45c710d282ed36f92978612810b79) Thanks [@ascorbic](https://github.com/ascorbic)! - Adds a hint for code agents to use the `--yes` flag to skip prompts when running `astro add`
- [#14698](https://github.com/withastro/astro/pull/14698) [`f42ff9b`](https://github.com/withastro/astro/commit/f42ff9bd5b4c8d3e67247ee6e21f14cd2062c037) Thanks [@mauriciabad](https://github.com/mauriciabad)! - Adds the `ActionInputSchema` utility type to automatically infer the TypeScript type of an action's input based on its Zod schema
For example, this type can be used to retrieve the input type of a form action:
```ts
import { type ActionInputSchema, defineAction } from 'astro:actions';
import { z } from 'astro/zod';
const action = defineAction({
accept: 'form',
input: z.object({ name: z.string() }),
handler: ({ name }) => ({ message: `Welcome, ${name}!` }),
});
type Schema = ActionInputSchema<typeof action>;
// typeof z.object({ name: z.string() })
type Input = z.input<Schema>;
// { name: string }
```
- [#14574](https://github.com/withastro/astro/pull/14574) [`4356485`](https://github.com/withastro/astro/commit/4356485b0f708c7abf93207105ddcb890a466729) Thanks [@jacobdalamb](https://github.com/jacobdalamb)! - Adds new CLI shortcuts available when running `astro preview`:
- `o` + `enter`: open the site in your browser
- `q` + `enter`: quit the preview
- `h` + `enter`: print all available shortcuts
### Patch Changes
- [#14813](https://github.com/withastro/astro/pull/14813) [`e1dd377`](https://github.com/withastro/astro/commit/e1dd377398a3dcf6ba0697dc8d4bde6d77a45700) Thanks [@ematipico](https://github.com/ematipico)! - Removes `picocolors` as dependency in favor of the fork `piccolore`.
- [#14609](https://github.com/withastro/astro/pull/14609) [`d774306`](https://github.com/withastro/astro/commit/d774306c517c33276adf48f2c2ea6a0a2a4a7aa6) Thanks [@florian-lefebvre](https://github.com/florian-lefebvre)! - Improves `astro info`
- [#14796](https://github.com/withastro/astro/pull/14796) [`c29a785`](https://github.com/withastro/astro/commit/c29a785d57f08c5526828379d748f788797d9c39) Thanks [@florian-lefebvre](https://github.com/florian-lefebvre)! - **BREAKING CHANGE to the experimental Fonts API only**
Updates the default `subsets` to `["latin"]`
Subsets have been a common source of confusion: they caused a lot of files to be downloaded by default. You now have to manually pick extra subsets.
Review your Astro config and update subsets if you need, for example if you need greek characters:
```diff
import { defineConfig, fontProviders } from "astro/config"
export default defineConfig({
experimental: {
fonts: [{
name: "Roboto",
cssVariable: "--font-roboto",
provider: fontProviders.google(),
+ subsets: ["latin", "greek"]
}]
}
})
```