A Microsoft anunciou a disponibilização do TypeScript 7.0, a primeira versão nativa da linguagem, escrita em Go e otimizada para aproveitar ao máximo o hardware atual. O novo compilador promete acelerações entre 8× e 12× em builds completos, além de consumo de memória reduzido.
Por que o TypeScript ficou mais rápido?
- Código nativo: a porta para Go mantém a lógica original, mas gera binário nativo.
- Multithreading via memória compartilhada: parsing, verificação de tipos e emissão de código são executados em paralelo.
- Otimizações internas: reescrita de algoritmos críticos, redução de alocações e uso mais eficiente de caches.
Como instalar
npm install -D typescript
O comando acima instala o novo executável tsc (acessível também via npx tsc). Editores modernos já suportam o protocolo LSP com a velocidade aprimorada; extensões como a do VS Code para TypeScript 7 estão prontas.
Impacto prático no dia a dia
- Abertura de projetos: carregamento quase instantâneo no editor.
- Operações de linguagem (find‑all‑references, autocomplete, diagnósticos) passam a levar frações do tempo anterior.
- Compilação em modo
--watch: feedback quase em tempo real, permitindo iterações mais rápidas.
Benchmarks reais
| Código‑fonte | TS 6 (s) | TS 7 (s) | Ganho |
|---|---|---|---|
| vscode | 125.7 | 10.6 | 11.9× |
| sentry | 139.8 | 15.7 | 8.9× |
| bluesky | 24.3 | 2.8 | 8.7× |
| playwright | 12.8 | 1.47 | 8.7× |
| tldraw | 11.2 | 1.46 | 7.7× |
Além da velocidade, o consumo de memória também diminuiu entre 6 % e 26 % nos mesmos projetos.
Estabilidade comprovada
A base de testes do TypeScript contém dezenas de milhares de casos executados a cada commit. Para o TS 7, a equipe ampliou a validação com:
- Testes internos em grandes monorepos (Loop, Office, Power BI, Teams, Xbox).
- Colaborações externas com empresas como Bloomberg, Canva, Figma, Google, Notion, Slack, Vercel, entre outras.
- Reestruturação da infraestrutura de testes automatizados no GitHub, que agora roda contra o compilador nativo.
Resultados de qualidade incluem redução de 80 % nas falhas de comandos do language server e queda de mais de 60 % nos crashes comparado ao TS 6.
Depoimentos de grandes equipes
- Slack: diminuição de 40 % no tempo de fila de merge; verificação de tipos em CI caiu de 7,5 min para 1,25 min.
- Vanta: aceleração de até 9× em builds de projetos volumosos.
- Microsoft News Services: economia de 400 h/mês em tempo de espera por builds de CI.
- Power BI: desenvolvedores relataram experiência “salva‑vidas” no editor.
- Canva: tempo para exibir o primeiro erro caiu de 58 s para 4,8 s.
Compatibilidade com TypeScript 6
Até a chegada da versão 7.1, o TS 7 não inclui API pública. Para quem ainda depende da API do TS 6, foi criado o pacote @typescript/typescript6, que fornece o executável tsc6 e reexporta a API anterior.
Exemplo de instalação side‑by‑side:
npm install -D typescript@npm:@typescript/typescript6
ou via package.json:
{
"devDependencies": {
"typescript": "npm:@typescript/typescript6@^6.0.2"
}
}
Para usar simultaneamente os dois compiladores, adicione um alias para a versão nativa:
{
"devDependencies": {
"@typescript/native": "npm:typescript@^7.0.2",
"typescript": "npm:@typescript/typescript6@^6.0.2"
}
}
Nightly builds e preview
Os builds nightly estavam disponíveis no pacote @typescript/native-preview, que já recebeu mais de 8,5 milhões de downloads semanais. A partir de agora, as versões nightly serão distribuídas pelo canal next do pacote oficial:
npm install -D typescript@next
Controle avançado de paralelismo
O TS 7 introduz flags experimentais para ajustar a paralelização:
--checkers <n>: define o número de workers de verificação de tipos (padrão 4). Valores maiores aumentam a velocidade em máquinas com mais núcleos, porém consomem mais memória.--builders <n>: controla workers de construção de referências de projetos, útil em monorepos.--singleThreaded: desabilita todo o paralelismo – útil para depuração ou ambientes com recursos limitados.
Exemplo de ganho com mais workers
| Código‑fonte | TS 6 (s) | TS 7 (--checkers 8) (s) |
Ganho |
|---|---|---|---|
| vscode | 125.7 | 7.51 | 16.7× |
| sentry | 139.8 | 12.08 | 11.6× |
| bluesky | 24.3 | 2.01 | 12.1× |
| playwright | 12.8 | 1.16 | 11× |
| tldraw | 11.2 | 1.06 | 10.6× |
Ajuste o número de --builders de forma semelhante; o impacto é multiplicativo quando combinado com --checkers.
Modo --watch reconstruído
O novo --watch baseia‑se no @parcel/watcher, oferecendo monitoramento de arquivos estável e eficiente em todas as plataformas. A implementação evita polling intensivo, reduzindo a carga computacional em projetos com milhares de arquivos.
Conclusão
TypeScript 7.0 representa um salto de desempenho significativo, mantendo compatibilidade e estabilidade comprovadas. A combinação de compilação nativa, paralelismo configurável e melhorias no language server traz um ambiente de desenvolvimento mais ágil para projetos de todos os tamanhos. Usuários são incentivados a migrar o quanto antes e a experimentar as novas flags para extrair o máximo de suas máquinas.