Node.js 24.16.0 LTS Generación de UUIDs nativa y mejoras en depuración para entornos de producción

  • 27 May 2026 09:21 PM

El equipo de Node.js ha lanzado la versión 24.16.0 de su rama de soporte a largo plazo (LTS), una actualización que introduce nuevas funcionalidades solicitadas por la comunidad y refuerza la estabilidad del entorno de ejecución. Disponible desde el 20 de mayo de 2026, esta versión incorpora la generación nativa de UUIDv7 en el módulo crypto, mejoras en el depurador con evaluación de expresiones en tiempo real, actualizaciones de dependencias clave como OpenSSL 3.5.6 y npm 11.13.0, y múltiples correcciones en el manejo de streams y peticiones HTTP, consolidando la fiabilidad de la plataforma para servidores y aplicaciones en equipos de cómputo de todo tipo.

Crypto Module: Adiós a las dependencias externas con UUIDv7 nativo

Una de las novedades más destacadas de Node.js 24.16.0 es la introducción de la función randomUUIDv7() en el módulo nativo crypto. Esta adición responde a una necesidad largamente sentida por la comunidad de desarrolladores.

El problema:

Hasta ahora, generar identificadores ordenables y resistentes a colisiones requería instalar librerías externas pesadas como uuid desde npm, lo que añadía dependencias y complejidad a los proyectos.

La solución:

La nueva función randomUUIDv7() permite generar identificadores UUID versión 7 directamente en el núcleo de Node.js.

A diferencia de UUIDv4 (completamente aleatorios), los UUIDv7 son sortables (se pueden ordenar cronológicamente), lo que mejora significativamente el rendimiento en bases de datos como PostgreSQL al utilizarlos como claves primarias.

Ejemplo de uso:

const { randomUUIDv7 } = require('crypto');
const id = randomUUIDv7(); // "0195c0b0-5f4c-7d2a-9b3e-4f1a6c8d2e5f"

Otras mejoras en crypto:

La versión también refuerza la validación de claves en WebCrypto, rechazando nombres de tipos heredados que antes pasaban silenciosamente.

OpenSSL se ha actualizado a la versión 3.5.6, que incluye parches de seguridad de rutina sin romper cadenas de certificados existentes.

Correcciones en HTTP y Streams: Adiós a las fugas de memoria silenciosas

La versión 24.16.0 incluye varias correcciones en el manejo de peticiones HTTP y streams, diseñadas para eliminar fugas de memoria que solían manifestarse después de días de actividad continua en servidores de producción.

Componente Corrección incluida Impacto
ClientRequest Se ha endurecido la fusión de opciones de cabeceras, evitando que cabeceras conflictivas se sobrescriban silenciosamente durante redirecciones o saltos de proxy Mayor predictibilidad en peticiones HTTP complejas
IncomingMessage Ahora expone una propiedad signal, permitiendo que los controladores AbortController funcionen correctamente con patrones fetch del lado del servidor Mejor control de cancelación de peticiones
OutgoingMessage El evento drain ahora se dispara en el momento correcto, no demasiado pronto ni nunca Mejor gestión del backpressure en respuestas lentas
Streams Múltiples correcciones en pares dúplex y errores de composición anidada que dejaban promesas colgadas en entornos de producción Prevención de fugas de memoria y promesas sin resolver

Estos cambios detienen el tipo de fugas de recursos que solían manifestarse como un crecimiento incontrolado de memoria después de varios días de actividad del servidor.

Depurador y Test Runner: Herramientas más prácticas

Node.js 24.16.0 incluye mejoras significativas en las herramientas de desarrollo y prueba.

Nuevas capacidades del depurador (node inspect)

El depurador ahora soporta "edit-free runtime expression probes" (sondas de expresión en tiempo de ejecución sin edición).

Esto elimina la necesidad de pausar la ejecución solo para inspeccionar el estado de variables durante flujos asíncronos complejos, agilizando la depuración en entornos de producción.

Mejoras en el Test Runner nativo

El corredor de pruebas incorpora dos mejoras sustanciales:

Soporte para mock.timers:

Ahora es posible simular AbortSignal.timeout en las pruebas, facilitando la detección de problemas de temporización antes de que lleguen al entorno de pruebas (staging).

Aleatorización de pruebas por defecto:

El orden de ejecución de las pruebas se aleatoriza por defecto, ayudando a identificar pruebas que pasan solo por su orden de ejecución (test order dependency).

Actualización de dependencias clave

La versión 24.16.0 actualiza múltiples dependencias fundamentales del ecosistema Node.js:

Dependencia Nueva Versión Propósito
npm 11.13.0 Gestor de paquetes actualizado
Corepack 0.35.0 Herramienta de gestión de gestores de paquetes
undici 7.25.0 Cliente HTTP subyacente para fetch global
OpenSSL 3.5.6 Criptografía y seguridad
libuv 1.52.1 Manejo de descriptores de archivos en Windows y Linux

SQLite también recibe mejoras, incorporando métodos serialize y deserialize, junto con la extensión Percentile, útil para embeber bases de datos en funciones edge o herramientas CLI.

QUIC y V8: Preparando el terreno para HTTP/3

Aunque la implementación de QUIC (el protocolo que habilita HTTP/3) permanece detrás de una bandera de compilación, recibe múltiples mejoras en el manejo de contexto TLS y correcciones en el manejo de SNI, preparando la base para una adopción más amplia en el futuro.

El motor V8 incorpora optimizaciones de rendimiento adicionales mediante cherry-picks de versiones superiores, y libuv se actualiza a la versión 1.52.1 para suavizar el manejo de descriptores de archivos en Windows y Linux.

Disponibilidad y cómo actualizar

Node.js 24.16.0 LTS ya está disponible para su descarga a través de los canales oficiales del proyecto.

Enlaces de descarga oficiales

  • Sitio web oficial: nodejs.org
  • Página de descargas: nodejs.org/download
  • Binarios para macOS: Disponibles en formato PKG (102.3 MB) para arquitecturas Intel y Apple Silicon

Actualización mediante gestores de paquetes

Usando nvm (Node Version Manager):

nvm install 24.16.0
nvm use 24.16.0

Usando npm (actualización global):

npm install -g node@24.16.0

En distribuciones Linux (Ubuntu/Debian con NodeSource):

sudo apt update
sudo apt install nodejs=24.16.0-1nodesource1

Actualización en contenedores Docker

FROM node:24.16.0-slim

Recomendaciones para administradores

Para entornos de producción:

La rama LTS 24.x es la versión recomendada para despliegues en producción. Node.js 20.x ha alcanzado su fin de vida útil (End-of-Life) desde mayo de 2026, por lo que se recomienda planificar la migración a la serie 24.x para seguir recibiendo parches de seguridad.

Para desarrollo y pruebas:

La nueva funcionalidad de UUIDv7 y las mejoras en el depurador justifican la actualización, incluso si no se migra inmediatamente en producción.

Verificación de la versión instalada:

node --version
# Debería mostrar: v24.16.0