update manager instalar npm homebrew bower package-managers yarnpkg

manager - ¿Cuál es la diferencia entre elaboración, hilado y npm?



yarn update (4)

No estoy familiarizado con brew, pero supongo que te refieres al sistema de gestión de paquetes de software Homebrew para macOS.

Entonces el propósito de cada sistema es:

  1. brew : instalación de software, es decir, lista para consumir aplicaciones como wget.
  2. npm : instalación de paquetes (bibliotecas), es decir, piezas de funcionalidad para ayudarlo a construir sus propias aplicaciones.
  3. Hilo : también instalación de paquetes.

El hilo tiene algunas ventajas sobre npm, los dos principales son la velocidad y la previsibilidad. Yarn reutiliza el archivo package.json de npm y no cambia su estructura. Por lo tanto, puede ejecutar yarn install lugar de npm install y, en teoría, todo funcionará automáticamente.

PD: Estoy de acuerdo, https://yarnpkg.com no tiene suficientes antecedentes sobre por qué demonios necesitamos otro sistema de administración de paquetes, pero hay un gran artículo que llena ese vacío.

Estaba usando el paquete react-native que instalé globalmente con npm . Ahora dice en la primera línea después de ejecutar el comando init . El seguimiento:

Installing react-native from npm... Consider installing yarn to make this faster: https://yarnpkg.com

Así que estaba revisando ese sitio web y me pareció interesante, pero no sé exactamente cuál sería. Al principio, pensé que necesitaría brew para instalar el yarn , así que podría npm para instalar el npm . Pero ahora creo que el yarn es un reemplazo de npm . ¿Es esa una afirmación correcta?

¿Por qué me gustaría tener tantos gestores de paquetes?

Entiendo que es útil para software como Atom o Visual Studio Code para tener su propio administrador de paquetes. Pero para el desarrollo, no veo la razón por la que a alguien le gustaría usar cuatro administradores de paquetes diferentes (preparación para ''software primario'', yarn para paquetes npm, npm para módulos backend y bower para bibliotecas front-end). ¿Cómo se puede desenredar este gestor de paquetes?


Yarn es un gestor de paquetes JavaScript creado por Facebook, Google, Exponent y Tilde. Está creado para eliminar o superar las características que faltan en npm. En comparación con npm tiene

  • Seguridad mejorada
  • Modo offline
  • Instalación paralela - instalación tan rápida

Otra diferencia importante fue el archivo yarn.lock , pero después de npm ^ 5.xx también proporcionan el archivo package.lock.json .

Y los comandos de hilo funcionan como npm:

# Starting a new project npm init === yarn init # Installing all the dependencies of project npm install === yarn or yarn install # Adding a dependency npm install [package] === yarn add [package] # The package is saved to your package.json immediately. npm install [package]@[version] === yarn add [package]@[version] npm install [package]@[tag] === yarn add [package]@[tag] # Add a dev dependency npm install [package] --save-dev === yarn add [package] --dev # Upgrading a dependency npm update [package] === yarn upgrade [package] npm update [package]@[version] === yarn upgrade [package]@[version] npm update [package]@[tag] === yarn upgrade [package]@[tag] # Removing a dependency npm uninstall [package] === yarn remove [package] # View registry information npm view [package] === yarn info [package] # List installed packages npm list === yarn list npm list --depth === yarn list --depth=0 # Install packages globally npm install -g [package] === yarn global addb [package] # Run a defined package script npm run [script] === yarn run [script]

Referencias

https://www.sitepoint.com/yarn-vs-npm/

https://scotch.io/@brian_kimo/npm-vs-yarn

y el anuncio oficial

https://code.facebook.com/posts/1840075619545360


Yarn es, como NPM , un gestor de paquetes para Node.JS. El hilo es construido por Facebook. Es más rápido y tiene más funciones que NPM.

Sus principales puntos de venta son:

  • Seguridad Con el archivo yarn.lock (similar al npm-shrinkwrap.json de NPM) todas las dependencias están bloqueadas en la versión exacta. Entonces, ya no tienes que luchar con " Pero funciona en mi máquina ". Todos tienen las mismas versiones bloqueadas en el archivo yarn.lock
  • Speed ​​Yarn usa proxies (rápidos) y almacenamiento en caché (sin conexión) para entregar sus módulos más rápido. También tiene un verificador de LICENCIA, que verifica la licencia de todos sus módulos de dependencia.

hilo vs npm

yarn y npm son instalaciones y dependencias de módulos de gestión. Yarn fue construido para abordar algunas de las deficiencias de npm.

Las mayores ventajas de hilo sobre npm son

  1. La instalación de paquetes con hilo es paralelizada y, por lo tanto, la instalación de paquetes es más rápida.
  2. package.json puede ser muy suelto en términos de números de versión. yarn.lock (similar a npm shirkwrap) bloquea esto para que dos máquinas con el mismo paquete.json siempre instalen exactamente los mismos paquetes.

  3. yarn permite verificar por qué algunos paquetes están instalados (entienda el árbol de dependencias)

Ref: https://www.sitepoint.com/yarn-vs-npm/