Lëshimi i RPM 4.16

Pas një viti zhvillimi Ndodhi lëshimi i menaxherit të paketave 4.16.0 RPM. Projekti RPM4 është zhvilluar nga Red Hat dhe përdoret në shpërndarje të tilla si RHEL (përfshirë projektet derivative CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen dhe shumë të tjerë. Ekipi i pavarur i zhvillimit më parë zhvilluar projekt RPM 5, i cili nuk lidhet drejtpërdrejt me RPM4 dhe aktualisht është i braktisur (i pa përditësuar që nga viti 2010). Kodi i projektit shperndare nga licencuar sipas GPLv2 dhe LGPLv2.

Më i dukshëm përmirësime në RPM 4.16:

  • Një backend i ri është implementuar për ruajtjen e bazave të të dhënave në SQLite DBMS. Ky backend do të përdoret në Fedora Linux 33 në vend të një backend të bazuar në BerkeleyDB.
  • Është zbatuar një bazë e re eksperimentale për ruajtjen e bazave të të dhënave në BDB (Oracle Berkeley DB), që funksionon në modalitetin vetëm për lexim. Implementimi është shkruar nga e para dhe nuk përdor kod nga prapavija e trashëgimisë BerkeleyDB, e cila është zhvlerësuar, por është ende e përfshirë si parazgjedhje.
  • Baza eksperimentale e bazës së të dhënave të bazuar në LMDB është hequr.
  • Baza e të dhënave mbështetëse e bazuar në ruajtjen NDB është deklaruar e qëndrueshme.
  • Mbështetje e shtuar për makrot dhe shprehjet "%if". operator thenar (%{expr:1==0?"yes":"jo"}) dhe ofron një veçori të integruar të krahasimit të versioneve ('%[v"3:1.2-1" > v"2.0″]').
  • Është zbatuar mbështetje për klasifikimin e skedarëve bazuar në llojet MIME të përmbajtjes së tyre.
  • U shtua aftësia për të gjeneruar varësi duke përdorur makro parametrike.
  • Është propozuar një version i ri i API-së së analizimit dhe krahasimit për C dhe Python.
  • Sigurohet paralelizimi i ekzekutimit të komponentëve të shiritit brp dhe testit. Është kryer optimizimi i paralelizimit të procesit të gjenerimit të paketave.
  • Tek programi rpmdb shtuar opsioni "—salvagedb" për të rivendosur një bazë të dhënash të dëmtuar (punon vetëm me backend-in NDB).
  • U shtuan makro të reja %arm32, %arm64 dhe %riscv për zbulimin e arkitekturës. U shtua gjithashtu një makro e integruar %{macrobody:...} për të marrë përmbajtjen e makrove.
  • Ndalohet përdorimi i fjalëve që nuk ndahen me thonjëza në shprehje, d.m.th. në vend të 'a == b' tani duhet të shkruani '"a" == "b"'.
  • Analizuesi i shprehjeve zbaton sintaksën "%[...]" për ekzekutimin e një shprehjeje me zgjerim makro (ndryshon nga "%{expr:...}" në atë që makrot ekzekutohen së pari).
  • Mbështetje e shtuar për zgjerimin e shkurtër të operatorëve logjikë dhe thenar në shprehje ("%[0 && 1 / 0]" trajtohet si 0 në vend që të shkaktojë një gabim për shkak të përpjekjes për ndarje me zero).
  • Mbështetje e shtuar për përdorimin e operatorit logjik NOT në kontekste arbitrare (!"%?foo").
  • Sjellja e operatorëve "||". dhe "&&" është sjellë në përputhje me Perl/Python/Ruby, d.m.th. Në vend që të kthejë një vlerë boolean, ajo tani kthen vlerën e fundit të llogaritur (për shembull, "%[2 || 3]" do të kthejë 2).
  • U shtua aftësia për të verifikuar formatet alternative të nënshkrimeve dixhitale dhe hasheve.
  • Mbështetje e shtuar për meta-varësitë (Kërkon(meta): somepkg), të cilat nuk ndikojnë në rendin e instalimit dhe heqjes.
  • U shtua opsioni "--rpmv3" në rpmsign për të detyruar përdorimin e nënshkrimeve dixhitale në formatin RPM3.
  • U shtua opsioni i instalimit "--excludeartifacts" për të kapërcyer instalimin e dokumentacionit, skedarët e konfigurimit të shembullit dhe të dhëna të tjera të lidhura.
  • Mbështetja e vjetëruar për RPMv3 dhe mbështetësit e kriptove të beecrypt dhe NSS.
  • Mbështetje e shtuar për DSA2 (gcrypt) dhe EdDSA.

Burimi: opennet.ru

Shto një koment