Capítulo 256 de 456

turbopackRustReactCompiler

Core Idea

Habilita a versão nativa em Rust do React Compiler rodando diretamente dentro do Turbopack (código nativo), em vez da versão Babel padrão que roda via Node.js, resultando em ganho de performance perceptível. Requer reactCompiler: true já habilitado; essa flag só escolhe a implementação.

Key Concepts

  • experimental.turbopackRustReactCompiler: boolean, experimental. Habilita o port Rust do React Compiler.
  • Depende de reactCompiler: não liga o compiler sozinho, apenas seleciona qual implementação roda quando reactCompiler: true já está setado.
  • Exclusivo do Turbopack: usar com webpack lança erro.
  • Não precisa de babel-plugin-react-compiler: quando habilitado, o compiler roda nativamente dentro do Turbopack.

Code Examples

const nextConfig: NextConfig = {
  reactCompiler: true,
  experimental: {
    turbopackRustReactCompiler: true,
  },
}
  • O que demonstra: as duas flags juntas: reactCompiler liga o compiler, turbopackRustReactCompiler escolhe a implementação Rust nativa em vez da Babel.

Reference Tables

VersionChanges
v16.3.0Introduzida a opção experimental turbopackRustReactCompiler para o React Compiler nativo em Rust.

Anti-patterns

  • Habilitar sem reactCompiler: true: a flag não faz nada sozinha, o React Compiler continua desligado.
  • Usar junto com webpack: gera erro; a opção é exclusiva do Turbopack.

Key Takeaways

  1. Opção existe para coletar feedback antes de se tornar o default.
  2. Elimina a necessidade de instalar babel-plugin-react-compiler quando ativa.
  3. Sempre setar as duas flags juntas: reactCompiler + turbopackRustReactCompiler.

Connects To

  • reactCompiler: opção-pai que efetivamente liga o React Compiler; esta página só troca a implementação.