Lançamento do gerenciador de pacotes RPM 4.16

Após um ano de desenvolvimento ocorreu o lançamento do gerenciador de pacotes RPM 4.16.0. O projeto RPM4 é desenvolvido pela Red Hat e utilizado em distribuições como RHEL (incluindo os projetos derivados CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen e muitas outras. Anteriormente, era desenvolvido por uma equipe independente de desenvolvedores desenvolveu-se projeto RPM5, que não está diretamente relacionado ao RPM4 e atualmente está abandonado (não atualizado desde 2010). O código do projeto é distribuído sob as licenças GPLv2 e LGPLv2.

As melhorias mais notáveis são no RPM 4.16:

  • Implementado um novo backend para armazenamento de banco de dados no SGBD SQLite. Este backend será usado no Fedora Linux 33 em vez do backend baseado no BerkeleyDB.
  • Foi implementado um novo backend experimental para armazenamento de banco de dados no BDB (Oracle Berkeley DB), funcionando em modo somente leitura. A implementação foi escrita do zero e não usa o código do antigo backend BerkeleyDB, que foi declarado obsoleto, mas ainda é incluído por padrão.
  • O backend experimental de banco de dados baseado em LMDB foi removido.
  • O backend de banco de dados baseado em armazenamento NDB foi declarado estável.
  • Nos macros e expressões "%if" foi adicionada a suporte ao operador ternário (%{expr:1==0?»sim»:»não»}) e foi sugerida uma funcionalidade embutida de comparação de versões (‘%[v»3:1.2-1″ > v»2.0″]’).
  • Implementada a suporte à classificação de arquivos com base nos tipos MIME de seu conteúdo.
  • Adicionada a capacidade de geração de dependências utilizando macros paramétricos.
  • Uma nova versão da API de parsing e comparação para as linguagens C e Python foi proposta.
  • Implementada a paralelização da execução do brp-strip e componentes do conjunto de testes. Feita a otimização da paralelização do processo de geração de pacotes.
  • No utilitário rpmdb foi adicionada a opção "—salvagedb" para recuperação de banco de dados corrompido (funciona apenas com o backend NDB).
  • Novos macros %arm32, %arm64 e %riscv foram adicionados para definição da arquitetura. Também foi adicionado um macro embutido %{macrobody:…} para obtenção do conteúdo dos macros.
  • Nos expressões foi proibido o uso de palavras não destacadas entre aspas, ou seja, em vez de 'a == b' deve-se escrever '«a» == «b»'.
  • No parser de expressões foi implementada a sintaxe "%[…]" para execução de expressões com expansão de macros (diferente de "%{expr:…}", onde os macros são executados primeiro).
  • Foi adicionada a suporte para a expansão curta de expressões lógicas e ternárias ("%[0 && 1 / 0]" é tratado como 0 e não resulta em um erro por tentativa de divisão por zero).
  • Foi adicionada a suporte para o operador lógico NOT em contextos arbitrários (!"%?foo").
  • O comportamento dos operadores "||" e "&&" foi alinhado com Perl/Python/Ruby, ou seja, ao invés de retornar um valor booleano, agora retorna o último valor computado (por exemplo, "%[2 || 3]" retornará 2).
  • Foi adicionada a possibilidade de verificar formatos alternativos de assinaturas digitais e hashes.
  • Foi adicionada a suporte para meta-dependências (Requires(meta): somepkg), que não afetam a ordem de instalação e remoção.
  • Foi adicionada a opção "--rpmv3" ao rpmsign para forçar o uso de assinaturas digitais no formato RPM3.
  • Foi adicionada a opção de instalação "--excludeartifacts" para pular a instalação de documentação, exemplos de arquivos de configuração e outros dados auxiliares.
  • O suporte para RPMv3 e criptobackends beecrypt e NSS foi declarado obsoleto.
  • Foi adicionada a suporte para DSA2 (gcrypt) e EdDSA.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster