Resumo
O Node.js 27.0.0-alpha.0.0.0 apresenta o V8 15.6.75.13 e mudanças incompatíveis no runtime. A memória ocupada por Buffer e ArrayBuffer integra o limite do heap. Versões anteriores não conseguem ler o novo formato de serialização. Esta alpha serve para conferir a compatibilidade das aplicações com a próxima linha principal, mantendo a avaliação separada do ambiente de produção.
Novidades
- Node.js 27.0.0-alpha.0.0.0 — JavaScript: o V8 habilita
Math.sumPrecise(),Intl.Locale.prototype.variantse novos métodos de iteradores, incluindoIterator.zip()eIterator.zipKeyed(). - Node.js 27.0.0-alpha.0.0.0 — Rede: o módulo experimental
net/promisesacrescenta uma interface baseada em promises. - Node.js 27.0.0-alpha.0.0.0 — Permissões: a opção
--allow-envintegra o controle de acesso às variáveis de ambiente. - Node.js 27.0.0-alpha.0.0.0 — Recursos experimentais:
import deferdepende de--js-defer-import-eval. OArrayBufferimutável utiliza--js-immutable-arraybuffer.
Melhorias
- Node.js 27.0.0-alpha.0.0.0 — Dependências: a distribuição atualiza o V8 para 15.6.75.13, o OpenSSL para 4.1.0 e o npm para 12.1.0.
- Node.js 27.0.0-alpha.0.0.0 — Execução:
awaitutiliza menos microtarefas. A ordenação de arrays grandes porArray.prototype.sort()utiliza PowerSort e preserva a estabilidade. - Node.js 27.0.0-alpha.0.0.0 — Arquivos: o suporte a glob utiliza uma implementação nativa.
Correções
- Node.js 27.0.0-alpha.0.0.0 — Sistema de arquivos virtual: os descritores abertos respeitam o estado somente leitura. As funções
readlink,realpathemkdtemprecebem correções de codificação. - Node.js 27.0.0-alpha.0.0.0 — Streams: a implementação corrige a perda do evento
drainemfromWritable(). As escritas que aguardam continuidade conservam o estado assíncrono associado à execução.
Breaking changes
- Node.js 27.0.0-alpha.0.0.0 — Memória: na ausência de
--max-old-space-size, o limite padrão do heap corresponde à metade da memória física, entre 256 MB e 4 GB.BuffereArrayBuffercontam nesse limite. Aplicações ajustadas aos valores anteriores precisam definir o limite explicitamente e medir o consumo com sua carga habitual. - Node.js 27.0.0-alpha.0.0.0 — Serialização: o novo formato usado por
v8.serialize(),structuredClone()epostMessage()não pode ser lido por versões anteriores do Node.js. Sistemas que trocam ou preservam conteúdo serializado precisam conferir a compatibilidade dos processos consumidores antes da troca de runtime. - Node.js 27.0.0-alpha.0.0.0 — HTTP:
req.headersutiliza protótipo nulo, o timeout padrão de keep-alive sobe para 65 segundos e respostas que excedem o limite de cabeçalhos são recusadas. Revise código que utiliza métodos herdados deObject.prototypenos cabeçalhos e confira os timeouts dos servidores. - Node.js 27.0.0-alpha.0.0.0 — OpenSSL: a compilação exige OpenSSL 3 ou posterior, remove a construção do provedor FIPS incluído e encerra o suporte a engines do OpenSSL. Instalações que utilizam esses componentes precisam adaptar a compilação e a integração criptográfica.
- Node.js 27.0.0-alpha.0.0.0 — Configuração: a versão remove
--no-experimental-websockete renomeia as flags--experimental-wasm-<name>para--wasm-<name>. Ajuste os comandos de inicialização que ainda incluem essas opções.
Ponto de Atenção
O suporte a macOS com processadores Intel recebe a classificação experimental. Os snapshots do heap incluem objetos internos e fontes completas dos scripts, com estimativa de dobrar o tempo de geração e o tamanho do arquivo segundo as notas. Essas condições precisam entrar na preparação dos testes, especialmente quando você coleta snapshots para investigar consumo de memória.
Teste sugerido: numa cópia do ambiente, execute a suíte da aplicação com carga que utilize buffers e compare o consumo de memória. Confira a leitura de um arquivo produzido por v8.serialize() entre as versões utilizadas pelos seus processos. Exercite o acesso a req.headers, os timeouts HTTP e os comandos de inicialização.
Notas da versão
O Node.js 27.0.0-alpha.0.0.0 foi publicado em 29/10/2026 às 18h36 UTC como pré-release. O anúncio informa que o changelog completo da transição do V8 14.6 para 15.6 será disponibilizado posteriormente.