Почему на разных версиях ноды по разному устанавливаются зависимости?
Пытался собрать чужой quasar проект, *-lock.json файла в проекте нет, yarn install (и npm) крашились при установке зависимостей (на каком-то MAKE CXX билде).
В итоге нагуглил, что в случае с моей ошибкой нужна версия ноды 11.15.0.
Поставил ее, все установилось, я вот думаю, а какая разница - какая версия ноды, если у меня в package.json примерные необходимые версии указаны (в основном с символом ^ домика).
Неужели разные версии node, используются разные репозитории или в чем проблема?
Скорее всего дело в либах которые требуют бинарников, а не только чистого js: такие либы сильно зависят как от версии ноды так и от окружения, и имеют готовые бинарники под какие-то популярные(или старые) версии. Если готовых бинарников под версию ноды\окружение нет - он будет пытаться оные собрать, но для этого нужно много всякого мусора и подготовки, потому оно скорее крашнется чем соберётся.)