Mai Rarraba RPM 4.16

Bayan shekara guda na ci gaba ya faru sakin mai sarrafa kunshin Mai Rarraba RPM 4.16.0. Red Hat ne ya haɓaka aikin RPM4 kuma ana amfani dashi a cikin irin wannan rarraba kamar RHEL (ciki har da ayyukan da aka samo asali CentOS, Linux Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen da sauran su. Ƙungiyar ci gaba mai zaman kanta a baya ci gaba aikin Saukewa: RPM5, который непосредственно не связан с RPM4 и в настоящее время заброшен (не обновлялся с 2010 года). Код проекта rarraba ta lasisi ƙarƙashin GPLv2 da LGPLv2.

Mafi shahara ingantawa RPM 4.16:

  • Реализован новый бэкенд для хранения БД в СУБД SQLite. Данный бэкенд будет использован в Fedora Linux 33 вместо бэкенда на основе BerkeleyDB.
  • Реализован новый экспериментальный бэкенд для хранения БД в BDB (Oracle Berkeley DB), работающий в режиме только для чтения. Реализация написана с нуля и не использует код прошлого бэкенда BerkeleyDB, который объявлен устаревшим, но по прежнему включается по умолчанию.
  • Удалён экспериментальный бэкенд БД на базе LMDB.
  • Объявлен стабильным бэкенд БД на базе хранилища NDB.
  • В макросы и выражения «%if» добавлена поддержка тенарного оператора (%{expr:1==0?»yes»:»no»}) и предложена встроенная возможность сравнения версий (‘%[v»3:1.2-1″ > v»2.0″]’).
  • Реализована поддержка классификации файлов на основе MIME-типов их содержимого.
  • Добавлена возможность генерации зависимостей при помощи параметрических макросов.
  • Предложена новая версия API парсинга и сравнения для языков C и Python.
  • Обеспечено распараллеливание выполнения brp-strip и компонентов тестового набора. Проведена оптимизация распараллеливания процесса генерации пакетов.
  • В утилиту rpmdb kara da cewa опция «—salvagedb» для восстановления повреждённой БД (работает только с бэкендом NDB).
  • Добавлены новые макросы %arm32, %arm64 и %riscv для определения архитектуры. Также добавлен встроенный макрос %{macrobody:…} для получения содержимого макросов.
  • В выражениях запрещено использования не обособленных кавычками слов, т.е. вместо ‘a == b’ теперь нужно писать ‘»a» == «b»‘.
  • В парсере выражений реализован синтаксис «%[…]» для выполнения выражения с раскрытием макросов (от «%{expr:…}» отличается тем, что макросы выполняются первыми).
  • В выражениях добавлена поддержка короткого раскрытия логических и тенарных операторов («%[0 && 1 / 0]» рассматривается как 0, а не приводит к ошибке из-за попытки деления на ноль).
  • Добавлена поддержка применения логического оператора NOT в произвольных контекстах (!»%?foo»).
  • Поведение операторов «||» и «&&» приведено в соответствие с Perl/Python/Ruby, т.е. вместо возврата булевого значения теперь выдаёт последнее вычисленное значение (например, «%[2 || 3]» вернёт 2).
  • Добавлена возможность верификации альтернативных форматов цифровых подписей и хэшей.
  • Добавлена поддержка мета-зависимостей (Requires(meta): somepkg), не влияющих на порядок установки и удаления.
  • В rpmsign добавлена опция «—rpmv3» для принудительного использования цифровых подписей в формате RPM3.
  • Добавлена установочная опция «—excludeartifacts» для пропуска установки документации, примеров файлов конфигурации и прочих сопутствующих данных.
  • Объявлена устаревшей поддержка RPMv3 и криптобэкенды beecrypt и NSS.
  • Добавлена поддержка DSA2 (gcrypt) и EdDSA.

source: budenet.ru

Add a comment