Compilateur Rust expérimental
Type : boolean
Par défaut : false
astro@6.0.0
Nouveau
Active le nouveau compilateur de fichiers Astro implémenté avec Rust. Ce compilateur est plus rapide, fournit de meilleurs messages d’erreur, et de manière générale a une meilleure prise en charge des fonctionnalités modernes de JavaScript, TypeScript et CSS.
Dans une future version majeure, Astro utilisera ce nouveau compilateur par défaut, mais vous pouvez activer ce comportement futur dès maintenant en utilisant l’option experimental.rustCompiler.
Pour faire part de vos commentaires sur le compilateur ou bien pour suivre son développement, consultez la RFC relative au nouveau compilateur d’Astro pour plus d’informations et discussions.
Utilisation
Section intitulée « Utilisation »Cette option expérimentale ne nécessite aucune utilisation spécifique et concerne seulement le compilateur qu’Astro utilise pour votre projet.
Pour activer le compilateur Rust, ajoutez le code suivant à votre fichier astro.config.mjs :
import { defineConfig } from "astro/config";
export default defineConfig({ experimental: { rustCompiler: true }});et installez ensuite le paquet @astrojs/compiler-rs dans votre projet :
npm install @astrojs/compiler-rspnpm add @astrojs/compiler-rsyarn add @astrojs/compiler-rsDifférences attendues
Section intitulée « Différences attendues »Contrairement au compilateur Astro actuel écrit en Go, ce compilateur Rust expérimental ne corrigera pas les structures HTML invalides. Par exemple, les modèles notables suivants seront laissés tels quels, et ne seront plus corrigés :
<p><div>Mauvaise imbrication</div></p>(au lieu de supprimer la balisedivde la balisep)<p>Mon paragraphe(au lieu d’ajouter la balise</p>manquante)
Cela signifie que si vos fichiers Astro contiennent du code HTML invalide, vous pourriez obtenir un résultat différent avec le compilateur Rust par rapport au compilateur précédent, ou rencontrer des erreurs lors de la compilation.
Limitations
Section intitulée « Limitations »À l’heure actuelle, le compilateur Rust ne génère pas les métadonnées nécessaires au bon fonctionnement des audits de la barre d’outils de développement.
Reference