Migrare da npm

, Author

Migrare da npm dovrebbe essere un processo abbastanza facile per molti utenti. Yarn può assumere lo stesso formato package.jsondi npm e può installare qualsiasi pacchetto dal registro di npm.

Se vuoi provare Yarn sul tuo progetto npm esistente, prova ad eseguire:

yarn

Questo disporrà la tua cartella node_modules utilizzando l’algoritmo di risoluzione di Yarn che è compatibile con l’algoritmo di risoluzione di thenode.js.

Se ottieni un errore, controlla un problema esistente o segnalalo al tracker dei problemi di Yarn.

Quando esegui yarn o yarn add <package>, Yarn genera un file yarn.lock nella directory principale del tuo pacchetto. Non hai bisogno di leggere o capire questo file – semplicemente controllalo nel controllo dei sorgenti. Quando altre persone inizieranno ad usare Yarn al posto di npm, il file yarn.lock si assicurerà che abbiano esattamente le stesse dipendenze che hai tu.

Nella maggior parte dei casi, eseguire yarn o yarn add per la prima volta funzionerà. In alcuni casi, le informazioni in un file package.json non sono abbastanza esplicite per eliminare le dipendenze, e il modo deterministico in cui Yarn sceglie le dipendenze incorrerà in conflitti di dipendenza. Questo è particolarmente probabile che accada in progetti più grandi dove a volte npm install non funziona e gli sviluppatori stanno spesso rimuovendo node_modules e ricostruendo da zero. Se questo accade, prova ad usare npm per rendere più esplicite le versioni delle dipendenze, prima di convertire a Yarn.

A partire da Yarn 1.7.0, puoi importare il tuo stato package-lock.json, generato da npm a Yarn, usando yarn import.

Altri sviluppatori del progetto possono continuare ad usare npm, quindi non hai bisogno di far convertire tutti quelli del tuo progetto nello stesso momento. Gli sviluppatori che usano yarn avranno tutti esattamente la stessa configurazione, e gli sviluppatori che usano npm potrebbero avere configurazioni leggermente diverse, che è il comportamento previsto di npm.

In seguito, se decidi che Yarn non fa per te, puoi semplicemente tornare a usare npm senza fare particolari cambiamenti. Puoi cancellare il tuo vecchio file yarn.lock se nessuno del progetto usa più Yarn, ma non è necessario.

Se ora stai usando un file npm-shrinkwrap.json, sii consapevole che potresti ritrovarti con un diverso insieme di dipendenze. Yarn non supporta i file npmshrinkwrap in quanto non hanno abbastanza informazioni per alimentare l’algoritmo deterministico di Yarn. Se state usando un file shrinkwrap può essere più facile convertire tutti quelli che lavorano al progetto ad usare Yarn allo stesso tempo. Semplicemente rimuovi il tuo file npm-shrinkwrap.json esistente e controlla il file yarn.lock appena creato.

Confronto comandi CLI

npm (v5) Yarn
npm install yarn add
(N/A) yarn add --flat
(N/A) yarn add --har
npm install --no-package-lock yarn add --no-lockfile
(N/A) yarn add --pure-lockfile
npm install --save yarn add
npm install --save-dev yarn add --dev
(N/A) yarn add --peer
npm install --save-optional yarn add --optional
npm install --save-exact yarn add --exact
(N/A) yarn add --tilde
npm install --global yarn global add
npm update --global yarn global upgrade
npm rebuild yarn add --force
npm uninstall yarn remove
npm cache clean yarn cache clean
rm -rf node_modules && npm install yarn upgrade
npm version major yarn version --major
npm version minor yarn version --minor
npm version patch yarn version --patch

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.