Astro 7.0.0 stable passe à Vite 8, fait du compilateur Rust la valeur par défaut, ajoute un serveur de dev en arrière-plan pour les agents de code IA, et promeut le cache des routes, le routage avancé et Sätteri au premier plan

Astro 7.0.0 stable passe à Vite 8, fait du compilateur Rust la valeur par défaut, ajoute un serveur de dev en arrière-plan pour les agents de code IA, et promeut le cache des routes, le routage avancé et Sätteri au premier plan

lschvn

Astro 7.0.0 stable est sorti le 22 juin 2026, dix semaines après la première alpha 7.0 et une beta après l'article sur la beta.6 que nous avons publié le 2026-06-20. La release promeut presque toutes les API expérimentales de longue date en stables, fait passer la chaîne d'outils à Vite 8, et intègre deux nouveaux workflows dans le projet par défaut : un serveur de dev en arrière-plan conçu pour les agents de code IA, et un fichier AGENTS.md à la racine de chaque nouveau projet (avec un lien symbolique CLAUDE.md pointant dessus).

Toute la ligne 7.0 annonçait cette release. Le compilateur Rust était sorti de l'experimental derrière un drapeau, Sätteri avait déplacé le Markdown hors de JavaScript vers un pipeline Rust natif, le routage avancé avait remplacé le point d'entrée SSR historique, et la couche de cache livrée expérimentalement en v6.0 est désormais une configuration stable de premier niveau. Stable veut juste dire que la migration est mécanique ; les breaking changes (compressHTML: 'jsx', la suppression d'@astrojs/db, la suppression des helpers de transition, les bumps majeurs sur chaque intégration) sont réels.

Vite 8 et le compilateur Rust deviennent tous deux la valeur par défaut

La montée vers Vite 8 (PR #15819, delucis) et la promotion du compilateur Rust (PR #16462, Princesseuh) sont les deux changements fondateurs de la release. Les builds beta précédents nécessitaient experimental.rustCompiler: true dans la config ; la 7.0 supprime entièrement le compilateur Go, donc le drapeau disparaît avec. Les notes de version décrivent le compilateur Rust comme « plus rapide et plus fiable », et la nouvelle rigueur est un vrai changement de comportement : les balises HTML non fermées lèvent désormais une erreur au lieu d'être ignorées silencieusement, et le HTML sémantiquement invalide est laissé au navigateur, comme le ferait document.write().

Le pipeline Markdown Sätteri (Princesseuh) est désormais la valeur par défaut, et @astrojs/markdown-remark ne fait plus partie de l'installation par défaut. La release épingle @astrojs/markdown-satteri@0.3.1. Les options de config markdown.remarkPlugins, markdown.rehypePlugins, et markdown.remarkRehype fonctionnent toujours, mais seulement quand @astrojs/markdown-remark est explicitement installé et utilisé. L'article sur la beta.4 et Sätteri par défaut détaille la migration ; l'article sur la beta.6 couvre le basculement de compressHTML: 'jsx' et la promotion du cache des routes hors experimental.

Serveur de dev en arrière-plan pour les agents de code IA

Le changement le plus spécifique aux agents en 7.0 est un nouveau mode arrière-plan pour astro dev (PR #16610, matthewp). Quand Astro détecte un agent de code IA (le détecteur examine un petit ensemble de variables d'environnement et de marqueurs CLI connus), astro dev démarre automatiquement le serveur de dev comme processus détaché en arrière-plan au lieu de bloquer le terminal de l'agent. Un fichier de verrouillage à .astro/dev.json enregistre l'URL, le port et le PID du serveur, et trois nouvelles sous-commandes l'accompagnent :

  • astro dev --background pour démarrer explicitement le serveur en arrière-plan.
  • astro dev stop pour arrêter le serveur en cours.
  • astro dev status pour vérifier si un serveur tourne et lire URL, PID et uptime.
  • astro dev logs (avec -f pour suivre) pour lire la sortie du serveur.

Les notes de version sont explicites sur l'opt-out : positionnez ASTRO_DEV_BACKGROUND=0 avant astro dev pour forcer le comportement foreground même quand un agent est détecté. La motivation, aussi issue de la description de la PR, est que les agents de code IA ne peuvent pas tenir utilement un serveur de dev en foreground dans leur terminal : un serveur lié à un TTY disparaît quand l'agent passe à la tâche suivante, et un serveur non lié garde le port en otage pour la prochaine itération de l'agent.

AGENTS.md et CLAUDE.md dans chaque nouveau projet

Dans la même vague de release, create-astro@5.1.0 (PR #17122, matthewp) écrit désormais un fichier AGENTS.md par défaut dans chaque nouveau projet après l'étape de copie du template. Le fichier généré est court par conception :

# Development

Start the dev server in background mode:

astro dev --background

Manage the background server with `astro dev stop`, `astro dev status`, and `astro dev logs`.

# Documentation

Full documentation: https://docs.astro.build

Commonly needed references:

- Routing
- Astro Components
- Content Collections
- Internationalization

create-astro crée aussi un fichier CLAUDE.md à la racine du projet pointant vers le même contenu, via fs.symlinkSync('AGENTS.md', claudePath) avec un fallback fs.linkSync en hard link si l'appel symlink échoue sur le système de fichiers hôte. Les deux fichiers finissent par contenir le même contenu d'onboarding Astro, et tout agent de code IA qui cherche l'un ou l'autre nom de fichier (AGENTS.md pour la convention AGENTS.md ouverte utilisée par Codex et d'autres, CLAUDE.md pour Claude Code) le récupère. C'est le premier scaffolder de framework majeur à livrer un fichier AGENTS.md par défaut ; l'écosystème Vite converge vers ce nom de fichier depuis que Codex en a fait une convention début 2026.

Cache des routes, routage avancé et logger personnalisé sortent tous de l'experimental

Trois fonctionnalités expérimentales de longue date passent en stable en 7.0. Le cache des routes (PR #17116, ascorbic) sort de experimental.cache et experimental.routeRules vers des blocs de configuration cache et routeRules de premier niveau. Les fournisseurs de cache first-party cacheNetlify() (cache durable, partagé entre tous les nœuds edge) et cacheVercel() (Vercel-CDN-Cache-Control + Vercel-Cache-Tag) sont livrés dans la même release en tant que points d'entrée séparés dans les modules @astrojs/netlify/cache et @astrojs/vercel/cache. Un module d'aides partagées astro/cache/provider-utils est exporté pour les auteurs de fournisseurs tiers.

Le routage avancé (PR #16877, matthewp) supprime le drapeau experimental.advancedRouting. Le point d'entrée par défaut est désormais src/fetch.ts à la place de src/app.ts, et l'option fetchFile passe au premier niveau de la config. La fonctionnalité de logger personnalisé (PR #16745, ematipico) est aussi stable, avec les handlers intégrés logHandlers.json, logHandlers.node, et logHandlers.console, plus un chemin entrypoint tiers pour le logging structuré vers Kibana, Logstash, CloudWatch, Grafana, ou Loki.

Le drapeau experimental.queuedRendering (PR #16981, ematipico) est supprimé car le remplacement en streaming est désormais le moteur de rendu par défaut ; la construction de la file et le node polling disparaissent, et seul le cache de tags survit sous une forme plus petite.

@astrojs/db disparaît

@astrojs/db, déprécié en v6.4.5, est supprimé en 7.0. Les commandes CLI qui en dépendaient (astro db, astro login, astro logout, astro link, astro init) disparaissent aussi. Les chemins de migration que les notes de version indiquent : node:sqlite (disponible depuis Node.js 22.5.0) pour du stockage SQLite local sous l'adapter Node, Drizzle ORM pour l'API schema et query, ou n'importe quelle autre bibliothèque de base de données si vous visez Turso, PlanetScale, Neon, ou équivalent.

Les helpers de transition dépréciés dans astro:transitions et astro:transitions/client (TRANSITION_BEFORE_PREPARATION, TRANSITION_AFTER_PREPARATION, TRANSITION_BEFORE_SWAP, TRANSITION_AFTER_SWAP, TRANSITION_PAGE_LOAD, isTransitionBeforePreparationEvent(), isTransitionBeforeSwapEvent(), createAnimationScope()) sont aussi supprimés. Les noms d'événements de cycle de vie sont désormais l'API canonique : event.type === 'astro:before-preparation', et ainsi de suite.

Chaque intégration bumpe d'une version majeure

La vague stable 7.0 livre les bumps majeurs en synchro. @astrojs/vue@7.0.0, @astrojs/react@6.0.0, @astrojs/svelte@9.0.0 (qui embarque aussi @sveltejs/vite-plugin-svelte v7), @astrojs/preact@6.0.0, @astrojs/solid-js@7.0.0, et l'intégration MDX portent tous la montée Vite 8 plus un nouveau point d'entrée container-renderer qui contient l'export getContainerRenderer() ; importer depuis la racine du paquet fonctionne toujours mais émet un avertissement de dépréciation. Les majeurs côté adapters serveur sont @astrojs/vercel@11.0.0 (avec cacheVercel()), @astrojs/netlify@8.0.0 (avec cacheNetlify()), et @astrojs/node@11.0.0 (patches uniquement ; service des noms de fichiers non-ASCII, le patch astrobot-houston).

Le nouveau point d'entrée de l'API Container mérite d'être souligné parce que c'est un vrai gain en taille de bundle. Une app SSR typique qui n'utilise que l'API Container importait tout le paquet d'intégration (@astrojs/react avec le runtime client complet, le runtime serveur, les types, et la factory JSX) juste pour appeler getContainerRenderer(). Le nouveau point d'entrée @astrojs/react/container-renderer ne livre que la surface de l'API Container, et des chemins équivalents existent pour @astrojs/preact/container-renderer, @astrojs/svelte/container-renderer, @astrojs/solid-js/container-renderer, @astrojs/vue/container-renderer, et l'intégration MDX. La plupart des apps n'auront rien à changer ; le bénéfice se voit pour les auteurs de bibliothèques et d'intégrations qui veulent garder leur empreinte de dépendance serrée.

À surveiller

Le pattern de l'équipe Astro sur le cycle 7.0 a été de promouvoir une ou deux fonctionnalités expérimentales par beta et d'enrouler la migration dans la stable suivante. Deux suites sont probables dans les deux à quatre semaines. La première concerne les patches astro@7.0.1 et astro@7.0.2 qui suivent habituellement une release stable et tendent à corriger les régressions compressHTML: 'jsx' qui n'apparaissent que sur du contenu réel (tables markdown avec des éléments inline autour, composants MDX qui émettent des espaces en dur, etc.). La seconde concerne les mises à jour create-astro qui étendent le contenu AGENTS.md avec des notes spécifiques au template ; le scaffold n'écrit actuellement que le même contexte Astro générique pour tous les templates, et l'équipe a laissé entendre que des notes spécifiques au template arriveront dans create-astro@5.2.0.

Questions fréquentes

Oxc v0.137 apprend au minifier à treeshaker les tableaux typés purs et les littéraux Set/Map, livre un rafraîchissement de portée incrémental, et corrige un cas limite du React Compiler

La release Oxc crates_v0.137.0, publiée le 2026-06-18, livre deux nouvelles passes de treeshaking pour le minifier (treeshake des tableaux typés purs et des littéraux de tableau Set/Map via #23469, et inline de la valeur const pour les variables read-only via #22593), un rafraîchissement de portée incrémental de longue haleine qui supprime entièrement le collecteur LiveUsageCollector (#23197), une erreur d'analyseur conviviale pour les éléments JSX adjacents (#23378), un correctif du React Compiler pour les imports référencés uniquement par une clé calculée (#23586), et deux changements cassants de l'API de configuration ESTree (#23573, #23574). La liste des passes du minifier reçoit aussi un correctif Proxy-aware pour les appels d'introspection d'Object (#23483) et une nouvelle règle de préservation de Map/WeakSet/WeakMap pour les arguments string (#23470). v0.137 est la première release de crates depuis v0.135 le 2026-06-08 et la deuxième depuis que l'intégration native du React Compiler dans Bun a atterri le 2026-06-20.

SWC v1.15.43 intègre le React Compiler comme transformée de première classe, corrige un bug silencieux du minifier sur les littéraux de gabarit, et aligne `unsafe_math` avec Terser

SWC v1.15.43, publié le 2026-06-22 avec swc_core v71.0.3, livre le React Compiler Rust comme transformée SWC configurable via .swcrc jsc.transform.reactCompiler (PR #11917, 54 fichiers, 12 986 ajouts) ; corrige un bug silencieux du minifier de littéraux de gabarit où `compress` supprimait le texte après la dernière interpolation du gabarit de gauche lors de la concaténation de deux littéraux de gabarit (#11939) ; conditionne Number(x) -> +x à la fois à `unsafe: true` ET `unsafe_math: true` pour suivre terser v4.3.11+ (#11944, #11949) ; corrige la portée des brand checks ES2022 pour les propriétés privées (#11953) ; et embarque sept corrections internes du React Compiler (#11940, #11943, #11946, #11950, #11951, #11952, #11957) ainsi qu'un correctif du parser pour autoriser les builds sans feature par défaut (#11956) et une entrée de doc sur la portée de sécurité des entrées non fiables (#11937).

Articles connexes

Plus de couverture avec des sujets et tags en commun.

Bug Claude Code #74066 : Des Utilisateurs Signalent une Fuite de Contexte Entre Workspaces sur Sonnet 5, Anthropic N'a Pas Encore Répondu
ai

Bug Claude Code #74066 : Des Utilisateurs Signalent une Fuite de Contexte Entre Workspaces sur Sonnet 5, Anthropic N'a Pas Encore Répondu

Un bug ouvert déposé contre Claude Code le 2026-07-04 par un utilisateur [Enterprise ZDR](https://docs.anthropic.com/en/docs/build-with-claude/zero-data-retention) décrit une session de travail sur Sonnet 5 qui commence soudainement à faire référence à une construction de temple Minecraft non liée, puis persiste dans la mauvaise tâche dans son récapitulatif. Le rapporteur (GitHub : [@milesrichardson-edb](https://github.com/milesrichardson-edb), issue [anthropics/claude-code#74066](https://github.com/anthropics/claude-code/issues/74066)) est sur Enterprise Zero Data Retention, le niveau qu'Anthropic présente spécifiquement comme isolé par session. Le triage sur le JSONL de session locale du rapporteur à `~/.claude/projects/<encoded-cwd>/<session-id>.jsonl` montre que le texte fuité n'est pas dans la transcription, ce qui exclut une fuite de contexte locale par chevauchement de fichier. Quatre autres utilisateurs dans les commentaires (avec des historiques de travail remontant à l'an dernier) décrivent un comportement quasi identique sur Claude Code, Claude Mobile et Claude deep research. Le fit architectural le plus plausible est un état de cache KV partagé dans l'inférence ([selon @yv3nne dans les commentaires](https://github.com/anthropics/claude-code/issues/74066#issuecomment-4880448776)), mais aucun ingénieur d'Anthropic n'a commenté l'issue dans les 22 heures depuis son dépôt, et l'issue a atteint le sommet de [Hacker News](https://news.ycombinator.com/item?id=42481789) le 2026-07-04. Le ton dans le fil est partagé : la moitié suspectant une vraie réutilisation de cache plateforme, l'autre moitié suspectant une [hallucination spécifique à Sonnet 5 déclenchée par un lexer Pygments](https://github.com/anthropics/claude-code/issues/74066#issuecomment-4880334711). Les deux lectures sont crédibles.
Claude Code 2.1.199 ajoute les invocations slash-skill empilées, corrige le rapport d'erreurs des sous-agents, la boucle de crash du daemon des agents en arrière-plan sur Linux, et le bug de perte de réponse en streaming
ai

Claude Code 2.1.199 ajoute les invocations slash-skill empilées, corrige le rapport d'erreurs des sous-agents, la boucle de crash du daemon des agents en arrière-plan sur Linux, et le bug de perte de réponse en streaming

Anthropic a publié Claude Code [v2.1.199](https://github.com/anthropics/claude-code/releases/tag/v2.1.199) le 2026-07-02, un jour après la version de fonctionnalités v2.1.198 (Chrome GA, auto-PR des agents en arrière-plan, /dataviz, Gateway sur AWS) et deux jours après la v2.1.197 qui faisait de Sonnet 5 le modèle par défaut. La v2.1.199 est une version de correctifs avec 24 entrées: une nouvelle fonctionnalité (les invocations slash-skill empilées chargent jusqu'à 5 skills de tête dans un même prompt), et une longue liste de correctifs de fiabilité sur le rapport d'erreurs des sous-agents, le daemon des agents en arrière-plan sur Linux, la préservation des réponses en streaming sur erreur API en cours de flux, la gestion des erreurs SSL/TLS derrière les proxies d'entreprise, le traitement des appels d'outils en plan mode, et une politique de retry par environnement qui ne plafonne plus le nombre de retries configurable par l'utilisateur à 15. La majorité des items concerne la surface background-agent / sous-agents, ce qui reste cohérent avec la direction v2.1.197 + v2.1.198 qui fait de la délégation la surface produit pour Sonnet 5.
Claude Code 2.1.198 rend Claude in Chrome généralement disponible, permet aux agents en arrière-plan de committer, pusher et ouvrir des PRs en brouillon, ajoute la skill `/dataviz` et intègre Claude Platform on AWS à la Gateway
ai

Claude Code 2.1.198 rend Claude in Chrome généralement disponible, permet aux agents en arrière-plan de committer, pusher et ouvrir des PRs en brouillon, ajoute la skill `/dataviz` et intègre Claude Platform on AWS à la Gateway

Anthropic a publié Claude Code [v2.1.198](https://github.com/anthropics/claude-code/releases/tag/v2.1.198) le 2026-07-01T20:45:36Z, deuxième jour consécutif de livraison pour Claude Code après la v2.1.197 (la version qui faisait de Sonnet 5 le modèle par défaut) la veille. Le changement principal est que Claude in Chrome devient généralement disponible dans Claude Code: l'assistant côté navigateur qui était en recherche preview passe sur un canal stable et n'est plus verrouillé par un drapeau de fonctionnalité ou une liste d'attente. La version livre aussi la première automatisation de bout en bout pour les agents en arrière-plan dans `claude agents`, qui committent, pushent et ouvrent une pull request en brouillon lorsqu'ils terminent un travail de code dans un worktree, au lieu de s'arrêter pour demander. Autres ajouts notables: une skill `/dataviz` pour la conception de graphiques et de tableaux de bord avec un validateur de palette de couleurs exécutable, un upstream Gateway pour Claude Platform on AWS (`anthropicAws`) avec des réponses model-not-found qui avancent dans la chaîne de basculement, un agent Explore intégré qui hérite désormais du modèle de la session principale (plafonné à opus) au lieu de tourner sur Haiku, et des sous-agents qui héritent de la configuration d'extended thinking de la session parente. La version supprime aussi l'assistant `/agents` et le remplace par le flux conversationnel, corrige une longue liste de bugs de fiabilité sur les agents en arrière-plan, les coupures réseau et l'authentification de plateforme, et améliore la coloration syntaxique en passant à highlight.js 11.

Commentaires

Connexion Connectez-vous pour participer à la conversation.

Pas encore de commentaires. Soyez le premier à partager vos pensées.