Объяснение Lockfile, что означает каждая строка?yarn.lock - PullRequest
0 голосов
/ 26 сентября 2019

Мне интересно, что именно означает каждая строка?У меня были некоторые проблемы с пакетами из-за зависимостей в моем проекте.

Во-первых, после обновления nuxt с 1x до 2x все тесты стали не пройдены.После нескольких часов копания в Интернете я заметил, что у меня есть 2 версии

chokidar dependencies

, которая имеет другую версию watchpack, поэтому я блокирую один пакет с помощью

resolutionsв моем файле пакета.

Это был watchpack ^2.0.0-beta.7 И все тесты начинают работать!

Но, к сожалению, режим разработчика перестал поддерживать горячую перезагрузку ... И начинает падать.

Так что япопытался заблокировать chokidar до версии "^3.0.2" и теперь все просто отлично!

Но я начинаю задумываться, как все работает в этом файле, потому что после блокировки этого chokidar все проблемы исчезли!

chokidar dependencies Что именно эта линия означает?Какой чокидар используется?Обе?Первый?Во-вторых?Или даже здесь

chalk dependencies

Некоторые зависят.зависимости, с 7 версиями!

1 Ответ

2 голосов
/ 26 сентября 2019

Насколько я понимаю (поправьте меня, если я ошибаюсь), в первой строке перечислены все зависимости, поэтому у вас есть, например, 7 пакетов, которые зависят от определенной версии мела.Во второй строке указана версия, которую «выбрала» Yarn для установки, она удовлетворяет вышеуказанным критериям.Пример: Chokidar находится на 3.1.1, потому что критерии указывают, что для одного пакета оно должно быть больше 2.0.2, а для другого - больше 3.0.2.Поскольку 3.1.1 удовлетворяет обоим, он используется.Если одним из критериев будет «точно 3.0.2», строки будут разделены, и обе версии будут включены в файл блокировки.

Третья строка - это URL-адрес пакета с хешем.Четвертый - это также хеш, используемый для проверки пакета при его загрузке при запуске yarn install.

Если Yarn не может найти одну версию, которая удовлетворяет всем зависимостям, он разделит записи на группы, иполучите версию, соответствующую критериям каждой группы.

Итак, что касается вашего второго вопроса: он использует только одну версию Chokidar: 3.1.1

Общее объяснение см. https://yarnpkg.com/lang/en/docs/yarn-lock/

...