Limitations
npm-shrinkwrap.json
andpackage-lock.json
are ignored. Unlike pnpm, npm can install the samename@version
multiple times and with different sets of dependencies. npm’s lockfile is designed to reflect the flatnode_modules
layout, however, as pnpm creates an isolated layout by default, it cannot respect npm’s lockfile format. See pnpm import if you wish to convert a lockfile to pnpm’s format, though.- Binstubs (files in
node_modules/.bin
) are always shell files, not symlinks to JS files. The shell files are created to help pluggable CLI apps in finding their plugins in the unusualnode_modules
structure. This is very rarely an issue and if you expect the file to be a JS file, reference the original file directly instead, as described in #736.
Got an idea for workarounds for these issues? Share them.