Ngemuva konyaka wentuthuko, ekugcineni ukwethulwa kwe- inguqulo ezinzile yomphathi wephakheji "I-RPM 4.16", lapho ezinye izinto zenziwa ngcono mayelana nama-opharetha, ukubuyela emuva okusha nezinye izinguquko.
Iphrojekthi ye-RPM4 lakhiwa Red Hat futhi isetshenziselwa ukwabiwa okufana ne-RHEL (kufaka phakathi leyo etholakala ku-CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, Tizen, nabanye abaningi.
Phambilini, ithimba lezentuthuko elizimele lisungule iphrojekthi ye-RPM5, engahlobene ngqo ne-RPM4 futhi okwamanje eshiyiwe (ayivuselelwa kusukela ngo-2010). Ikhodi yephrojekthi isatshalaliswa ngaphansi kwamalayisense we-GPLv2
Izici ezintsha eziyinhloko ze-RPM 4.16
Kule nguqulo entsha ekhishwe yomphathi wephakethe we-RPM 4.16 i-backend entsha isetshenzisiwe ukugcina imininingwane ku-SQLite DBMS, ngaleli backend kuhlelwe ukuthi inguqulo yeFedora 33 izosebenzisa lokhu esikhundleni se-backend esekwe eBerkeleyDB.
Olunye ushintsho olusetshenzisiwe yi- i-backend entsha yokulinga yokufunda kuphela yesitoreji sedatha ku-BDB (i-Oracle Berkeley DB). Ukuqaliswa kubhalwe phansi futhi akusebenzisi ikhodi ye-backend ye-BerkeleyDB, eyehlisiwe kepha yafakwa ngokuzenzakalela.
Engxenyeni yamamakhro nezinkulumo "% Uma" ukusekelwa komqhubi we-tenari kungeziwe (% {expr: 1 == 0? »yebo»: »no»}) bese unikela ngokuqhathanisa okwakhelwe ngaphakathi ('% [v »3: 1.2-1 ″> v» 2.0 ″]') nokunye okusha engezwe ama-macros% arm32,% arm64 kanye ne-% riscv ukuze achaze ukwakhiwa futhi futhi ngokuhlanganyela nawo i-macro% {macrobody:…} yokuthola okuqukethwe okukhulu.
Ngaphezu kwakho, kuphakanyiswe inguqulo entsha ye-API yokuhlaziya nokuqhathanisa yezilimi ze-C ne-Python.
Ukuhlinzekwa kwe-Brp-strip parallelization kuhlinzekiwe nezakhi ze-suite yokuhlola. Ukwenza kahle kokufana kwenqubo yokukhiqiza iphakheji kwenziwe.
Futhi kufakwe inketho ye- "–salvagedb" ku-rpmdb utility yokubuyisa i-database eyonakele (isebenza kuphela nge-backend ye-NDB).
Akuvunyelwe ukusebenzisa amagama angahlukanisiwe ngezimpawu zokucaphuna ezinkulumweni, isib. Isb esikhundleni sika 'a == b' manje udinga ukubhala '»a» == »b»'.
I-expression parser isebenzisa i-syntax "% [...]" ukwenza isisho ngokunwetshwa okukhulu (kwehlukile ku - "% {expr: ...}" kulokho kwenziwa ama-macro kuqala).
Kungeziwe ukusekelwa kokunwetshwa okufishane kwama-opharetha anengqondo namathishela ezinkulumweni ("% [0 && 1/0]" iphathwa njengo-0 futhi ayiholeli iphutha ngenxa yomzamo wokuhlukanisa ngoziro).
Kungeziwe ukusekelwa kokusebenzisa okunengqondo HHAYI opharetha ezimeni eziphikisanayo (! "%? Foo").
Ukuziphatha kwabasebenzi be- "||" futhi i- "&&" iqondaniswe nePerl / Python / Ruby, okusho ukuthi esikhundleni sokubuyisa inani leBoolean, manje selibuyisa inani lokugcina elibaliwe (ngokwesibonelo, "% [2 || 3]" lizobuya 2).
Of ezinye izinguquko ezigqamile yale nguqulo entsha ye-RPM 4.16:
- Kungezwe amandla okuqinisekisa amanye amafomethi amasiginesha edijithali nama-hashes.
- Kungezwe ukusekelwa kokuncika kwe-meta (Idinga (i-meta): i-somepkg), engathinti ukuhleleka kokufakwa nokususwa.
- Kungezwe inketho ye- "–rpmv3" ukuze kusetshenziswe i-rpmsign ukuphoqelela ama-RPM3 digital signature.
- Kungezwe inketho yokufaka "–excludeartifacts" ukweqa ukufakwa kwemibhalo, isampula amafayela wokumisa, nenye idatha ehlobene.
- Ukuxhaswa okungasasebenzi kwe-RPMv3 ne-beecrypt ne-NSS cryptographic backends.
- Kungezwe ukusekelwa kwe-DSA2 (gcrypt) ne-EdDSA.
- Isizindalwazi sedatha yokuhlola esingemuva ye-LMDB sisusiwe
- Isizindalwazi sangemuva esizinzile esimenyezelwe ngokususelwa kwisitoreji se-NDB.
- Ukusekelwa kusetshenziselwe ukuhlukanisa amafayela ngokuya ngezinhlobo zawo zokuqukethwe ze-MIME.
- Kungezwe ikhono lokukhiqiza ukuncika kusetshenziswa ama-parametric macros.
Okokugcina uma ufuna ukwazi kabanzi ngayo, ungabheka i-changelog ephelele Kulesi sixhumanisi esilandelayo.
Ngokuqondene nokuqaliswa kwenguqulo entsha, kufanele ulinde ukuthi ifakwe ngaphakathi kweziteshi ezisemthethweni zokusabalalisa kwakho noma uma ungumthandi womdlandla ungahlanganisa iphakheji. Isixhumanisi se- ukulanda yilokhu.