Лучший способ исправить версии для пакетов npm в существующем package.json - PullRequest
0 голосов
/ 24 мая 2019

У меня есть проект компании, в котором установлены пакеты npm с версией ~ и ^.В течение нескольких месяцев в проекте не было никаких новых разработок.Сейчас идет новая разработка, и из-за версий пакетов npm с ~ и ^ проект сталкивается с проблемами:

Существует около 125 пакетов с пакетами ^ и ~.

.json - это что-то вроде
response-redux: "~ 4.4.5"
redux-form: "~ 7.2.0"
sass-loader: "^ 7.0.2"
packageA: "^ 6.8.0 "

package-lock.json говорит (извлечено из исправной рабочей среды)
response-redux:" 4.4.8 "
redux-form:" 7.2.3 "
sass-loader: "7.1.0"
packageA: "6.9.1"

Проблема заключается в том, что из-за ^ и ~ некоторые из пакетов, если они установлены, теперь имеют обновленные версиичто нарушает существующие функциональные возможности.
Эта проблема должна быть исправлена, поскольку каждая новая установка любого разработчика или в процессе работы нарушает существующие функциональные возможности.

Кроме того, я не могу напрямую удалить ~ и ^ из версий.Причина в том, что package.json имеет 6.8.0, но он используется для установки 6.9.1 (как видно из package-lock.json).Таким образом, проект работает нормально с 6.9.1, но не с 6.8.0.Удаление ^ установит 6.8.0, что нарушает функциональность.Кроме того, новая установка с ^ устанавливает 7.0.0, что снова ломает мой проект.

Как решить проблему?
Мне кажется, что одним из решений является обновление версии в package.json путем ручного выбора из package-lock.json

IsЕсть ли лучший подход к проблеме?

Спасибо!

...