npm, что-то — yarn classic, некоторые — yarn berry, на последних проектах использую pnpm.Непередаваемое ощущение, когда по привычке набираешь `pnpm install` в старом проекте и по завершении обнаруживаешь, что вообще-то тут `yarn` 😳😡🤯
Чем плохо установить зависимости не тем пакетным менеджером?
Во-первых, будет проигнорирован lock-файл, и версии устанавливаемых модулей разойдутся, сборка становится нестабильной — у вас одни версии, а у коллег — другие.
Во-вторых, по-разному может работать разрешение зависимостей — yarn classic, например, позволяет прямое использование транзитивных зависимостей (hoisting), а pnpm (по умолчанию) — нет.
➿➿➿
Хочу поделиться инструментом, с которым я забыл о проблеме "установил не тем менеджером" — пакет ni от Anthony Fu.
Просто набираешь
ni, а пакет сам по lock-файлу либо полю packageManager в package.json определит, какой пакетный менеджер нужно использовать.Пользуюсь давно, работает стабильно, проблему решает — рекомендую к использованию :)