惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News | PayPal Newsroom
P
Proofpoint News Feed
Cyberwarzone
Cyberwarzone
C
Cisco Blogs
SecWiki News
SecWiki News
Know Your Adversary
Know Your Adversary
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Vercel News
Vercel News
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
罗磊的独立博客
NISL@THU
NISL@THU
WordPress大学
WordPress大学
Hacker News - Newest:
Hacker News - Newest: "LLM"
T
Threat Research - Cisco Blogs
AI
AI
Simon Willison's Weblog
Simon Willison's Weblog
Security Archives - TechRepublic
Security Archives - TechRepublic
有赞技术团队
有赞技术团队
L
LINUX DO - 热门话题
Hacker News: Ask HN
Hacker News: Ask HN
V
V2EX
G
GRAHAM CLULEY
TaoSecurity Blog
TaoSecurity Blog
Hugging Face - Blog
Hugging Face - Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
F
Fortinet All Blogs
博客园 - 叶小钗
博客园 - 三生石上(FineUI控件)
云风的 BLOG
云风的 BLOG
Recorded Future
Recorded Future
Latest news
Latest news
The Hacker News
The Hacker News
aimingoo的专栏
aimingoo的专栏
T
Troy Hunt's Blog
S
Schneier on Security
I
Intezer
Google DeepMind News
Google DeepMind News
A
Arctic Wolf
Apple Machine Learning Research
Apple Machine Learning Research
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Threatpost
爱范儿
爱范儿
The Register - Security
The Register - Security
S
SegmentFault 最新的问题
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
宝玉的分享
宝玉的分享
Recent Commits to openclaw:main
Recent Commits to openclaw:main
美团技术团队
B
Blog RSS Feed

The Astro Blog

Astro 6.4 Astro 6.3 Starlight 0.39 Astro 6.2 What's new in Astro - April 2026 What's new in Astro - March 2026 CloudCannon Joins Astro as an Official CMS Partner Astro 6.0 What's new in Astro - February 2026 What's new in Astro - January 2026 Astro 5.17 Supporting the future of Astro The Astro Technology Company joins Cloudflare Astro 6 Beta What's new in Astro - December 2025 What's new in Astro - November 2025 Astro 5.16 Stainless Sponsors Astro, Launches Astro-Powered Docs Platform What's new in Astro - October 2025 Astro 5.15 Spirit of Astro: meet the winning designs What's new in Astro - September 2025 Astro 5.14 Cloudflare Donates $150,000 to Support Astro's Open Source Mission Webflow Donates $150,000 to Support Astro's Open Source Mission Mux: Our Official Video Partner Unleashing creativity: How CodeTV built a video streaming platform with Astro and Mux | Astro What's new in Astro - August 2025 Astro 5.13 What's new in Astro - July 2025 Astro 5.12 Starlight 0.35 Astro 5.11 What's new in Astro - June 2025 Live Content Collections: A Deep Dive Introducing… Astro Mart Astro Solstice Festival Astro 5.10 Astro 5.9 What's new in Astro - May 2025 Astro 5.8 What's new in Astro - April 2025 2025 Technical Steering Committee Starlight April Update Astro 5.7 Astro Agency Partner Program Astro 5.6 What's new in Astro - March 2025 Astro 5.5 What's new in Astro - February 2025 Astro 5.4 Starlight 0.32 Astro 5.3 What's new in Astro - January 2025 Astro 5.2 2024 year in review What's new in Astro - December 2024 Astro 5.1 Astro 5.0 Google IDX: Our Official Online Editor Partner What's new in Astro - November 2024 What's new in Astro - October 2024 Astro x Cloudinary SDK What's new in Astro - September 2024 Community Loaders for Astro Content Layer Astro x Hygraph: Content Loader Astro x Cloudinary: Content Loader Astro x Storyblok: Content Loader Content Layer: A Deep Dive Starlight 0.28 Astro 5.0 Beta Release The $100,000 Astro Ecosystem Fund Fall Update Goodbye Studio, Hello DB What's new in Astro - August 2024 Astro 4.15 Astro 4.14 Astro 4.13 What's new in Astro - July 2024 Astro 4.12: Server Islands Netlify: Our Official Deployment Partner What's new in Astro - June 2024 Astro 4.11 Astro Together 2024 Server Islands The Astro Content Layer Zero-JavaScript View Transitions Astro 4.10 Starlight turns one year old! What's new in Astro - May 2024 Astro 4.9 Astro 4.8 What's new in Astro - April 2024 Astro 4.7 Astro 4.6 What's new in Astro - March 2024 Migrating 500+ tests from Mocha to Node.js Astro DB: A Deep Dive The Astro Developer Portal Astro DB Astro 4.5
Astro 6.1
Fred Schott · 2026-03-26 · via The Astro Blog

Astro 6.1 is here! Astro 6.1 gives you global control over image encoding with codec-specific defaults for Sharp, so you can configure JPEG, WebP, AVIF, and PNG settings once in your Astro config instead of on every image.

Explore what’s new in this release:

  • Sharp codec-specific image defaults
  • Advanced SmartyPants configuration
  • i18n fallback routes for integrations
  • Smoother view transitions on mobile
  • Vite 8 compatibility warning
  • React hydration fixes
  • CSRF protection behind reverse proxies

To upgrade an existing project, use the automated @astrojs/upgrade CLI tool. Alternatively, upgrade manually by running the upgrade command for your package manager:

# Recommended:

npx @astrojs/upgrade

# Manual:

npm install astro@latest

pnpm upgrade astro --latest

yarn upgrade astro --latest

Sharp codec-specific image defaults

Sharp, Astro’s built-in image service, has always supported fine-grained encoding options — mozjpeg compression for JPEG, effort levels for WebP and AVIF, compression levels for PNG. Sharp’s defaults work great for most projects, but if you needed consistent encoding settings across a large number of images, the only option was to set them on every <Image /> individually.

Astro 6.1 adds image.service.config to set codec-specific defaults once in your Astro config, applied to every image processed during the build:

import { defineConfig } from 'astro/config';

export default defineConfig({

image: {

service: {

config: {

jpeg: { mozjpeg: true },

webp: { effort: 6, alphaQuality: 80 },

avif: { effort: 4, chromaSubsampling: '4:2:0' },

png: { compressionLevel: 9 },

},

},

},

});

Per-image quality still takes precedence when set, so global defaults and per-image overrides work together without conflict. See the image service configuration reference for the full list of supported options.

Advanced SmartyPants configuration

If your Markdown content targets a non-English audience, you’ve probably noticed that SmartyPants — the library Astro uses to automatically convert punctuation into its typographic equivalents — assumes English conventions. French guillemets («»), German quotation marks („"), or old-school em-dash handling weren’t possible without disabling SmartyPants entirely and handling it yourself.

Astro 6.1 opens up the full SmartyPants configuration, so you can customize each transformation individually:

import { defineConfig } from 'astro/config';

export default defineConfig({

markdown: {

smartypants: {

dashes: 'oldschool',

openingQuotes: { double: '«', single: '‹' },

closingQuotes: { double: '»', single: '›' },

ellipses: 'unspaced',

quotes: false,

},

},

});

See the retext-smartypants options for the full list of supported settings.

i18n fallback routes for integrations

Astro 6.1 exposes fallbackRoutes on every route in the astro:routes:resolved hook, giving integrations access to the additional routes Astro generates for locales that don’t have their own content when using fallbackType: 'rewrite'.

{

'astro:routes:resolved': ({ routes }) => {

for (const route of routes) {

const fallbacks = route.fallbackRoutes.map((f) => f.pathname);

console.log(route.pathname, '->', fallbacks);

// '/about/' -> ['/fr/about/', '/de/about/']

}

}

}

We’ve already put this to use in @astrojs/sitemap, which now automatically includes i18n fallback pages in the generated sitemap. Previously, these routes were invisible to integrations, meaning fallback pages were silently missing from your sitemap.

Learn more about i18n fallback routing in the Astro docs.

Other improvements

  • Smoother view transitions on mobile — The client router now skips view transition animations when the browser is already providing its own visual transition, such as a swipe gesture on iOS Safari. This eliminates the double-animation flicker that could occur when navigating back and forward with gestures. (#16025)
  • Vite 8 compatibility warning — Astro now warns on dev server startup when Vite 8 is detected at the top level of your project. The astro add cloudflare command also automatically adds a "overrides": { "vite": "^7" } entry to your package.json, preventing a common crash when using packages like @tailwindcss/vite. (#16062)
  • React hydration fixes — Multiple fixes for React hydration errors, including conditional slot rendering and experimentalReactChildren mismatches. (#15378, #15146)
  • CSRF protection behind reverse proxiescheckOrigin now correctly reads X-Forwarded-Proto during astro dev when behind a TLS-terminating reverse proxy, preventing false 403 errors on form submissions. (#16043)

For a complete list of bug fixes and smaller improvements, see the full changelog.

The Astro core team is:

Alexander Niebuhr , Armand Philippot , Chris Swithinbank , Emanuele Stoppa , Erika , Florian Lefebvre , Fred Schott , HiDeoo , Luiz Ferraz , Matt Kane , Matthew Phillips , Reuben Tier , Sarah Rainsberger , and Yan Thomas .

Thanks to all the other contributors who helped make Astro 6.1 possible with code and docs additions and improvements, including:

0xRozier, Adam Matthiesen, Adam Page, Ahmad Yasser, AitorMT, Alex Dombroski, B Sai Thrishul, bashrocks, Ben Limmer, Bernd Strehl, Burra Karthikeya, Calvin Liang, chaegumi, Chase McCoy, Corbin Crutchley, Daniel Bodky, Daniil Sivak, Dario Piotrowicz, dataCenter430, Dawid Gaweł, Desel72, Em Poulter, Eveeifyeve, farshad, Felix Schneider, Felmon, fkatsuhiro, Giray, Gokhan Kurt, Greg L. Turnquist, hank00111, Haz, Jack Lukic, jahndan, Jason P. Cochrane, Jimmy, Junseong Park, Kedar Vartak, Kevin Z, Koji Wakamiya, Kumar Gautam, Kyle McLean, ld-web, Leif Marcus, Louis Escher, Martin Trapp, Matthew Justice, Natan Sągol, Oliver Speir, oliverlynch, Ossaid, paul valladares, Paweł Grzybek, pierreeurope, Rafael Yasuhide Sudo, Raymond Camden, Sakku 🦉, Sam Richard, Sanjaiyan Parthipan, Sebastian Beltran, Shinya Fujino, Sora, Tay, teinett, Thomas Bonnet, Tom Callahan, Tomasz Cz-Sokołow, Tristan Bessoussa, Vagno, vrabe, Will (liruifengv), xyamzw, Yevhen Amelin, マルコス, and もっちー