RPM 4.16 хувилбар

Жилийн хөгжлийн дараа болсон багц менежерийн хувилбар 4.16.0 эргэлт. RPM4 төслийг Red Hat боловсруулсан бөгөөд RHEL (үүсмэл төслүүд CentOS, Scientific Linux, AsiaLinux, Red Flag Linux, Oracle Linux), Fedora, SUSE, openSUSE, ALT Linux, OpenMandriva, Mageia, PCLinuxOS, зэрэг түгээлтүүдэд ашиглагддаг. Тизен болон бусад олон. Өмнө нь бие даасан хөгжлийн баг боловсруулсан ноорог RPM 5, энэ нь RPM4-тэй шууд хамааралгүй бөгөөд одоогоор орхигдсон (2010 оноос хойш шинэчлэгдээгүй). Төслийн код тараасан GPLv2 болон LGPLv2 дагуу лицензтэй.

Хамгийн онцлох сайжруулалт RPM 4.16-д:

  • SQLite DBMS-д өгөгдлийн санг хадгалах шинэ backend хэрэгжсэн. Энэ backend ашиглагдах болно BerkeleyDB-д суурилсан backend-ийн оронд Fedora Linux 33 дээр.
  • Зөвхөн унших горимд ажилладаг BDB (Oracle Berkeley DB) дахь өгөгдлийн санг хадгалах шинэ туршилтын backend хэрэгжлээ. Хэрэгжилт нь эхнээс нь бичигдсэн бөгөөд хуучин BerkeleyDB backend-ийн кодыг ашигладаггүй бөгөөд энэ нь хуучирсан боловч анхдагчаар орсон хэвээр байна.
  • Туршилтын LMDB-д суурилсан өгөгдлийн сангийн арын хэсгийг устгасан.
  • NDB хадгалах сан дээр суурилсан арын мэдээллийн баазыг тогтвортой гэж зарласан.
  • "%if" макро болон илэрхийллийн дэмжлэгийг нэмсэн тенар оператор (%{expr:1==0?yes":"no"}) ба суулгагдсан хувилбарыг харьцуулах функцийг санал болгодог ('%[v"3:1.2-1″ > v"2.0″]').
  • Файлуудыг агуулгын MIME төрлөөр нь ангилах дэмжлэгийг хэрэгжүүлсэн.
  • ашиглан хамаарал үүсгэх чадварыг нэмсэн параметрийн макро.
  • C болон Python-д зориулсан задлан шинжлэх, харьцуулах API-ийн шинэ хувилбарыг санал болгов.
  • brp-strip болон туршилтын багцын бүрэлдэхүүн хэсгүүдийн гүйцэтгэлийн зэрэгцээ байдлыг хангаж байна. Пакет үүсгэх үйл явцыг параллель болгох оновчтой болгох ажлыг хийсэн.
  • rpmdb хэрэгсэл рүү нэмсэн Гэмтсэн мэдээллийн санг сэргээхийн тулд "—salvagedb" сонголт (зөвхөн NDB backend дээр ажилладаг).
  • Архитектур илрүүлэх шинэ макро %arm32, %arm64 болон %riscv нэмсэн. Мөн макроны агуулгыг авахын тулд суулгасан макро %{macrobody:...} нэмсэн.
  • Илэрхийлэлд хашилтаар тусгаарлагдаагүй үгсийг ашиглахыг хориглоно. 'a == b'-ийн оронд та одоо '"a" == "b"' гэж бичих хэрэгтэй.
  • Илэрхийллийг задлан шинжлэгч нь макро өргөтгөл бүхий илэрхийлэлийг гүйцэтгэхийн тулд “%[...]” синтаксийг хэрэгжүүлдэг (энэ нь макронууд эхлээд гүйцэтгэгддэгээрээ “%{expr:...}”-ээс ялгаатай).
  • Илэрхийлэл дэх логик болон тенар операторуудыг богино хугацаанд өргөтгөх дэмжлэгийг нэмсэн ("%[0 && 1 / 0]"-ийг тэгээр хуваах оролдлогын улмаас алдаа гаргахын оронд 0 гэж үздэг).
  • Дурын контекст (!"%?foo") -д NOT логик операторыг ашиглах дэмжлэг нэмэгдсэн.
  • "||" операторуудын зан байдал мөн "&&" нь Perl/Python/Ruby-тэй нийцэж байна, i.e. Энэ нь логик утгыг буцаахын оронд хамгийн сүүлд тооцсон утгыг буцаана (жишээ нь, "%[2 || 3]" нь 2-ыг буцаана).
  • Тоон гарын үсэг болон хэшийн өөр форматыг шалгах чадварыг нэмсэн.
  • Суулгах, устгах дараалалд нөлөөлөхгүй мета-хамаарал (meta): somepkg шаардлагатай нэмэлт дэмжлэг.
  • RPM3 форматаар тоон гарын үсгийг ашиглахыг албадахын тулд rpmsign-д "--rpmv3" сонголтыг нэмсэн.
  • Баримт бичиг, жишээ тохиргооны файлууд болон бусад холбогдох өгөгдлүүдийг суулгахыг алгасах "--excludeartifacts" суулгах сонголтыг нэмсэн.
  • RPMv3 болон beecrypt болон NSS крипто арын хэсэгт зориулсан дэмжлэг хуучирсан.
  • DSA2 (gcrypt) болон EdDSA-д зориулсан дэмжлэг нэмэгдсэн.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх