Après un an de développement, la version 4.17.0 du gestionnaire de paquets RPM a été publiée. Le projet RPM4 est développé par la société Red Hat et est utilisé dans des distributions telles que RHEL (y compris des projets dérivés comme CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen et bien d'autres. Auparavant, un groupe de développeurs indépendants travaillait sur le projet RPM5, qui n'est pas directement lié à RPM4 et est actuellement abandonné (il n'a pas été mis à jour depuis 2010). Le code du projet est distribué sous les licences GPLv2 et LGPLv2.
Les améliorations les plus notables dans RPM 4.17 :
- Amélioration de la gestion des échecs lors de l'installation.
- Amélioration de l'interface pour créer des macros en langage Lua.
- Ajout de la macro intégrée %{exist:…} pour vérifier la présence d'un fichier.
- Les capacités de l'API pour la gestion des transactions ont été étendues.
- Unification de la syntaxe des macros intégrées et personnalisées, ainsi que du format de leur appel (%foo arg, %{foo arg} et %{foo:arg} sont désormais équivalents).
- Dans le buildroot, une règle par défaut pour la suppression des fichiers «.la» a été appliquée et une règle a été ajoutée pour nettoyer le bit exécutable pour les fichiers des bibliothèques partagées.
- Ajout d'un plugin dbus-announce pour informer des transactions RPM via D-Bus.
- Ajout d'un plugin fapolicyd pour définir des politiques d'accès aux fichiers.
- Ajout d'un plugin fs-verity pour authentifier des fichiers individuels en utilisant le mécanisme fs-verity intégré dans le noyau.
- Les pages du manuel ont été converties au format Markdown.
- Présentation d'une version préliminaire du guide sur la gestion des paquets et la création de paquets.
- Le backend DBD destiné au stockage des données dans Berkeley DB a été supprimé (pour assurer la compatibilité avec les anciens systèmes, le backend BDB_RO en mode lecture seule a été conservé). SQLite est utilisé comme base de données par défaut.
- Ajout du support des signatures numériques EdDSA.
- Les utilitaires pour extraire les Debuginfo ont été regroupés dans un projet distinct.
- Les gestionnaires auxiliaires et les générateurs de paquets en langage Python ont été regroupés dans un projet distinct.
- Nettoyage des scripts qui n'ont plus de support.
- Suppression des backends cryptographiques beecrypt et NSS.
Source : opennet.ru
