Salut à tous,
Pourquoi certains dossiers se trouvant dans le dossier 'node_modules' commencent par le caractère '@' ?
Merci de votre éclairage.
Version imprimable
Salut à tous,
Pourquoi certains dossiers se trouvant dans le dossier 'node_modules' commencent par le caractère '@' ?
Merci de votre éclairage.
Il s'agit de "scoped packages". Cf la doc npm.
Très fréquent sur les monorepo.
En résumé c'est un espace de nom.
Par exemple si l'entreprise Balibalo et l'entreprise Boubou ont chacune un package zloubi, au lieu de se tirer la bourre sur le nom sur le registry, car un package sur le registre npm doit être unique, ils peuvent scoper le nom ce qui donnerait du coup @Balibalo/zloubi et @Boubou/zloubi.
EDIT : Il s'agit d'une question npm et pas node, j'ai déplacé dans le forum approprié.
Je me doutais bien que cela pouvait être ainsi.
Mais ce qui m'a induit en erreur c'est qu'il existe néanmoins des directory '@vue' et '@babel' par exemple et qu'en plus il existe également des directory commençant par 'vue' et 'babel' mais n'étant pas dans la directory '@vue' ou '@babel'.
Pourquoi ne pas avoir mis leur packages dans leur bon 'namespace' ? Surtout pour babel qui possèdent une bonne 50ene de dossiers dans les node_modules.
Considères-tu le répertoire '@types' contenu dans les node_modules comme un namespace également ?
Ah ben ça ça dépend de la version que tu installes.Citation:
Envoyé par dorus-one
Par exemple pour Babel ils ont scopé leurs packages lors de la dernière version majeure l'hiver dernier.
Pour vue je sais pas ça fait un moment que j'en ai pas fait mais je viens de voir qu'ils sont toujours à la version 2 et que c'est pas scopé. Doit y en avoir qui le sont et d'autres pas je sais pas.
Tu dois être en version 6 ou inférieure. En version 7 il n'y a que des scoped packages.Citation:
Envoyé par dorus-one
Oui c'est exactement pareil, il s'agit d'un projet dédié pour gérer les types TypeScript des projets "officiels". En gros pour que les projets puissent publier leurs types d'une manière normalisée.Citation:
Envoyé par dorus-one