NPM 7 est disponible
mer, 10/02/2021 - 09:30
NPM, le gestionnaire officiel de paquetages pour node.js est sorti récemment en version 7. Outre des améliorations en termes de performances, NPM 7 apporte des nouveautés intéressantes.
Tout d'abord, l'interface de ligne de commande de npm 7 prend désormais en charge les espaces de travail, c'est-à-dire prend en charge la gestion de plusieurs packages à partir d'un seul package racine de niveau supérieur, conformément à ce RFC.
Pour cela, le fichier de configuration package.json reconnaît une propriété 'workspaces' qui répertorie un ensemble de chemins référençant un espace de travail dans le système de fichiers. Par exemple :
{
"name": "workspace-example",
"version": "1.0.0",
"workspaces": {
"packages": [
"packages/*"
]
}
}
La ligne de commande utilise cette nouvelle propriété pour rechercher d'autres fichiers package.json valides aux emplacements configurés et créer ainsi une liste de packages qui seront traités comme des espaces de travail.
A remarquer encore la modification du format du fichier de verrouillage, ou lockfile. Ce nouveau format, 'lockfile v2' est rétro-compatible avec NMP 6 et permet de faire des constructions reproductibles de manière déterministe pour générer une arborescence de paquetages.