Ġie ppubblikat ir-rilaxx tal-proġett posixutils-rs 0.2.1, immirat li jiżviluppa fil-lingwa Rust ġabra ta’ utilitajiet tal-linja tal-kmand imsemmija fl-istandard POSIX u li jissodisfaw ir-rekwiżiti tiegħu (cp, mv, awk, make, vi, find, sort, wc, xargs, sh, m4, sed, eċċ.). Matul l-iżvilupp, kull meta jkun possibbli, jintużaw pakketti tal-kannestri eżistenti. Il-kodiċi posixutils-rs huwa mqassam taħt il-liċenzja MIT.
Il-proġett huwa ffukat primarjament fuq il-kisba ta 'konformità mar-rekwiżiti tal-ispeċifikazzjoni POSIX.2024 u ma jippjanax li jipprovdi kompatibilità mal-utilitajiet GNU, li l-funzjonalità tagħhom hija pperċepita mill-awturi bħala minfuħa bla raġjonevoli. Madankollu, posixutils-rs qed jippjana li jimplimenta l-aktar għażliet ta 'utilità GNU avvanzati popolari li jinsabu fl-iskripts eżistenti.
Id-differenzi mill-proġett uutils, li jiżviluppa l-implimentazzjoni tal-GNU Coreutils f'Rust, jinkludu ambitu usa' ta' utilitajiet, inkluż, fost affarijiet oħra, il-ħolqien ta' komponenti tas-sistema POSIX bħal vi, awk, bc, m4, cron u l-kompilatur c99, kif ukoll approċċ minimalistiku , li jimplika li jipprovdi biss is-sett minimu meħtieġ ta 'għażliet definiti fl-ispeċifikazzjoni POSIX jew li huma problematiċi biex wieħed jgħaddi mingħajrhom. Il-programmi fis-suite posixutils-rs huma inizjalment fornuti bħala kodiċi awtonomu li jista 'jintuża fi proġetti oħra.
Bħalissa, 55 utilità żviluppati mill-proġett huma konformi mal-POSIX u jinsabu fl-istadju tal-kopertura tat-test, 22 utilità jipprovdu l-funzjonalità meħtieġa (iżda l-kopertura tat-test għadha ma ġietx implimentata), 20 jinsabu fl-istadju tal-abbozz, u x-xogħol fuq 44 utilità għadu ma ġiex implimentat. għadu beda. Fost l-utilitajiet b'funzjonalità implimentata: awk, basename, bc, cp, cut, chown, data, diff, file, find, grep, ls, nice, ps, sort, strings, tail, tr, tty, wc, uniq. Fost l-utilitajiet, xogħol li fuqu għadu ma bedax: crontab, c17, cflow, ctags, gettext, ed, ex, iconv, lex, locale, mailx, make, patch, pax, sed, sh, sccs, yacc, uucp, vi .
Bidliet fir-rilaxx il-ġdid jinkludu ż-żieda ta 'implimentazzjonijiet tal-utilitajiet awk, m4, ps, realpath, join, time, fuser u gencat, kif ukoll appoġġ inizjali għal xogħol f'ambjenti bbażati fuq il-librerija C musl u l-forniment tal-ftw librerija għat-tellieqa tat-traversal tas-siġar tad-direttorju protett mill-istat.
Barra minn hekk, nistgħu ninnotaw it-tħabbira tal-proġett rav1d, li qed jiżviluppa decoder ta 'prestazzjoni għolja għall-format ta' kodifikazzjoni tal-vidjo AV1, miktub bil-lingwa Rust. L-iżvilupp jitwettaq billi l-kodiċi tad-decoder tal-librerija dav1d, li huwa kkaratterizzat minn prestazzjoni għolja, jiġi portat għal Rust. Il-port ippreparat huwa kompletament kompatibbli mal-API tal-librerija dav1d. L-għażla għall-port ta 'librerija eżistenti minflok ma tikteb il-verżjoni tagħna stess hija spjegata mix-xewqa li tuża decoder diġà ppruvat u ttestjat bħala bażi sabiex jiġu evitati problemi ta' kompatibilità possibbli u tqis l-intricacies kollha ta 'ħidma mal-format AV1.
Fil-forma attwali tagħha, l-implimentazzjoni ppreparata ta 'rav1d hija 6% wara dav1d fil-prestazzjoni, iżda fil-futur, wara l-ottimizzazzjoni tal-kodiċi, huwa ppjanat li tinkiseb parità fil-prestazzjoni. Biex tinkiseb prestazzjoni għolja, intuża approċċ li fih il-funzjonijiet bażiċi għad-dekodifikazzjoni tal-valuri primittivi huma implimentati f'assemblatur fil-forma ta 'blokki mhux sikuri (jintuża kodiċi ta' assemblaġġ minn dav1d), li d-data li fiha tiġi riċevuta wara l-iċċekkjar bl-analiżi tal-flussi funzjonijiet miktuba f'Rut (esperjenza tal-passat fl-identifikazzjoni ta 'vulnerabbiltajiet fid-decoders tal-vidjow turi li l-problemi jinqalgħu prinċipalment fil-kodiċi tal-parsing tal-format ta' livell għoli, aktar milli fl-operazzjonijiet tad-dejta ta 'livell baxx).
Sors: opennet.ru
