Принудительная версия транзитивной зависимости (dependency of dependency) с пряжей

Я использую пакет "csv-file-validator": "^1.8.0" который имеет 3 зависимости

 famulus "2.1.2"
 lodash "4.17.15"
 papaparse "^5.2.0"

Я хочу обновить / принудительно обновить версию lodash быть 4.17.20. Я узнал о выборочном разрешении зависимостей и сделал следующее в моем package.json

"resolutions": {
  "csv-file-validator/lodash": "^4.17.20"
}

Я удалил свой yarn.lock, то node_modules папку и запустил yarn installснова. Однако версия lodash по-прежнему 4.17.15

csv-file-validator@^1.8.0:
version "1.8.0"
resolved "https://pkgs.dev.azure.com/RCTechnologies/EMA/_packaging/EMA/npm/registry/csv-file-validator/-/csv-file-validator-1.8.0.tgz#f8b879f533ce8c84b115d0ed2eca8e691249ec22"
integrity sha1-+Lh59TPOjISxFdDtLsqOaRJJ7CI=
dependencies:
  famulus "2.1.2"
  lodash "4.17.15"
  papaparse "^5.2.0"

Возможно ли этого добиться? Если да, то я что-то упустил, и что?

1 ответ

yarn.lockвсегда будет показывать зависимости, объявленные в этой версииpackage.json. Вам нужно было проверитьlodashзапись вместо этого, которая должна выглядеть как

      lodash@4.17.15, lodash@^4.17.20, <maybe other version strings>:
version "4.17.20"
...

в то время как без этого разрешения вы получите

      lodash@4.17.15, <maybe other version strings>:
version "4.17.15"
...

Или используйтеyarn why lodash.

Другие вопросы по тегам