Yarn: Yarn global не обнаруживает лицензию в package.json

Созданный на 4 июл. 2017  ·  21Комментарии  ·  Источник: yarnpkg/yarn

Вы хотите запросить функцию или сообщить об ошибке ?
Ошибка

Каково текущее поведение?
Установка глобальных пакетов не всегда определяет лицензионное поле.

Если текущее поведение является ошибкой, предоставьте шаги для воспроизведения.

yarn global add xo
➜  agenda git:(feature/update_dev_deps) ✗ yarn global add xo          
yarn global v0.27.5
warning package.json: No license field
warning No license field
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Installed "[email protected]" with binaries:
      - xo
warning No license field
Done in 47.10s.
➜  agenda git:(feature/update_dev_deps) ✗ which xo
/usr/local/bin/xo
➜  agenda git:(feature/update_dev_deps) ✗ realpath /usr/local/bin/xo
/Users/xo/.config/yarn/global/node_modules/xo/cli.js
➜  agenda git:(feature/update_dev_deps) ✗ cat /Users/xo/.config/yarn/global/node_modules/xo/package.json | grep license
  "license": "MIT",

Какое поведение ожидается?
Для его установки без предупреждения об отсутствии лицензии.

Пожалуйста, укажите ваш node.js, yarn и версию операционной системы.
Узел: v8.1.3
Пряжа: 0,27,5
ОС: macOS Sierra 10.12.3 (16D32)

cat-bug good first issue triaged

Самый полезный комментарий

@ tony-kerz Я получил это предупреждение, когда в моем корневом каталоге Projects находился package.json (например, Projects/my-package ). Я должен был случайно запустить yarn в этом каталоге один раз, но удаление этого файла привело к исчезновению предупреждений

Все 21 Комментарий

Я попытался отладить это, и кажется, что yarn жалуется не на лицензию на пакет xo , а на лицензию на пользовательский файл package.json . Когда используется yarn global , yarn сохраняет package.json со всеми пакетами, которые пользователь установил глобально, перечисленными как зависимости. Прямо сейчас мой выглядит примерно так:

{
  "dependencies": {
    "create-react-app": "^1.3.1",
    "typescript": "^2.3.2",
    "xo": "^0.18.2"
  }
}

Эти 3 пакета - единственные, которые я установил в своей системе глобально. Как видите, у этого файла нет лицензии, даже имени, поэтому выдается предупреждение. Возможно, функция validate в normalize-manifest может получить дополнительный параметр, чтобы пропустить эту проверку при запуске yarn global .

Возможно, функция проверки в normalize-manifest может получить дополнительный параметр, чтобы пропустить эту проверку при запуске yarn global.

@bestander @arcanis Я думаю, это правильный путь. Что вы думаете?

@BYK @kaylieEB Похоже, это можно закрыть а-ля # 3921

Спасибо @olingern !

Это все еще происходит, хотя v1.2.1

странно, я получаю:

yarn install v1.2.1
warning ../package.json: No license field

но в package.json :

  "license": "MIT",

@ tony-kerz Я получил это предупреждение, когда в моем корневом каталоге Projects находился package.json (например, Projects/my-package ). Я должен был случайно запустить yarn в этом каталоге один раз, но удаление этого файла привело к исчезновению предупреждений

@chrisdothtml , спасибо , чувак!

Мне нужно сохранить package.json в корне моего приложения для реагирования.

Как отключить это предупреждение в этом случае?

@realtebo Если вы не собираетесь публиковать его как пакет, вы можете просто установить "private": true . Это должно отключить предупреждение

Спасибо, @chrisdothtml . Я это уже сделал, но ничего не меняется.

@realtebo Когда у вас есть package.json или yarn.lock в корне вашей системы, просто cd ~ , тогда вы можете найти package.json & yarn.lock . Вы должны удалить эти файлы, чтобы предупреждения исчезли.

@iTonyYo : Я больше не

Но мне понравился ваш ответ, и я вставил ссылку в свою личную панель управления, в будущем я найду ее как первый результат, прежде чем система перейдет в Google для поиска.

Проблема закрыта, но проблема не устранена. Почему yarn ищет структуру каталогов, если уже нашел файл package.json в текущем каталоге? Довольно часто проекты существуют внутри других проектов в состоянии разработки, особенно с использованием gitmodules.

Почему yarn ищет структуру каталогов, если уже нашел файл package.json в текущем каталоге?

Описанная ранее проблема заключалась в том, что в текущем каталоге iirc не было package.json. Возможно, вы захотите открыть новый выпуск (пожалуйста, с точными инструкциями по воспроизведению).

@chrisdothtml packagge.json не следует удалять из вашего проекта, потому что, когда вы работаете с системой подрывной деятельности, пользователь, который будет клонировать ваш репозиторий, не сможет установить зависимости.

Биллал Бегерадж

@ tony-kerz Я получил это предупреждение, когда в моем корневом каталоге Projects находился package.json (например, Projects/my-package ). Я должен был случайно запустить yarn в этом каталоге один раз, но удаление этого файла привело к исчезновению предупреждений

Это сработало отлично, я возился с установкой / переустановкой другого узла и забыл, что не убирал за собой.

@ tony-kerz Я получил это предупреждение, когда в моем корневом каталоге Projects находился package.json (например, Projects/my-package ). Я должен был случайно запустить yarn в этом каталоге один раз, но удаление этого файла привело к исчезновению предупреждений

просто дополнительная информация, я удалил package.json и yarn.lock из родительских каталогов, каталоги не были проектами, не знаю, как они там появляются)))

Я столкнулся с такой же проблемой, т.е.
$ пряжа babel
пряжа run v1.21.1

Как мне преодолеть это?

PS C:\Users\admin\Desktop\aulinhas\chat-react> create-react-app front

Creating a new React app in C:\Users\admin\Desktop\aulinhas\chat-react\front.

warning ..\..\..\..\package.json: No license field
Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts with cra-template...

yarn add v1.22.4
warning ..\..\..\..\package.json: No license field 

...

:(

@iTonyYo Спасибо, работает.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги