¿Qué es lo más cercano a `npm ci` en hilo?
En npm, hay un ci
comando para instalar el proyecto en estado limpio. En la documentación se afirma que:
Puede ser significativamente más rápido que una instalación npm normal al omitir ciertas funciones orientadas al usuario. También es más estricta que una instalación normal, lo que puede ayudar a detectar errores o inconsistencias causadas por los entornos locales instalados incrementalmente por la mayoría de los usuarios de npm.
¿ Cuál es el equivalente más cercano al npm ci
comando en el mundo del hilo? Quizás la respuesta es que no necesitamos esto en hilo porque su arquitectura es tal que no necesitamos un modo especial. Quizás la respuesta sea utilizar un montón de opciones de configuración. Sin embargo, no puedo encontrar una sola respuesta completa a esta pregunta y creo que sería valioso tenerla.
Creo que es tan simple como eso:
yarn install --frozen-lockfile
Desafortunadamente, debido a la forma en que funciona la resolución del módulo de hilo, yarn install --frozen-lockfile
a veces simplemente hacerlo no es suficiente. Aún es posible que le queden depósitos transitivos que no sean válidos.
Para realmente obtener el mismo comportamiento que npm ci
usted debe hacer:
rm -rf node_modules && yarn install --frozen-lockfile
Para versiones más nuevas de hilo, debes usar:
yarn install --immutable --immutable-cache --check-cache
Como se indica en los documentos oficiales de Yarn : 😉
Si la
--check-cache
opción está configurada [...] Esto se recomienda como parte de su flujo de trabajo de CI si sigue el modelo de instalaciones cero y acepta RP de terceros, ya que de lo contrario tendrían la capacidad de alterar el marcado. -en paquetes antes de enviarlos.