Izdanje RPM 4.16

Nakon godinu dana razvoja odvijao izdanje upravitelja paketa O / min 4.16.0. Projekt RPM4 razvio je Red Hat i koristi se u distribucijama kao što su RHEL (uključujući izvedene projekte CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen i mnogi drugi. Prethodno nezavisni razvojni tim razvijena projekt RPM 5, koji nije izravno povezan s RPM4 i trenutno je napušten (nije ažuriran od 2010.). Šifra projekta distribuira licenciran pod GPLv2 i LGPLv2.

Najistaknutiji poboljšanja u RPM 4.16:

  • Implementiran je novi backend za pohranu baza podataka u SQLite DBMS. Ovaj backend koristit će se u Fedora Linux 33 umjesto pozadine temeljene na BerkeleyDB-u.
  • Implementiran je novi eksperimentalni backend za pohranu baza podataka u BDB (Oracle Berkeley DB), koji radi u modu samo za čitanje. Implementacija je napisana od nule i ne koristi kod iz naslijeđene BerkeleyDB pozadine, koja je zastarjela, ali je još uvijek uključena prema zadanim postavkama.
  • Eksperimentalna baza podataka temeljena na LMDB-u je uklonjena.
  • Pozadinska baza podataka temeljena na NDB pohrani proglašena je stabilnom.
  • Dodana podrška za "%if" makronaredbe i izraze thenar operator (%{expr:1==0?"yes":"no"}) i nudi ugrađenu značajku usporedbe verzija ('%[v"3:1.2-1″ > v"2.0″]').
  • Implementirana je podrška za klasifikaciju datoteka na temelju MIME tipova njihovog sadržaja.
  • Dodana je mogućnost generiranja ovisnosti pomoću parametarske makronaredbe.
  • Predložena je nova verzija API-ja za analizu i usporedbu za C i Python.
  • Osigurana je paralelizacija izvođenja komponenti brp-strip i test suite. Provedena je optimizacija paralelizacije procesa generiranja paketa.
  • Na pomoćni program rpmdb dodao opcija “—salvagedb” za vraćanje oštećene baze podataka (radi samo s NDB pozadinom).
  • Dodane nove makronaredbe %arm32, %arm64 i %riscv za otkrivanje arhitekture. Također je dodan ugrađeni makro %{macrobody:...} za dobivanje sadržaja makronaredbi.
  • U izrazima je zabranjeno koristiti riječi koje nisu odvojene navodnicima, tj. umjesto 'a == b' sada trebate napisati '"a" == "b"'.
  • Parser izraza implementira sintaksu “%[...]” za izvođenje izraza s proširenjem makronaredbi (od “%{expr:...}” se razlikuje po tome što se makronaredbe izvršavaju prve).
  • Dodana podrška za kratko proširenje logičkih i thenar operatora u izrazima ("%[0 && 1 / 0]" tretira se kao 0 umjesto da uzrokuje pogrešku zbog pokušaja dijeljenja s nulom).
  • Dodana podrška za korištenje logičkog operatora NOT u proizvoljnim kontekstima (!"%?foo").
  • Ponašanje operatora "||". a "&&" je usklađen s Perl/Python/Ruby, tj. Umjesto vraćanja Booleove vrijednosti, sada vraća posljednju izračunatu vrijednost (na primjer, "%[2 || 3]" vratit će 2).
  • Dodana je mogućnost provjere alternativnih formata digitalnih potpisa i hash oznaka.
  • Dodana je podrška za meta-ovisnosti (Requires(meta): somepkg), koje ne utječu na redoslijed instalacije i uklanjanja.
  • Dodana je opcija "--rpmv3" u rpmsign za prisilnu upotrebu digitalnih potpisa u RPM3 formatu.
  • Dodana opcija instalacije "--excludeartifacts" za preskakanje instalacije dokumentacije, primjera konfiguracijskih datoteka i drugih povezanih podataka.
  • Zastarjela podrška za RPMv3 i beecrypt i NSS kripto pozadinu.
  • Dodana podrška za DSA2 (gcrypt) i EdDSA.

Izvor: opennet.ru

Dodajte komentar