RPM 4.16 izlaidums

Pēc gada attīstības notika pakotņu pārvaldnieka izlaidums RPM 4.16.0. RPM4 projektu izstrādā Red Hat, un to izmanto tādos izplatījumos kā RHEL (tostarp atvasinātos projektos CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen un daudzi citi. Iepriekš neatkarīga izstrādes komanda izstrādāta projekts RPM 5, kas nav tieši saistīts ar RPM4 un šobrīd ir pamests (nav atjaunināts kopš 2010. gada). Projekta kods izplata licencēts saskaņā ar GPLv2 un LGPLv2.

Ievērojamākais uzlabojumi RPM 4.16:

  • Ir ieviesta jauna aizmugursistēma datu bāzu glabāšanai SQLite DBVS. Šī aizmugure tiks izmantots Fedora Linux 33, nevis uz BerkeleyDB balstītas aizmugursistēmas.
  • Ir ieviesta jauna eksperimentāla aizmugursistēma datu bāzu glabāšanai BDB (Oracle Berkeley DB), kas darbojas tikai lasīšanas režīmā. Ieviešana ir rakstīta no jauna, un tajā netiek izmantots kods no mantotās BerkeleyDB aizmugursistēmas, kas ir novecojusi, bet joprojām ir iekļauta pēc noklusējuma.
  • Eksperimentālā uz LMDB balstītā datu bāzes aizmugursistēma ir noņemta.
  • Aizmugursistēmas datubāze, kuras pamatā ir NDB krātuve, ir pasludināta par stabilu.
  • Pievienots atbalsts "%if" makro un izteiksmēm tadar operators (%{expr:1==0?yes":"no"}) un piedāvā iebūvētu versiju salīdzināšanas līdzekli ('%[v"3:1.2-1″ > v"2.0"]').
  • Ir ieviests atbalsts failu klasificēšanai, pamatojoties uz to satura MIME veidiem.
  • Pievienota iespēja ģenerēt atkarības, izmantojot parametru makro.
  • Ir ierosināta jauna C un Python parsēšanas un salīdzināšanas API versija.
  • Tiek nodrošināta brp-sloksnes un testa komplekta komponentu izpildes paralēla. Veikta pakešu ģenerēšanas procesa paralēlizācijas optimizācija.
  • Uz rpmdb utilītu pievienots opcija “—salvagedb”, lai atjaunotu bojātu datu bāzi (darbojas tikai ar NDB aizmugursistēmu).
  • Pievienoti jauni makro %arm32, %arm64 un %riscv arhitektūras noteikšanai. Pievienots arī iebūvēts makro %{macrobody:...}, lai iegūtu makro saturu.
  • Izteiksmēs aizliegts lietot ar pēdiņām neatdalītus vārdus, t.i. 'a == b' vietā tagad ir jāraksta '"a" == "b"'.
  • Izteiksmes parsētājs ievieš “%[...]” sintaksi izteiksmes izpildei ar makro paplašinājumu (tā atšķiras no “%{expr:...}” ar to, ka vispirms tiek izpildīti makro).
  • Pievienots atbalsts īsai loģisko un thenar operatoru izvēršanai izteiksmēs ("%[0 && 1 / 0]" tiek uzskatīts par 0, nevis rada kļūdu mēģinājuma dalīt ar nulli dēļ).
  • Pievienots atbalsts NOT loģiskā operatora lietošanai patvaļīgos kontekstos (!"%?foo").
  • "||" operatoru darbība un "&&" tiek saskaņots ar Perl/Python/Ruby, t.i. Tā vietā, lai atgrieztu Būla vērtību, tā tagad atgriež pēdējo aprēķināto vērtību (piemēram, "%[2 || 3]" atgriezīs 2).
  • Pievienota iespēja pārbaudīt alternatīvus digitālo parakstu un jaucējkodu formātus.
  • Pievienots atbalsts meta-atkarībām (Nepieciešams(meta): somepkg), kas neietekmē instalēšanas un noņemšanas secību.
  • Pievienota opcija "--rpmv3" rpmsign, lai piespiestu izmantot ciparparakstus RPM3 formātā.
  • Pievienota instalēšanas opcija "--excludeartifacts", lai izlaistu dokumentācijas, piemēru konfigurācijas failu un citu saistīto datu instalēšanu.
  • Novecojis RPMv3 un beecrypt un NSS šifrēšanas aizmugursistēmas atbalsts.
  • Pievienots DSA2 (gcrypt) un EdDSA atbalsts.

Avots: opennet.ru

Pievieno komentāru