Resultados da conferência de JavaScript e Node.js: principais anúncios
Na semana passada, em São Francisco, foi concluída a conferência anual dedicada ao ecossistema JavaScript e à plataforma de servidor Node.js. O evento reuniu mais de 5000 participantes, incluindo desenvolvedores-chave do Google, Microsoft, OpenJS Foundation e da comunidade Deno. Reunimos os anúncios mais importantes que impactarão o desenvolvimento em 2024–2025.
Node.js 22: novo lançamento LTS
O principal evento foi o lançamento do Node.js 22, que passou para o status de Long-Term Support (LTS). Entre as principais novidades:
- Cliente WebSocket integrado — agora, para trabalhar com o protocolo WebSocket, não é necessário instalar bibliotecas de terceiros (por exemplo,
ws). Isso simplifica a criação de aplicações em tempo real. - ESM Loader Hooks estável — versão final da API para interceptar o carregamento de módulos. Permite criar carregadores personalizados (por exemplo, para suporte a CSS ou JSON em ambiente ESM).
- Desempenho aprimorado — o motor V8 foi atualizado para a versão 12.4, proporcionando um aumento médio de 12% na velocidade de execução do código.
- Suporte a decoradores — funcionalidade experimental, anteriormente disponível apenas através do Babel ou TypeScript, agora está incluída por padrão.
TypeScript 5.6: novo compilador e verificações rigorosas
A Microsoft anunciou o TypeScript 5.6 Beta. Principais mudanças:
- Modo
strictBuiltinIterator— tipagem rigorosa para iteradores integrados (Map,Set,Array). Agora o TypeScript verificará os tipos dos elementos em todas as etapas das cadeias.map().filter(). - Importação automática de tipos do Node.js — o compilador puxa automaticamente os tipos de
@types/nodeao usar objetos globais (process,Buffer). - Compilador experimental em Rust — foi apresentado um protótipo do novo compilador
tsc-rs, que promete acelerar a compilação em 3 a 5 vezes para grandes projetos.
Deno 2.0: compatibilidade com npm e novas APIs
A equipe do Deno apresentou o release candidate do Deno 2.0. Principais anúncios:
- Compatibilidade total com pacotes npm — agora é possível importar qualquer pacote do npm sem usar o prefixo
npm:. O Deno resolve automaticamente as dependências através do seu próprio cache. - Test runner integrado com cobertura — o comando
deno testagora suporta a geração de relatórios de cobertura de código nos formatos LCOV e HTML. - Modo compatível com Node.js — a flag
--compatativa a emulação de objetos globais do Node.js (require,process.env,__dirname), facilitando a migração de projetos existentes.
V8 12.4: otimização de memória e WebAssembly
O motor V8, base do Node.js e Chrome, recebeu melhorias significativas:
- Compressed pointers — para sistemas de 64 bits, os ponteiros são comprimidos