RPM 4.15 kiadás

Közel két év fejlesztés után került sor csomagkezelő kiadás 4.15.0 RPM. Az RPM4 projektet a Red Hat fejlesztette ki, és olyan disztribúciókban használják, mint az RHEL (beleértve a származékos projekteket CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen és még sokan mások. Korábban független fejlesztőcsapat fejlett terv 5 RPM, amely nem kapcsolódik közvetlenül az RPM4-hez, és jelenleg felhagyott (2010 óta nem frissítve).

Legfigyelemreméltóbb fejlesztések RPM 4.15-ban:

  • Hozzáadott kísérleti támogatás a kiváltságtalan összeállításhoz chroot környezetben;
  • Megvalósítva csomag-összeállítás párhuzamosításának támogatása többmagos rendszereken. A szálak számának korlátját a „%_smp_build_ncpus” makró és a $RPM_BUILD_NCPUS változó határozza meg. A CPU-k számának meghatározásához a „%getncpus” makrót javasoljuk;
  • A specifikációs fájlok mostantól támogatják a „%elif” (else if) feltételes operátort, valamint a „%elifos” és „%elifarch” opciókat a disztribúcióhoz és az architektúrához való kötéshez;
  • Hozzáadva új szekciók "%patchlist" és "%sourcelist", amelyek javítások és források hozzáadására használhatók úgy, hogy egyszerűen felsorolják a neveket bejegyzésszám megadása nélkül (például
    „Patch0: popt-1.16-pkgconfig.patch” a %patchlist részben megadhatja a „popt-1.16-pkgconfig.patch” parancsot);

  • Az rpmbuildben tette hozzá a függőségek dinamikus összeállításának támogatása az src.rpm-ben való szerepeltetésükkel. A specifikációs fájlban a „%generate_buildrequires” rész támogatása került be, melynek tartalma függőségek listájaként (BuildRequires) kerül feldolgozásra, amely ellenőrzést igényel (ha hiányzik a függőség, hiba jelenik meg).
  • Megvalósítva A "^" operátor az adott dátumnál régebbi verziók ellenőrzésére szolgál, a "~" operátor ellentétével. Például,
    Az "1.1^20160101" lefedi az 1.1-es verziót és a 1. január 2016. után hozzáadott javításokat;

  • "--scm" opció hozzáadva az "%autosetup SCM" mód engedélyezéséhez;
  • Beépített "%{expr:...}" makró hozzáadva tetszőleges kifejezések kiértékeléséhez (néhány nappal ezelőtt szintén javasolta formátum "%[ expr ]");
  • Biztosítja, hogy a fejlécekben található karakterláncadatok alapértelmezett kódolása UTF-8;
  • Hozzáadott globális makrók %build_cflags, %build_cxxflags, %build_fflags és %build_ldflags a fordító és linker jelzőivel;
  • „%dnl” makró (elvetés a következő sorba) hozzáadva a megjegyzések beszúrásához;
  • A Python 3 kötései biztosítják, hogy a karakterláncok kiszabadult UTF-8 szekvenciákként jelenjenek meg bájtadatok helyett;
  • Hozzáadott áladatbázis-háttérprogram az rpmdb nélküli rendszerek támogatásának javítása érdekében (pl. Debian);
  • Továbbfejlesztett ARM architektúra észlelés és hozzáadott támogatás az armv8 számára;
  • Zökkenőmentes támogatást biztosít a Lua 5.2-5.3-hoz, amely nem igényel kompatibilis definíciókat a kódban.

Forrás: opennet.ru

Hozzászólás