lançamento do gerenciador de pacotes , que faz parte da distribuição do Node.js e é utilizado para distribuir módulos na linguagem JavaScript. O repositório NPM atende a mais de 1,3 milhões de pacotes, utilizados por cerca de 12 milhões de desenvolvedores. Aproximadamente 75 bilhões de downloads são registrados a cada mês. O NPM 7.0 foi o primeiro lançamento significativo formulado após da NPM Inc pela GitHub. A nova versão será incluída na próxima distribuição da plataforma , que está prevista para 20 de outubro. Para instalar o NPM 7.0, sem esperar pela nova versão do Node.js, você pode executar o comando "npm i -g npm@7".
:
- Áreas de trabalho (), que permitem agregar em um único pacote as dependências de vários pacotes para a instalação em um único passo.
- Instalação automática (usadas em plugins para determinar os pacotes base com os quais o pacote atual é compatível, mesmo que não seja utilizado diretamente nele). As peer-dependencies são especificadas no arquivo package.json na seção "peerDependencies". Anteriormente, essas dependências eram instaladas manualmente pelos desenvolvedores, mas no NPM 7.0 foi implementado um algoritmo que garante que uma peer-dependência corretamente definida seja encontrada em um nível ou acima do pacote dependente na árvore node_modules.
- A segunda versão do formato de bloqueio (package-lock v2) e suporte ao arquivo de bloqueio yarn.lock. O novo formato permite a realização de compilações repetíveis e inclui tudo o que é necessário para a construção completa da árvore de pacotes. O NPM também pode usar os arquivos yarn.lock como fonte de metadados de pacote e informações sobre bloqueios.
- Uma reformulação significativa dos componentes internos foi realizada, visando separar funcionalidades para facilitar 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 separado .
- Foi feita a transição para o uso do campo package.exports, que torna impossível a conexão de módulos internos através do chamado require().
- O pacote , que agora utiliza o comando "npm exec" para executar arquivos executáveis de pacotes.
- A saída do comando "npm audit" foi significativamente alterada, tanto na saída em formato legível quanto na seleção do modo "--json".
Fonte: opennet.ru
