Dentro de la reescritura en Go de TypeScript 7: mejoras de velocidad sin cambios en el código
Aprenda cómo el compilador basado en Go de TypeScript 7 permite generar proyectos 8-12 veces más rápido, por qué funciona este cambio en la arquitectura y cómo actualizar de forma segura proyectos existentes.
El compilador ahora funciona con un motor basado en Go; su código existente no necesita cambios, y los tiempos de compilación han disminuido drásticamente
Las actualizaciones importantes de las herramientas, que suelen aparecer solo cada few años, tienden a transformar su flujo de trabajo diario, y TypeScript 7 sigue ese patrón. Microsoft reconstruyó el compilador para lograr un rendimiento significativamente mejor: las compilaciones completas se ejecutan de 8 a 12 veces más rápido, sin requerir ningún cambio en las características del lenguaje que ya utiliza.
Qué se lanzó realmente
TypeScript 7 llegó el 8 de julio de 2026, reemplazando al compilador basado en JavaScript por una implementación nativa de Go desarrollada bajo el esfuerzo interno conocido como Project Corsa. Cabe destacar que se trata de una adaptación fiel y no de un rediseño: la misma lógica de verificación de tipos y las semánticas del lenguaje se tradujeron línea por línea, por lo que sus archivos .ts funcionan exactamente como antes. Lo que cambió es el motor subyacente que ejecuta esa lógica, no la lógica en sí.
Según las pruebas internas de Microsoft, realizadas con la propia base de código de VS Code, los tiempos de carga de los proyectos disminuyeron de casi un minuto a aproximadamente diez segundos. Ese es el resultado principal. En términos prácticos, la demora que antes se experimentaba al ejecutar tsc --watch después de cambiar de rama prácticamente desaparece.
Por qué es mucho más rápido
Dos cambios arquitectónicos explican la mayor parte de la mejora en velocidad.
- Código nativo compilado en lugar de ejecutarse a través de Node.js y el motor V8
- Paralelismo con memoria compartida, que permite que el análisis, la verificación de tipos y la generación de código se ejecuten simultáneamente en varios núcleos de CPU
La versión también introduce nuevas opciones, --checkers y --builders, que le permiten controlar cuántos hilos de trabajo en paralelo se encargan de la verificación de tipos y de la compilación de referencias del proyecto. El modo de observación también ha sido rediseñado, utilizando un monitor de archivos basado en Go desarrollado originalmente para Parcel, y ahora realiza reconstrucciones incrementales de manera notablemente más rápida en grandes monorepos.
Cómo realizar la actualización
Instalar el nuevo compilador funciona exactamente como siempre lo ha hecho:
npm install -D typescript
npx tsc --version
# TypeScript 7.0
No hay migración de configuraciones que realizar, ni codemods que ejecutar, ni cambios sintácticos que puedan causar problemas. Si su equipo ya había adoptado el paquete @typescript/native-preview durante la fase de candidato a lanzamiento, esa funcionalidad —desarrollada con el binario tsgo— ha sido integrada nuevamente en el paquete estándar typescript, al que se puede acceder a través de la etiqueta de distribución next.
Hay una precaución importante que cabe señalar: la API del compilador programático aún no está completamente estabilizada. Si su pipeline de construcción, configuración de ESLint o herramientas personalizadas dependen directamente de la API de TypeScript en lugar de simplemente invocar a tsc, evite escribir nuevo código que utilice interfaces como createProgram por el momento. Los equipos en esa situación deberían posponer la migración completa hasta que se lance la versión 7.1, ya que se espera que esa versión resuelva las deficiencias surgidas durante los trabajos de transición del año pasado.
Qué significa esto para proyectos React y Next.js
Dado que muchas herramientas de framework se basan en el compilador de TypeScript, esas herramientas heredan automáticamente las mejoras de rendimiento. La verificación de tipos en tiempo de compilación en Next.js, la respuesta rápida del IntelliSense en librerías de componentes grandes desarrolladas con Redux o Tailwind, y la verificación de tipos en proyectos monorepo se vuelven más rápidas sin que sea necesario realizar cambios en el código. Para los equipos que han pospuesto la activación de strict: true porque la verificación de tipos en todo el proyecto parecía demasiado lenta como para justificarla, este es un momento adecuado para reconsiderarlo: el costo computacional de esa decisión acaba de reducirse en una orden de magnitud.
Puntos clave
- TypeScript 7 reescribe el compilador, no el lenguaje; su código se verifica de la misma manera, pero ahora con un nuevo motor basado en Go.
npm install, pero evite depender de la API programática para herramientas personalizadas hasta que esté disponible la versión 7.1.Si el tiempo de compilación era la razón por la que evitaba activar la verificación estricta de tipos, esa excusa ya no es válida. Instale la nueva versión, ejecute su conjunto de pruebas existente y observe cómo disminuyen los tiempos de su pipeline CI.
Lecturas relacionadas
- TypeScript 6 y 7: Inferencia más inteligente, luego reescritura basada en Go — Aprenda cómo TypeScript 6 corrigió deficiencias clave en la inferencia y modernizó los valores predeterminados, sentando las bases para la reescritura total del compilador de TypeScript 7 en Go.
- El compilador de TypeScript en Go y la ejecución nativa: Una guía de migración — Entienda cómo el compilador basado en Go de TypeScript y la ejecución nativa en Node.js afectarán los proyectos React y Next.js, y qué debe corregir ahora en su tsconfig.