RPM 4.16 vem com melhorias em bancos de dados, operadores, macros e muito mais

Após um ano de desenvolvimento, finalmente o lançamento de a versão estável do gerenciador de pacotes "RPM 4.16", em que algumas melhorias foram feitas sobre os operadores, novos back-ends e outras mudanças.

O projeto RPM4 é desenvolvido pela Red Hat e é usado em distribuições como RHEL (incluindo aquelas derivadas de CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen e muitos outros.

Anteriormente, uma equipe de desenvolvimento independente desenvolveu o 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

Principais novos recursos do RPM 4.16

Nesta nova versão lançada do gerenciador de pacotes RPM 4.16, um novo backend foi implementado para armazenar bancos de dados em SQLite DBMS, com este backend está planejado que a versão Fedora 33 faça uso deste em vez do backend baseado em BerkeleyDB.

Outra mudança que foi implementada é a novo back-end experimental somente leitura para armazenamento de banco de dados no BDB (Oracle Berkeley DB). A implementação foi escrita do zero e não usa o código de backend legado do BerkeleyDB, que está obsoleto, mas ainda está incluído por padrão.

Por parte de macros e expressões Suporte "% If" para o operador tenário foi adicionado (% {expr: 1 == 0? »sim»: »não»}) e oferece uma comparação de versão integrada ('% [v »3: 1.2-1 ″> v» 2.0 ″]') e novas foram adicionadas as macros% arm32,% arm64 e% riscv para definir a arquitetura e também junto com elas a macro% {macrobody:…} para obter o conteúdo da macro.

Além disso, uma nova versão da API de análise e comparação foi proposta para linguagens C e Python.

Paralelização de execução Brp-strip fornecida e os componentes do conjunto de testes. Foi realizada a otimização da paralelização do processo de geração de pacotes.

Também foi adicionada a opção "–salvagedb" ao utilitário rpmdb para restaurar o banco de dados corrompido (funciona apenas com backend NDB).

É proibido usar palavras que não estejam separadas por aspas nas expressões, por exemplo. Por exemplo, em vez de 'a == b' agora você precisa escrever '»a» == »b»'.

O analisador de expressão implementa a sintaxe "% […]" para executar uma expressão com expansão de macro (difere de "% {expr: ...}" em que as macros são executadas primeiro).

Foi adicionado suporte para expansão curta de operadores lógicos e locatários em expressões ("% [0 && 1/0]" é tratado como 0 e não resulta em erro devido a uma tentativa de divisão por zero).

Adicionado suporte para usar o operador lógico NOT em contextos arbitrários (! "%? Foo").

O comportamento dos operadores "||" e "&&" está alinhado com Perl / Python / Ruby, ou seja, em vez de retornar um valor booleano, agora retorna o último valor calculado (por exemplo, "% [2 || 3]" retornará 2).

Do outras mudanças que se destacam desta nova versão do RPM 4.16:

  • Adicionada a capacidade de verificar formatos alternativos para assinaturas digitais e hashes.
  • Adicionado suporte para meta-dependências (Requer (meta): somepkg), que não afetam a ordem de instalação e remoção.
  • Adicionada a opção "–rpmv3" ao rpmsign para impor assinaturas digitais RPM3.
  • Adicionada uma opção de instalação "–excludeartifacts" para ignorar a instalação da documentação, arquivos de configuração de amostra e outros dados relacionados.
  • Suporte obsoleto para RPMv3 e back-ends criptográficos beecrypt e NSS.
  • Adicionado suporte para DSA2 (gcrypt) e EdDSA.
  • Banco de dados de back-end experimental baseado em LMDB removido.
  • Banco de dados de back-end declarado e estável com base no armazenamento NDB.
  • O suporte foi implementado para classificar arquivos de acordo com seus tipos de conteúdo MIME.
  • Adicionada a capacidade de gerar dependências usando macros paramétricas.

Finalmente se você quiser saber mais sobre isso, você pode verificar o changelog completo no link a seguir.

Quanto à implementação da nova versão, você tem que esperar que ela seja colocada nos canais oficiais de sua distribuição ou se você for um entusiasta pode compilar o pacote. O link de download é isso.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.