Passer au contenu principal

L'année 2022 pour pnpm

· 3 mins à lire

C'est la fin de l'année. Une année vraiment difficile. Comme vous le savez peut-être, je vis en Ukraine, donc en raison de l'invasion russe contre nous, il était plus difficile de diriger ce projet comparé aux années précédentes. Néanmoins, ce fut une bonne année pour pnpm. Nous avons eu beaucoup de nouveaux utilisateurs, contributeurs, et nous avons implémenté de nombreuses fonctionnalités intéressantes.

(l'illustration ci-dessus a été générée par Midjourney. Le tigre symbolise l'année du tigre)

Utilisation

Statistiques de téléchargement

Mon objectif cette année était de battre Lerna en nombre de téléchargements. Nous avons pu atteindre cet objectif en août :

pnpm a été téléchargé plus de 5 fois plus en 2022 qu'en 2021 :

Visites des documents

Nous recueillons des statistiques non personnalisées sur nos documentations à l'aide de Google Analytics. En 2022, nous avions parfois eu plus de 20 000 visiteurs uniques par semaine. C'est 10 fois plus qu'en 2021 !

Étoiles GitHub

Notre dépot GitHub principal a presque reçu plus de 7 000 étoiles cette année.

Nos contributeurs

Nous avons eu beaucoup de contributeurs nouveux et actifs cette année. Voici les personnes qui ont eu au moins une PR d'intégrée dans pnpm en 2022 :

Fonctionnalités marquantes

Support d'un node_modules standard sans liens symboliques (depuis la v6.25.0)

Dès le début de 2022, nous avons ajouté la prise en charge du "traditionnel" node_modules (aussi appelé node_modules plat). Nous utilisons l'algorithme de hissage de Yarn pour créer un node_modules plat correct. Cette nouvelle fonctionnalité a essentiellement rendu pnpm compatible avec toutes les piles Node.js qui sont compatibles avec la CLI npm.

Pour utiliser la structure de node_modules plat, utilisez le paramètre node-linker=hoisted dans un fichier .npmrc.

Cache d'effets secondaires (depuis la v7.0.0)

Depuis la v7, le cache d'effets secondaires (side-effect-cache) est activé par défaut. Les dépendances qui doivent être compilées ne le sont donc qu'une seule fois sur une machine. Cela améliore considérablement la vitesse d'installation dans les projets qui ont des dépendances avec des scripts de compilation.

Correction des dépendances (depuis la v7.4.0)

La commande pnpm patch a été ajoutée pour corriger les dépendances dans votre node_modules.

Stratégie de résolution basée sur le temps (depuis la v7.10.0)

Un nouveau mode de résolution a été ajouté à pnpm, ce qui devrait rendre plus sécurisée la mise à jour de dépendances. Vous pouvez changer le mode de résolution avec le paramètre resolution-mode.

Liste des licences des dépendances (depuis la v7.17.0)

Vous pouvez maintenant utiliser la commande pnpm licences list pour afficher les licences des dépendances installées.