J'ai installé quelques packages node et ce que j'ai remarqué, c'est que NPM crée plusieurs doublons.
Par exemple, j'ai d'abord installé mongoose, qui a installé plusieurs dépendances, naturellement. Ensuite, j'ai installé le package mongodb, qui est également venu avec bson en tant que dépendance. En raison de dépendances superposées, j'ai l'anomalie suivante :
Mongodb est présent dans les répertoires suivants :
/usr/local/lib/node_modules/mongodb/
/usr/local/lib/node_modules/mongoose/node_modules/mongodb/
Aussi, bson, une dépendance de mongodb est présente dans les deux cas :
/usr/local/lib/node_modules/mongodb/
/usr/local/lib/node_modules/mongoose/node_modules/mongodb/
Je réalise que ce ne sont que des fichiers de quelques kilooctets, mais j'ai l'impression que cela pourrait créer beaucoup de redondance et je pourrais me retrouver avec un arbre très complexe similaire au suivant :
/usr/local/lib/node_modules/[quelquechose1]/node_modules/[quelquechose2]/node_modules/[quelquechose3/.../.../node_modules/[quelquechoseX]/
Dans ce scénario, une [dépendance] donnée pourrait être présente sur X niveaux sous /usr/local/lib/node_modules.
Ma principale préoccupation est liée à la mise à jour de ces modules. Je trouve facile d'imaginer avoir simultanément des modules de différentes versions installées en même temps.
Ne serait-il pas plus facile de tout mettre directement dans /usr/local/lib/node_modules/ et ensuite de faire des références croisées aux dépendances ?