RPM 4.15 leidimas

Po beveik dvejų metų plėtros įvyko paketų tvarkyklės leidimas 4.15.0 RPM. RPM4 projektą sukūrė Red Hat ir jis naudojamas tokiuose platinimuose kaip RHEL (įskaitant išvestinius projektus CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizenas ir daugelis kitų. Anksčiau buvo nepriklausoma vystymo komanda išvystyta projektas 5 aps./min, kuri nėra tiesiogiai susijusi su RPM4 ir šiuo metu yra atsisakyta (neatnaujinta nuo 2010 m.).

Žymiausias patobulinimai 4.15 RPM:

  • Pridėtas eksperimentinis palaikymas neprivilegijuotam surinkimui chroot aplinkoje;
  • Įgyvendinta palaikymas paketų surinkimo lygiagrečiam kelių branduolių sistemose. Gijų skaičiaus apribojimas nustatomas naudojant makrokomandą „%_smp_build_ncpus“ ir kintamąjį $RPM_BUILD_NCPUS. Norint nustatyti procesorių skaičių, siūloma makrokomanda „%getncpus“;
  • Spec failai dabar palaiko sąlyginį operatorių „%elif“ (else if), taip pat „%elifos“ ir „%elifarch“ parinktis, skirtas susieti su paskirstymu ir architektūra;
  • Pridėta naujos skiltys „%patchlist“ ir „%sourcelist“, kurias galima naudoti pataisoms ir šaltiniams pridėti tiesiog išvardijant pavadinimus nenurodant įrašų numerių (pavyzdžiui, vietoj
    „Patch0: popt-1.16-pkgconfig.patch“ skiltyje %patchlist galite nurodyti „popt-1.16-pkgconfig.patch“);

  • rpmbuild pridėta dinaminio priklausomybių surinkimo palaikymas, įtraukiant jas į src.rpm. Specifikacijų faile buvo pridėtas palaikymas skyriui „%generate_buildrequires“, kurio turinys apdorojamas kaip priklausomybių sąrašas (BuildRequires), reikalaujantis patikrinimo (jei priklausomybės trūksta, bus rodoma klaida).
  • Įgyvendinta Operatorius „^“ naudojamas patikrinti, ar nėra senesnių nei nurodyta data versijų, veikiant priešingai nei „~“. Pavyzdžiui,
    „1.1^20160101“ apims 1.1 versiją ir pataisas, pridėtas po 1 m. sausio 2016 d.;

  • Pridėta "--scm" parinktis, leidžianti įjungti "%autosetup SCM" režimą;
  • Pridėta integruota makrokomanda „%{expr:...}“, skirta savavališkoms išraiškoms įvertinti (prieš kelias dienas taip pat buvo pasiūlė formatas "%[ expr ]");
  • Užtikrina, kad eilutės duomenų antraštėse numatytoji koduotė būtų UTF-8;
  • Pridėtos pasaulinės makrokomandos %build_cflags, %build_cxxflags, %build_fflags ir %build_ldflags su kompiliatoriaus ir susiejimo vėliavėlėmis;
  • Pridėta makrokomanda „%dnl“ (Išmesti į kitą eilutę), skirta komentarams įterpti;
  • Python 3 susiejimas užtikrina, kad eilutės būtų grąžinamos kaip pašalintos UTF-8 sekos, o ne baitų duomenys;
  • Pridėta netikra duomenų bazės užpakalinė programa, siekiant pagerinti sistemų be rpmdb palaikymą (pvz., Debian);
  • Patobulintas ARM architektūros aptikimas ir papildomas armv8 palaikymas;
  • Teikiamas sklandus Lua 5.2–5.3 palaikymas, kuriam nereikia suderinamų apibrėžimų kode.

Šaltinis: opennet.ru

Добавить комментарий