Principais mudanças do pnpm 11
- Requer Node.js 22+: agora é obrigatório usar Node.js versão 22 ou superior. O suporte às versões 18, 19, 20 e 21 do Node foi encerrado. No caso do arquivo standalone, é necessário glibc 2.27 ou superior.
- Proteção da cadeia de suprimentos ativada por padrão: para reforçar a segurança, o valor padrão de
minimumReleaseAge passa a ser 1440 (1 dia). (Pacotes recém-publicados só podem ser instalados após 24 horas.) Além disso, blockExoticSubdeps passa a ser true por padrão.
- Introdução de
allowBuilds: todas as configurações complexas relacionadas a build que existiam antes (onlyBuiltDependencies, onlyBuiltDependenciesFile, neverBuiltDependencies, ignoredBuiltDependencies, ignoreDepScripts) foram removidas e passam a ser gerenciadas de forma unificada por allowBuilds.
- Isolamento de instalações globais: ao instalar com
pnpm add -g, cada pacote é instalado em um diretório independente com seu próprio package.json, node_modules e lockfile. Isso evita conflitos de dependência entre pacotes globais.
- Índice do store baseado em SQLite (Store v11): o SQLite foi adotado no gerenciamento de índice para reduzir syscalls e melhorar drasticamente a velocidade de instalação.
- Fluxo nativo de publish: os comandos
pnpm publish, login, logout, view, deprecate, unpublish, dist-tag e version não dependem mais da CLI do npm e passam a funcionar nativamente no pnpm.
- Limitação do papel do
.npmrc: agora o .npmrc é usado apenas para autenticação (auth) e configurações de registry. Todas as outras configurações devem ser movidas para pnpm-workspace.yaml ou para o novo config.yaml global, e o prefixo das variáveis de ambiente passa a ser pnpm_config_*.
Ainda não há comentários.