Você quer solicitar um recurso ou relatar um bug ?
Erro
Qual é o comportamento atual?
A instalação de pacotes globais nem sempre detecta o campo de licença.
Se o comportamento atual for um bug, forneça as etapas para reproduzir.
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",
Qual é o comportamento esperado?
Para instalar sem um aviso sobre licença ausente.
Mencione seu node.js, yarn e versão do sistema operacional.
Nó: v8.1.3
Fio: 0,27,5
SO: macOS Sierra 10.12.3 (16D32)
Tentei depurar isso, e parece que o que o Yarn está reclamando não é a licença do pacote xo
, mas a licença do arquivo package.json
do usuário. Quando yarn global
é usado, o yarn mantém um package.json
com todos os pacotes que o usuário instalou globalmente listados como dependências. No momento, o meu é mais ou menos assim:
{
"dependencies": {
"create-react-app": "^1.3.1",
"typescript": "^2.3.2",
"xo": "^0.18.2"
}
}
Esses 3 são os únicos pacotes que instalei globalmente em meu sistema. Como você pode ver, este arquivo não tem licença, nem mesmo um nome, por isso é lançado um aviso. Talvez a função validate
em normalize-manifest
pudesse receber um parâmetro extra para pular esta verificação ao executar yarn global
.
Talvez a função validate em normalize-manifest possa receber um parâmetro extra para pular essa verificação ao executar yarn global.
@bestander @arcanis Acho que esse é o caminho a percorrer. O que você acha?
@BYK @kaylieEB Parece que isso pode ser fechado a la # 3921
Obrigado @olingern !
Isso ainda está acontecendo, embora v1.2.1
estranho, estou conseguindo:
yarn install v1.2.1
warning ../package.json: No license field
mas em package.json
:
"license": "MIT",
@ tony-kerz Eu estava recebendo este aviso quando tinha um package.json
no meu diretório raiz Projects
(por exemplo, Projects/my-package
). Devo ter executado acidentalmente yarn
naquele diretório uma vez, mas excluir esse arquivo fez com que os avisos desaparecessem
@chrisdothtml era totalmente isso, cara!
Preciso manter o package.json na raiz do meu aplicativo react-native.
Como desligar este aviso neste caso?
@realtebo Se você não pretende publicá-lo como um pacote, basta definir "private": true
. Isso deve desativar o aviso
Obrigado, @chrisdothtml . Já fiz isso, mas nada muda.
@realtebo Quando você tem um package.json
ou yarn.lock
na raiz do sistema, apenas cd ~
, então você pode encontrar package.json
& yarn.lock
. Você deve excluir esses arquivos para que os avisos desapareçam.
@iTonyYo : Não estou mais na situação que relatei há alguns meses, então não posso tentar nada.
Mas gostei da sua resposta e colei o link no meu painel pessoal, no futuro vou encontrá-lo como primeiro resultado antes que o sistema vá para o google para pesquisar.
Este problema foi resolvido, mas o problema não foi corrigido. Por que o yarn está procurando a estrutura do diretório quando já encontrou o arquivo package.json no diretório atual? É bastante comum que projetos existam dentro de outros projetos enquanto em estado de desenvolvimento, especialmente usando gitmodules.
Por que o yarn está procurando a estrutura do diretório quando já encontrou o arquivo package.json no diretório atual?
O problema descrito anteriormente era que não havia package.json no diretório atual iirc. Você pode querer abrir um novo problema (com etapas de reprodução precisas, por favor).
@chrisdothtml packagge.json
não deve ser removido de seu projeto porque quando você trabalha com um sistema subversion, o usuário que irá clonar seu repositório não será capaz de instalar as dependências.
Billal Begueradj
@ tony-kerz Eu estava recebendo este aviso quando tinha um
package.json
no meu diretório raizProjects
(por exemplo,Projects/my-package
). Devo ter executado acidentalmenteyarn
naquele diretório uma vez, mas excluir esse arquivo fez com que os avisos desaparecessem
Isso funcionou perfeitamente, eu estava mexendo em instalar / reinstalar o nó do outro e esqueci que não limpei depois de mim.
@ tony-kerz Eu estava recebendo este aviso quando tinha um
package.json
no meu diretório raizProjects
(por exemplo,Projects/my-package
). Devo ter executado acidentalmenteyarn
naquele diretório uma vez, mas excluir esse arquivo fez com que os avisos desaparecessem
apenas informações adicionais, removi package.json e yarn.lock dos diretórios pais também, diretórios não eram projetos, não sei como eles aparecem lá)))
Eu enfrentei o mesmo problema, ou seja
$ yarn babel
yarn run v1.21.1
Como eu supero isso?
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 Obrigado, funciona.
Comentários muito úteis
@ tony-kerz Eu estava recebendo este aviso quando tinha um
package.json
no meu diretório raizProjects
(por exemplo,Projects/my-package
). Devo ter executado acidentalmenteyarn
naquele diretório uma vez, mas excluir esse arquivo fez com que os avisos desaparecessem