RPM 4.16 bietet Verbesserungen bei DBs, Operatoren, Makros und mehr

Nach einem Jahr der Entwicklung, schließlich der Start von die stabile Version des Paketmanagers "RPM 4.16", in welchem Es wurden einige Verbesserungen vorgenommen über die Operatoren, neue Backends und andere Änderungen.

Das RPM4-Projekt wird von Red Hat entwickelt und wird in Distributionen wie RHEL (einschließlich solcher, die von CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux abgeleitet sind), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen und vielen anderen verwendet.

Zuvor hat ein unabhängiges Entwicklungsteam das RPM5-Projekt entwickelt, das nicht direkt mit RPM4 zusammenhängt und derzeit aufgegeben wird (seit 2010 nicht mehr aktualisiert). Der Projektcode wird unter den GPLv2-Lizenzen verteilt

Wichtige neue Funktionen von RPM 4.16

In dieser neuen veröffentlichten Version des RPM 4.16-Paketmanagers wurde ein neues Backend implementiert, um Datenbanken in SQLite DBMS zu speichern. Mit diesem Backend ist geplant, dass die Fedora 33-Version dies anstelle des BerkeleyDB-basierten Backends verwendet.

Eine weitere Änderung, die implementiert wurde, ist die neues experimentelles schreibgeschütztes Backend für die Datenbankspeicherung bei BDB (Oracle Berkeley DB). Die Implementierung wurde von Grund auf neu geschrieben und verwendet nicht den BerkeleyDB-Legacy-Backend-Code, der veraltet ist, aber standardmäßig noch enthalten ist.

Seitens der Makros und Ausdrücke "% If" -Unterstützung für den Tenary Operator wurde hinzugefügt (% {expr: 1 == 0? »yes»: »no»}) und bieten einen integrierten Versionsvergleich ('% [v »3: 1.2-1 ″> v» 2.0 ″]') und neue Es wurden die Makros% arm32,% arm64 und% riscv hinzugefügt, um die Architektur zu definieren, und zusammen mit ihnen das integrierte Makro% {macrobody:…}, um Makroinhalte zu erhalten.

Darüber hinaus Eine neue Version der Analyse- und Vergleichs-API wurde vorgeschlagen für C- und Python-Sprachen.

Brp-Strip-Ausführungsparallelisierung bereitgestellt und die Komponenten der Testsuite. Die Optimierung der Parallelisierung des Paketerzeugungsprozesses wurde durchgeführt.

Außerdem wurde dem Dienstprogramm rpmdb die Option "–salvagedb" hinzugefügt, um eine beschädigte Datenbank wiederherzustellen (funktioniert nur mit dem NDB-Backend).

Es ist verboten, Wörter zu verwenden, die in Ausdrücken nicht durch Anführungszeichen getrennt sind, z. ZB anstelle von 'a == b' müssen Sie jetzt '»a» == »b»' schreiben.

Der Ausdrucksparser implementiert die Syntax "% […]", um einen Ausdruck mit Makroerweiterung auszuführen (unterscheidet sich von "% {expr: ...}" darin, dass Makros zuerst ausgeführt werden).

Wurde hinzugefügt Unterstützung für die kurze Erweiterung von logischen Operatoren und Tenaries in Ausdrücken ("% [0 && 1/0]" wird als 0 behandelt und führt nicht zu einem Fehler aufgrund eines Versuchs, durch Null zu teilen).

Hinzugefügt Unterstützung für die Verwendung des logischen NOT-Operators in beliebigen Kontexten (! "%? Foo").

Das Verhalten der Operatoren "||" und "&&" ist Perl / Python / Ruby-ausgerichtet, dh anstatt einen Booleschen Wert zurückzugeben, wird jetzt der zuletzt berechnete Wert zurückgegeben (z. B. "% [2 || 3]" gibt 2 zurück).

Der andere Änderungen, die auffallen dieser neuen Version von RPM 4.16:

  • Es wurde die Möglichkeit hinzugefügt, alternative Formate für digitale Signaturen und Hashes zu überprüfen.
  • Unterstützung für Meta-Abhängigkeiten (Requires (Meta): somepkg) hinzugefügt, die die Reihenfolge der Installation und Entfernung nicht beeinflussen.
  • Option "–rpmv3" zu rpmsign hinzugefügt, um digitale RPM3-Signaturen zu erzwingen.
  • Es wurde eine Installationsoption "–excludeartifacts" hinzugefügt, um die Installation von Dokumentation, Beispielkonfigurationsdateien und anderen zugehörigen Daten zu überspringen.
  • Veraltete Unterstützung für RPMv3 und die Verschlüsselung von kryptografischen Backends und NSS.
  • Unterstützung für DSA2 (gcrypt) und EdDSA hinzugefügt.
  • LMDB-basierte experimentelle Backend-Datenbank entfernt.
  • Stabile, deklarierte Backend-Datenbank basierend auf NDB-Speicher.
  • Es wurde Unterstützung für die Klassifizierung von Dateien nach ihren MIME-Inhaltstypen implementiert.
  • Es wurde die Möglichkeit hinzugefügt, Abhängigkeiten mithilfe parametrischer Makros zu generieren.

Schließlich wenn Sie mehr darüber wissen wollen, Sie können das vollständige Änderungsprotokoll überprüfen im folgenden Link.

Bei der Implementierung der neuen Version müssen Sie warten, bis sie in den offiziellen Kanälen Ihrer Distribution platziert wird. Wenn Sie ein Enthusiast sind, können Sie das Paket zusammenstellen. Der Link von Download ist das.


Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: AB Internet Networks 2008 SL
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.