( BaT | 2021. 06. 14., h – 17:27 )

Igen és nem. Nyilván nem mindegyik library, és főleg framework fogja követni ezt az elvet. Illetve a Node.js-nek van egy olyan egyedi tulajdonsága, hogy egy függőség több verziója is használatban lehet ugyanabban a projectben a tranzitív függőségeken keresztül. Pl. ez a függőségfa Node.js-ben érvényes:

  • my-project 1.0.0
    • a-lib 1.0.0
      • c-lib 1.0.0
    • b-lib 2.0.0
      • c-lib 2.0.0
    • c-lib 3.0.0

Az npm valamennyire tud segíteni a függőségek deduplikálásával, de a fenti esetben a c-lib mindhárom verziója megtalálható lesz a node_modules könyvtárban.

Továbbá a libraryk általában magukkal csomagolják a saját tesztjeiket, dokumentációjukat, stb. is, amit jó eséllyel soha nem fogsz használni. Ha a release-edet Webpack-kal vagy más bundlerrel állítod elő akkor ez nem gond, mert az eleve csak azt rakja bele a buildbe amit használsz.