Pelepasan proyék posixutils-rs 0.2.1 parantos diterbitkeun, ditujukeun pikeun ngembangkeun dina basa Rust kumpulan utiliti garis paréntah anu disebatkeun dina standar POSIX sareng nyumponan saratna (cp, mv, awk, make, vi, find, sort, wc, xargs, sh, m4, sed, jsb). Salila pangwangunan, sabisana, bungkusan peti anu aya dianggo. Kode posixutils-rs disebarkeun dina lisénsi MIT.
Proyék ieu fokus utamana dina ngahontal minuhan sarat tina spésifikasi POSIX.2024 sarta teu rencanana nyadiakeun kasaluyuan jeung utilitas GNU, pungsionalitasna dianggap ku pangarang sakumaha unreasonably kembung. Sanajan kitu, posixutils-rs ngarencanakeun pikeun nerapkeun pilihan utiliti GNU canggih nu pang populerna kapanggih dina Aksara aya.
Béda tina proyék uutils, anu ngembangkeun palaksanaan GNU Coreutils di Rust, kalebet wengkuan utilitas anu langkung lega, kalebet, diantarana, nyiptakeun komponén sistem POSIX sapertos vi, awk, bc, m4, cron sareng c99 compiler, kitu ogé pendekatan minimalistic , nu ngakibatkeun ngan nyadiakeun set minimum diperlukeun tina pilihan didefinisikeun dina spésifikasi POSIX atawa nu masalah pikeun ngalakukeun tanpa. Program dina suite posixutils-rs mimitina disayogikeun salaku kode mandiri anu tiasa dianggo dina proyék sanés.
Ayeuna, 55 utilitas anu dikembangkeun ku proyék saluyu sareng POSIX sareng aya dina tahap liputan uji, 22 utilitas nyayogikeun fungsionalitas anu diperyogikeun (tapi sinyalna tés henteu acan dilaksanakeun), 20 aya dina tahap draf, sareng ngerjakeun 44 utilitas henteu acan. acan dimimitian. Diantara utilitas sareng fungsionalitas anu dilaksanakeun: awk, basename, bc, cp, cut, chown, date, diff, file, find, grep, ls, nice, ps, sort, strings, tail, tr, tty, wc, uniq. Diantara utilitas, padamelan anu henteu acan dimimitian: crontab, c17, cflow, ctags, gettext, ed, ex, iconv, lex, locale, mailx, make, patch, pax, sed, sh, sccs, yacc, uucp, vi .
Parobihan dina sékrési énggal kalebet tambihan palaksanaan awk, m4, ps, realpath, gabung, waktos, fuser sareng gencat utiliti, ogé dukungan awal pikeun damel di lingkungan dumasar kana perpustakaan musl C sareng penyediaan ftw. perpustakaan pikeun lomba traversal tangkal diréktori ditangtayungan kaayaan.
Salaku tambahan, urang tiasa ngémutan pengumuman proyék rav1d, anu ngembangkeun dekoder kinerja tinggi pikeun format coding video AV1, ditulis dina basa Rust. Pangwangunan dilumangsungkeun ku porting kodeu decoder perpustakaan dav1d, nu dicirikeun ku kinerja tinggi, ka Rust. Port anu disiapkeun sapinuhna cocog sareng API perpustakaan dav1d. Pilihan pikeun port perpustakaan anu tos aya tinimbang nyerat versi urang sorangan dijelaskeun ku kahayang pikeun ngagunakeun decoder anu parantos kabuktian sareng diuji salaku dasar pikeun ngahindarkeun masalah kasaluyuan anu mungkin sareng tumut kana sagala kerumitan gawé bareng format AV1.
Dina bentuk anu ayeuna, palaksanaan rav1d anu disiapkeun nyaéta 6% di tukangeun dav1d dina pagelaran, tapi ka hareup, saatos ngaoptimalkeun kode, rencanana pikeun ngahontal paritas dina pagelaran. Pikeun ngahontal prestasi anu luhur, pendekatan anu dianggo dimana fungsi dasar pikeun decoding nilai primitif dilaksanakeun dina assembler dina bentuk blok anu teu aman (kode assembly tina dav1d dianggo), data anu katampi saatos mariksa sareng parsing stream. fungsi anu ditulis dina Rust (pangalaman baheula dina ngaidentipikasi kerentanan dina dekoder vidéo nunjukkeun yén masalahna biasana timbul dina kode parsing format tingkat luhur, tinimbang dina operasi data tingkat rendah).
sumber: opennet.ru
