Po roku prac nad rozwojem wydano menedżer pakietów RPM 4.17.0. Projekt RPM4 jest rozwijany przez firmę Red Hat i jest wykorzystywany w takich dystrybucjach jak RHEL (w tym projekty pochodne CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen i wielu innych. Wcześniej niezależny zespół programistów rozwijał projekt RPM5, który nie jest bezpośrednio związany z RPM4 i obecnie jest porzucony (nie był aktualizowany od 2010 roku). Kod projektu jest rozprowadzany na zasadach licencji GPLv2 i LGPLv2.
Najbardziej zauważalne ulepszenia w RPM 4.17:
- Zoptymalizowano obsługę awarii podczas instalacji.
- Ulepszono interfejs do tworzenia makr w języku Lua.
- Dodano wbudowane makro %{exist:…} do sprawdzania istnienia pliku.
- Rozszerzono możliwości API do obsługi transakcji.
- Ujednolicono składnię wbudowanych i użytkowników makr oraz format ich wywołania (%foo arg, %{foo arg} i %{foo:arg} są teraz równoważne).
- W buildroot domyślnie zastosowano regułę do usuwania plików „.la” oraz dodano regułę do czyszczenia bitu wykonywalnego dla plików bibliotek współdzielonych.
- Dodano wtyczkę dbus-announce do informowania o transakcjach RPM przez D-Bus.
- Dodano wtyczkę fapolicyd do definiowania polityk dostępu do plików.
- Dodano wtyczkę fs-verity do weryfikacji autentyczności pojedynczych plików przy użyciu wbudowanego mechanizmu fs-verity.
- Strony podręczników man zostały przetłumaczone do formatu Markdown.
- Przedstawiono wstępną wersję podręcznika o zarządzaniu pakietami i tworzeniu pakietów.
- Usunięto backend DBD, przeznaczony do przechowywania danych w Berkeley DB (dla kompatybilności ze starszymi systemami pozostawiono backend BDB_RO, działający w trybie tylko do odczytu). Jako domyślna baza danych wykorzystano sqlite.
- Dodano wsparcie dla cyfrowych podpisów EdDSA.
- Narzędzia do wydobywania Debuginfo zostały wydzielone do osobnego projektu.
- Pomocnicze procesory i generatory pakietów w języku Python zostały wydzielone do osobnego projektu.
- Przeprowadzono czyszczenie skryptów, które nie są już wspierane.
- Usunięto backendy kryptograficzne beecrypt i NSS.
Źródło: opennet.ru
