Por Canuto  

La versión 12 de pnpm reescribe su núcleo en Rust, conserva la compatibilidad con pnpm 11 y promete reducciones de hasta 90% en los tiempos de instalación.
***

  • pnpm 12 instaló un paquete de prueba en 5,19 segundos, frente a 8,22 segundos de pnpm 11 y 47,7 segundos de npm.
  • El nuevo núcleo en Rust reduce la sobrecarga de enrutar operaciones del sistema de archivos mediante Node.js.
  • El proyecto mantiene sus comandos, flags, ajustes y formato de lockfile, mientras pnpr acelera aún más las pruebas.


pnpm, uno de los gestores de paquetes más utilizados en proyectos JavaScript y monorepos, presentó su versión 12 estable el 26 de agosto de 2026 con una reescritura completa de su núcleo en Rust. El cambio promete reducciones de hasta 90% en los tiempos de instalación, pero el equipo asegura que la actualización no exige una migración traumática para quienes ya trabajan con pnpm 11.

La nueva versión conserva los comandos, las opciones, los ajustes y el formato del lockfile de la edición anterior, según la documentación oficial del proyecto. La actualización está planteada para mantener la experiencia de uso de pnpm 11, aunque cambia la implementación interna del gestor.

Además, pnpm 12 funciona como un ejecutable nativo y no requiere Node.js después de su instalación. La documentación del proyecto indica que la versión puede instalarse desde la etiqueta latest-12.

Una instalación mucho más rápida

Los benchmarks publicados por el propio proyecto muestran una diferencia considerable frente a las alternativas más conocidas. En una prueba con un paquete de muestra sin caché, pnpm 12 completó la instalación en 5,19 segundos, mientras pnpm 11 necesitó 8,22 segundos y npm tardó 47,7 segundos.

El equipo también probó un servidor de registro escrito en Rust, llamado pnpr, que puede mejorar todavía más el resultado cuando se utiliza como backend. En la misma prueba, la instalación se redujo a 3,37 segundos con pnpr, una cifra que ilustra cómo el rendimiento depende tanto del gestor local como de los servicios que entregan metadatos y archivos comprimidos.

Sarah Gooding, vicepresidenta de comunicaciones del proveedor de seguridad Socket, explicó que las tareas centrales de una instalación favorecen el uso de código nativo y procesamiento paralelo. La obtención de metadatos y tarballs, el desempaquetado, la resolución del grafo de dependencias y la vinculación de paquetes dentro de node_modules concentran buena parte del trabajo que pnpm busca acelerar.

Gooding señaló además que el proyecto comparó pnpm con Bun y Yarn, aunque retiró esos resultados debido a fallos en las pruebas. Por esa razón, la cifra más sólida disponible en el lanzamiento corresponde a las comparaciones entre pnpm 12, pnpm 11 y npm, mientras la afirmación de reducciones de hasta 90% describe algunos escenarios específicos y no necesariamente todas las instalaciones.

Qué cambia debajo de pnpm

El núcleo binario en Rust comenzó a desarrollarse en abril y elimina una parte importante de la sobrecarga asociada con el envío de operaciones del sistema de archivos a través de Node.js. Esa arquitectura busca atacar directamente los puntos donde una instalación puede perder tiempo, especialmente cuando un proyecto debe manipular numerosos paquetes y relaciones de dependencia.

Las estadísticas del repositorio indican que la nueva versión está compuesta en 65,9% por Rust y en 33,5% por TypeScript. La combinación mantiene una parte relevante de la lógica existente, al tiempo que coloca las operaciones con mayor demanda de rendimiento en un lenguaje conocido por su velocidad y por no depender de un recolector de basura.

La apuesta tiene especial importancia para los monorepos, que reúnen múltiples aplicaciones o paquetes dentro de un mismo repositorio y pueden repetir operaciones de instalación a gran escala. En esos entornos, una mejora en la resolución de dependencias, el almacenamiento y los enlaces de paquetes puede reducir esperas acumuladas durante el desarrollo y las integraciones.

pnpm también conserva una característica que ha definido su propuesta frente a npm: el almacenamiento direccionable por contenido. Si cien aplicaciones requieren la misma biblioteca, el gestor la descarga una vez y reutiliza ese contenido, salvo que alguna aplicación solicite una versión diferente, lo que reduce duplicaciones y el consumo de espacio en disco.

La competencia y la migración a Rust

Rico Sta. Cruz creó pnpm en 2016 como una alternativa más rápida a npm, el gestor de paquetes de facto del ecosistema JavaScript. npm permite encontrar y descargar bibliotecas y herramientas, pero durante años recibió críticas por su velocidad y por descargar en cada máquina las dependencias necesarias, incluso cuando existían duplicados.

pnpm continúa utilizando el registro oficial de npm como fuente de paquetes, aunque organiza el almacenamiento y la vinculación de una manera distinta. Sus usuarios también han valorado la legibilidad del lockfile, que describe el árbol de dependencias en YAML y facilita revisar cómo se compone un proyecto antes de instalarlo o actualizarlo.

La encuesta State of JavaScript 2025 ubicó a pnpm como el gestor de paquetes más popular entre los desarrolladores de monorepos de JavaScript. Aproximadamente 38% de los 10.251 participantes, equivalentes a 3.840 desarrolladores, dijeron utilizarlo, en una lista que también incluyó Nx, Lerna, Yalc, Turborepo y la función Workspaces integrada en npm.

La reescritura se suma a una tendencia más amplia de trasladar herramientas del desarrollo web hacia Rust. Bun recibió una renovación en Rust impulsada por inteligencia artificial, Tailwind CSS 4 incorporó un motor llamado Oxide y Vite obtuvo un bundler construido en Rust, llamado Rolldown, con el objetivo común de reducir cuellos de botella en herramientas escritas originalmente para el ecosistema JavaScript.

Darcy Clarke, CEO del proveedor de gestión de paquetes de JavaScript vlt, describió la decisión como una crítica a la experiencia de desarrollo ofrecida por Node.js. Kochan coincidió con esa lectura y afirmó que para pnpm resultó más rápido reescribir el gestor en Rust que migrarlo a módulos ECMAScript, una comparación que pone el foco en la dificultad de modernizar la base existente sin sacrificar rendimiento.

El lanzamiento, por tanto, no representa solamente una actualización de velocidad, sino también una señal sobre las prioridades del ecosistema. pnpm intenta conservar la experiencia que sus usuarios ya conocen mientras mueve las operaciones más pesadas hacia una base nativa, aunque los resultados de benchmarks deben interpretarse según el hardware, la red, el caché y la composición de cada proyecto.

Para los usuarios actuales, el paso a pnpm 12 ya está disponible como versión estable. La compatibilidad declarada con los comandos, las opciones, los ajustes y el formato de lockfile de pnpm 11 busca reducir los cambios inesperados, mientras el nuevo núcleo y pnpr plantean una competencia más intensa para npm, Bun y Yarn en los proyectos que necesitan instalar dependencias con rapidez.


Imagen original de DiarioBitcoin, creada con inteligencia artificial, de uso libre, licenciada bajo Dominio Público.

Este artículo fue escrito por un redactor de contenido de IA y revisado por un editor humano para garantizar calidad y precisión.


ADVERTENCIA: DiarioBitcoin ofrece contenido informativo y educativo sobre diversos temas, incluyendo criptomonedas, IA, tecnología y regulaciones. No brindamos asesoramiento financiero. Las inversiones en criptoactivos son de alto riesgo y pueden no ser adecuadas para todos. Investigue, consulte a un experto y verifique la legislación aplicable antes de invertir. Podría perder todo su capital.

Suscríbete a nuestro boletín