Dans cet article, nous vous donnerons toutes les informations dont vous avez besoin pour mettre à jour npm, qui est le gestionnaire de paquets Node.js, qui est devenu au fil des ans un outil extrêmement important pour les développeurs web, en particulier ceux qui travaillent avec le Front-End, ainsi que pour tous ceux qui utilisent Node.js pour le backend.
Avant de vous montrer comment mettre à jour npm, vous devez garder à l’esprit que ce gestionnaire de paquets et automate de scripts vous permet d‘installer toutes sortes d’outils et d’utilitaires, et qu’il constitue la base de l’outillage moderne utilisé pour le développement, qu’il s’agisse de créer des processus complexes de regroupement et d’automatisation ou de choses simples comme la réduction des fichiers.
Un détail qu’il ne faut pas perdre de vue est qu’il est toujours pratique d’avoir la dernière version de cet outil, c’est pourquoi dans cet article nous voulons vous donner toutes les informations sur la mise à jour de npm, afin que vous n’ayez pas beaucoup de doutes à ce sujet et que vous puissiez travailler sans grandes complications en l’utilisant.

Il est important de garder à l’esprit que si vous téléchargez la dernière version de l’installateur, la dernière version de Node.js sera incluse, mais que faire si vous voulez mettre à jour la version de npm et non la version de Node.js ?
Puisque npm est un paquet npm, nous pouvons le mettre à jour de la même manière que n’importe quel autre paquet en utilisant la commande suivante :
- npm update -g npm
Cependant, cette commande ne fonctionne pas toujours comme on le souhaite sous Windows. Cela est dû au fait que, sous Windows, Node.js est installé dans le dossier C:\Program Files\Nodejs, où se trouve la version «stock» de la version npm, comme vous pouvez le voir dans l’image suivante :

En d’autres termes, il pointe en réalité vers un code situé dans le dossier node_modules de l’installation Node.js.
Cependant, vous devez garder à l’esprit que lorsque vous mettez à jour un paquet npm avec la commande ci-dessus, ce que nous faisons en réalité est de mettre à jour le paquet situé dans le dossier de l’utilisateur, à l’intérieur du dossier C:\Users\<usuario>\AppData\Roaming\npm, de sorte que, bien que l’installation de Node.js soit globale, chaque utilisateur a la possibilité de gérer ses propres paquets sans avoir besoin d’interférer avec les autres utilisateurs.
Dans ce cas, le conflit est causé par le fait que, lors de l’installation de Node.js sur le système, l’une des options à notre disposition est d’ajouter les deux dossiers dans le PATH de Windows, c’est-à-dire le dossier des paquets npm et le dossier d’installation de Node.js, comme on peut le voir dans l’image suivante :

Ainsi, lors de la mise à jour de npm, le chemin des paquets est installé dans le chemin de l’utilisateur ou PATH, et Node.js est installé dans le PATH du système :

Comme vous pouvez l’imaginer, cela finit par provoquer un conflit, puisque le PATH du système est celui qui a la priorité sur le PATH de l’utilisateur (contrairement à ce qui se passe avec les autres variables d’environnement, mais dans ce cas, nous avons un PATH qui est spécial dans ce sens). C’est pourquoi, lorsque vous êtes sur le point de mettre à jour npm (en enregistrant la dernière version dans le chemin du paquet npm de l’utilisateur), l’effet le plus pratique est que le système ne peut tout simplement pas trouver la dernière version.
C’est parce qu’il récupérera la version du npm original dans le dossier d’installation de Node.js qui était dans celui-ci en premier.
Comment résoudre le problème ci-dessus ?
Nous pouvons dire qu’il y a plusieurs façons de résoudre ce problème lors de la mise à jour de npm, il y a donc certainement un certain nombre de facteurs importants que nous devons prendre en compte, ainsi que vous pouvez apprendre les différentes façons dont vous disposez pour effectuer la mise à jour.
Parmi toutes les méthodes possibles, la plus simple est de supprimer la version originale de npm, qui est la version originale fournie avec Node.js, mais avant de faire cela, vous devez vous assurer que vous avez mis à jour npm comme décrit ci-dessus. Il s’agira des deux fichiers que nous avons mentionnés dans les cases ci-dessus.
Le principal problème est que si quelqu’un d’autre essaie d’utiliser Node sur la même machine et ne l’a pas mis à jour, il se retrouvera automatiquement sans le gestionnaire de paquets. L’un des conseils les plus importants à garder à l’esprit dans ces cas est de ne pas toucher aux fichiers originaux si vous pouvez trouver une autre solution à ce problème.
C’est pourquoi nous voulons que vous gardiez à l’esprit que la seule autre solution pour pouvoir mettre à jour npm est d’effectuer la mise à jour directement dans le dossier d’origine, ce qui, pour le faire correctement, implique une série d’étapes qui peuvent être un peu ennuyeuses ou fastidieuses et que vous pouvez trouver expliquées dans la documentation officielle de npm.
Donc, si vous voulez éviter d’avoir à passer par cette partie du processus qui peut finir par être assez fastidieuse, vous pouvez utiliser un paquet npm qui sert à résoudre ce programme spécifique. Nous parlons de npm-windows-upgrade. Il a été conçu par le programmeur Felix Rieseberg lorsqu’il travaillait chez Microsoft. Vous pouvez donc être sûr qu’il s’agit d’une solution très efficace.
Pour l’utiliser, nous devons ouvrir PowerShell avec des droits d’administrateur :

Lorsque vous avez PowerShell ouvert, vous devez vous assurer que vous exécutez les scripts PowerShell, qui sont par défaut «plafonnés» en tapant ce qui suit :
- Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
Maintenant vous pourrez continuer. La seule chose que vous aurez à faire est d’installer le paquet npm que nous avons mentionné :
- npm install -g npm-windows-upgrade
En faisant cela, vous aurez la possibilité d’utiliser cet outil afin de pouvoir mettre à niveau npm vers la version que vous souhaitez :

Dans l’image ci-dessus, vous pouvez voir comment une vérification de la version de npm que vous avez installée (dans ce cas, la version 5.0.3) a été effectuée, et lorsque vous lancez l’upgrader, il indique les versions disponibles, parmi lesquelles vous pouvez choisir. La version la plus récente est la 5.2.0, qui est celle que vous choisissez et sélectionnez ENTRÉE pour l’installer.
Ce processus peut prendre un certain temps, mais vous devrez attendre que npm soit mis à jour directement dans le dossier Node.js.
Vous devez savoir qu’il s’agit d’un outil qui semble un peu tiré par les cheveux, mais en réalité, c’est l’une des options les plus efficaces que nous puissions trouver. En fait, ce n’est pas pour rien que c’est la méthode qui est recommandée par Node.js dans sa documentation pour effectuer la mise à jour sur Windows, donc vous pouvez être complètement sûr que c’est l’une des meilleures options dont nous disposons aujourd’hui.
Vous connaissez maintenant toutes les informations nécessaires à la mise à jour de npm, vous ne devriez plus avoir de doutes à ce sujet.