Vydanie správcu balíkov RPM 4.16

Po roku vývoja uskutočnilo sa vydanie správcu balíkov RPM 4.16.0. Projekt RPM4 je vyvinutý spoločnosťou Red Hat a používa sa v takých distribúciách ako RHEL (vrátane odvodených projektov CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen a mnoho ďalších. Predtým nezávislý vývojový tím vyvinuté projekt Ot./min, ktorá priamo nesúvisí s RPM4 a v súčasnosti je opustená (neaktualizovaná od roku 2010). Kód projektu distribuovaný pod licenciou GPLv2 a LGPLv2.

Najpozoruhodnejšie vylepšenia v otáčkach 4.16:

  • Bol implementovaný nový backend pre ukladanie databáz v SQLite DBMS. Tento backend bude použitý vo Fedora Linux 33 namiesto backendu založeného na BerkeleyDB.
  • Bol implementovaný nový experimentálny backend pre ukladanie databáz v BDB (Oracle Berkeley DB), ktorý pracuje v režime iba na čítanie. Implementácia je napísaná úplne od začiatku a nepoužíva kód zo staršieho backendu BerkeleyDB, ktorý bol zastaraný, ale stále je štandardne zahrnutý.
  • Experimentálny backend databázy založený na LMDB bol odstránený.
  • Backendová databáza založená na úložisku NDB bola vyhlásená za stabilnú.
  • Pridaná podpora pre makrá a výrazy "%if". operátor thenar (%{expr:1==0?"yes":"no"}) a ponúka vstavanú funkciu porovnávania verzií ('%[v"3:1.2-1″ > v"2.0″]').
  • Bola implementovaná podpora pre klasifikáciu súborov na základe typov MIME ich obsahu.
  • Pridaná možnosť vytvárať závislosti pomocou parametrické makrá.
  • Bola navrhnutá nová verzia rozhrania API na analýzu a porovnávanie pre C a Python.
  • Je zabezpečená paralelnosť vykonávania komponentov brp-stripu a testovacej súpravy. Bola vykonaná optimalizácia paralelizácie procesu generovania paketov.
  • K obslužnému programu rpmdb pridané možnosť „—salvagedb“ na obnovenie poškodenej databázy (funguje len s backendom NDB).
  • Pridané nové makrá %arm32, %arm64 a %riscv na detekciu architektúry. Tiež pridané vstavané makro %{macrobody:...} na získanie obsahu makier.
  • Vo výrazoch je zakázané používať slová, ktoré nie sú oddelené úvodzovkami, t.j. namiesto 'a == b' teraz musíte napísať '"a" == "b"'.
  • Analyzátor výrazov implementuje syntax „%[...]“ na spustenie výrazu s rozšírením makra (od „%{expr:...}“ sa líši tým, že makrá sa spustia ako prvé).
  • Pridaná podpora krátkeho rozšírenia logických operátorov a operátorov thenar vo výrazoch ("%[0 && 1 / 0]" sa považuje za 0 a nespôsobuje chybu v dôsledku pokusu o delenie nulou).
  • Pridaná podpora pre používanie logického operátora NOT v ľubovoľných kontextoch (!"%?foo").
  • Správanie operátorov "||". a "&&" je zosúladené s Perl/Python/Ruby, t.j. Namiesto vrátenia boolovskej hodnoty teraz vracia poslednú vypočítanú hodnotu (napríklad "%[2 || 3]" vráti 2).
  • Pridaná možnosť overovania alternatívnych formátov digitálnych podpisov a hashov.
  • Pridaná podpora pre metazávislosti (Requires(meta): somepkg), ktoré neovplyvňujú poradie inštalácie a odstraňovania.
  • Do rpmsign bola pridaná možnosť „--rpmv3“, aby sa vynútilo používanie digitálnych podpisov vo formáte RPM3.
  • Pridaná možnosť inštalácie "--excludeartifacts" na preskočenie inštalácie dokumentácie, príkladov konfiguračných súborov a iných súvisiacich údajov.
  • Zastaraná podpora pre RPMv3 a šifrovacie backendy beecrypt a NSS.
  • Pridaná podpora pre DSA2 (gcrypt) a EdDSA.

Zdroj: opennet.ru

Pridať komentár