Cli: [BUG] atualização npm - dependências de quebra de profundidade

Criado em 17 dez. 2019  ·  4Comentários  ·  Fonte: npm/cli

O que? Por que

O NPM relata dependência não atendida após realizar uma atualização recursiva / profunda

Quando


Onde



  • n / D

Como

Comportamento Atual

Passos para reproduzir

  1. Crie uma pasta localmente e execute npm init
  2. Instale um pacote com mais de um nível de dependências, por exemplo, npm i -D @semantic-release/exec
  3. Espere por uma de suas dependências profundas para obter uma versão mais recente
  4. Execute npm --depth 9999 update

Comportamento esperado

  • Não deve haver dependências não atendidas. As atualizações são realizadas de acordo com o arquivo package.json de seu pai ou qualquer npm-shrinkwrap.json de seu ancestral.
  • Em outras palavras, ele deve agir como se não houvesse package-lock.json e prosseguir para resolver todas as dependências, instalar / atualizar / remover conforme necessário e, em seguida, atualizar o arquivo de bloqueio com a árvore resolvida.

Quem



  • n / D

Referências



  • n / D

Bug

Comentários muito úteis

Parece que preparei um problema duplicado

O que? Por que

O comando npm update --depth <number> perde dev: true para dependências devDependencies atualizadas.

Quando

  • Sempre que eu uso npm update --depth <number> para pacotes com dependências devDependencies não atualizadas

Onde

  • registro público npm

Como

Comportamento Atual

Ele perde dev: true para dependências devDependencies atualizadas

Passos para reproduzir

  1. Faça este repositório https://github.com/pahan35/npm-bugs
  2. Filial do checkout loses-dev-for-dev-deps
  3. Execute npm i
  4. Execute npm update --depth 7

Comportamento esperado

Espero que esta ação mantenha dev: true para dependências devDependencies atualizadas

Referências

Possivelmente relacionado a # 944

Todos 4 comentários

Parece que preparei um problema duplicado

O que? Por que

O comando npm update --depth <number> perde dev: true para dependências devDependencies atualizadas.

Quando

  • Sempre que eu uso npm update --depth <number> para pacotes com dependências devDependencies não atualizadas

Onde

  • registro público npm

Como

Comportamento Atual

Ele perde dev: true para dependências devDependencies atualizadas

Passos para reproduzir

  1. Faça este repositório https://github.com/pahan35/npm-bugs
  2. Filial do checkout loses-dev-for-dev-deps
  3. Execute npm i
  4. Execute npm update --depth 7

Comportamento esperado

Espero que esta ação mantenha dev: true para dependências devDependencies atualizadas

Referências

Possivelmente relacionado a # 944

Também estou percebendo que npm update esquece o sinalizador dev para as dependências quando --depth é maior que 0. Talvez não seja necessário para uma profundidade menor?

Eu descobri que o sinalizador dev é restaurado após reinstalar os módulos do nó ( rm -rf node_modules; npm install )

Eu vejo o mesmo problema de perder o sinalizador dev após usar npm update --depth mas apenas para dependências de desenvolvimento do meu projeto que são dependências reais em uma outra dependência.

No meu caso, uma outra dependência adiciona "@ types / node" como dependência, mas no meu projeto tem como dependência dev:

package.json de dependência "a":

{
  name: "a",
  dependencies: {
    "@types/node": ">=5.10"
  }
}

meu projeto:

{
  dependencies: {
    "a": "1.0.0"
  },

  devDependencies: {
    "@types/node": "^12.0.0",
    "somethingElse": "1.0.0"
  }
}

depois de npm update --depth=99 o sinalizador dev está ok para somethingElse mas está errado para @type/node

editar: npm install parece armazenar a dependência @types/node como dev na raiz + como dependência no node_module aninhado no componente "a".
npm update instala apenas uma vez como dependência na raiz

Esta página foi útil?
0 / 5 - 0 avaliações