Recentemente foi anunciado o lançamento da nova versão do gerenciador de pacotes NPM 7.0 , incluída na distribuição do Node.js e usada para distribuir módulos JavaScript.
Esta nova versão do NPM 7.0 vem com Workspaces (um conjunto de recursos na CLI do npm), que oferece suporte ao gerenciamento de vários pacotes, permitindo a instalação de diversos pacotes em uma única etapa.
Feliz lançamento de terça-feira! Hoje marca um grande marco para a equipe do npm CLI: lançamos oficialmente [email protected] Se você nos acompanha há pelo menos um ano, sabe que trabalhamos muito para trazer este lançamento até você.
A instalação automática de dependências entre pares também está disponível (usada em plugins para determinar os pacotes base com os quais o pacote atual foi projetado para funcionar, mesmo que não seja usado diretamente nele).
Dependências de pares adequadas para pacotes agora são encontradas automaticamente, já que os desenvolvedores anteriores tinham que instalá-los manualmente.
As dependências de mesmo nível são especificadas no arquivo package.json, na seção "peerDependencies". O NPM 7.0 implementa um algoritmo para garantir que uma dependência de mesmo nível devidamente definida seja encontrada no nível do pacote dependente ou em um nível superior na árvore node_modules.
Nosso foco e determinação ultrapassaram os últimos 3 meses conforme pegamos uma cadência de lançamento semanal e começamos a resolver bugs / comentários durante nossas janelas beta / rc.
Como mencionei antes, ainda temos muito espaço para melhorias, mas achamos que o cli está em um lugar muito estável hoje e está pronto para uso. O npm v7 será fornecido com o Node.js v15 (um PR para realizar este trabalho será aberto em breve) e esperamos continuar o ritmo de mudança / melhoria conforme nos aproximamos deste último trimestre do ano.
Além disso, são apresentadas a segunda versão do formato de bloqueio (package-lock v2) e o suporte para o arquivo de bloqueio yarn.lock.
O formato de bloqueio de pacotes foi revisado para conter aparentemente tudo o que o npm precisa para criar totalmente a árvore de pacotes. Até agora, os arquivos yarn.lock foram aparentemente ignorados, desde o V7, o cliente npm também pode ler metadados do pacote e informações de resolução deles.
O novo formato permite compilações repetíveis e inclui tudo o que é necessário para construir uma árvore de pacotes completa.
Além disso, é mencionado que, apesar da grande revisão interna do npm, a equipe trabalhou incansavelmente para garantir que houvesse interrupções mínimas na maioria dos fluxos de trabalho.
Foi realizada uma grande reformulação dos componentes internos , com o objetivo de separar as funcionalidades para simplificar a manutenção e aumentar a confiabilidade.
Por exemplo, o código para inspecionar e gerenciar a árvore node_modules foi movido para um módulo Arborist separado.
Transição para usar o campo package.exports, o que torna impossível conectar módulos internos por meio da chamada require ().
Pacote npx completamente reescrito, que agora usa o comando "npm exec" para executar executáveis de pacotes.
A saída do comando "npm audit" mudou significativamente, tanto quando gerado em formato legível por humanos quanto quando o modo "–json" é selecionado.
Descarregar
A nova versão agora está disponível para o público em geral e você pode atualizar rapidamente a versão anterior ou instalar esta nova versão completamente.
Finalmente, é importante saber que o repositório NPM atende a mais de 1,3 milhão de pacotes, que são usados por cerca de 12 milhões de desenvolvedores. Cerca de 75 bilhões de downloads são registrados por mês. O NPM 7.0 foi o primeiro lançamento significativo formado após a compra da NPM Inc pelo GitHub.
A nova versão será distribuída com uma futura versão do Node.js, a versão 15, prevista para 20 de outubro. Para instalar o NPM 7.0 sem esperar por uma nova versão do Node.js, você pode executar o seguinte comando no seu terminal:
npm i -g npm@7
Se você quiser saber mais sobre a nova versão lançada, pode conferir os detalhes no anúncio oficial.