Utgivningen av projektet uutils coreutils 0.10.0 (Rust Coreutils), som utvecklar en alternativ version av paketet GNU Coreutils, skrivet i Rust, har publicerats. Coreutils innehÄller mer Àn hundra verktyg, inklusive sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln och ls. Projektets mÄl Àr att skapa en plattformsoberoende alternativ implementation av Coreutils, som bland annat kan anvÀndas pÄ plattformar som Windows, Redox och Fuchsia.
Rust Coreutils anvÀnds som standard i utgÄvan av Ubuntu 25.10 och delvis i Ubuntu 26.04. Rust Coreutils anvÀnds Àven i distributionerna AerynOS (Serpent OS) och Apertis (utvecklas av Collabora). Till skillnad frÄn GNU Coreutils sprids implementeringen pÄ Rust under den permissiva MIT-licensen, istÀllet för copyleft-licensen GPL. Dessutom utvecklar samma team av utvecklare Rust-baserade motsvarigheter till verktygssamlingarna util-linux, diffutils, findutils, procps och acl, samt programmen sed och login.
I den nya versionen av Rust Coreutils:
- KompatibilitetsnivÄn med den referenssatserna av testerna för GNU Coreutils var 93.48% (tidigare 90.58%). 645 tester genomfördes framgÄngsrikt, vilket Àr 20 fler Àn i den tidigare versionen (625). 29 tester misslyckades (tidigare 56), ett test resulterade i ett fel, och 15 tester blev uteslutna (tidigare 8).
- Vissa avvikelser i beteendet hos GNU Coreutils-verktygen pr, nproc, date, numfmt, ls, du, install, od, truncate, fold, head/tail, sum och stat har ÄtgÀrdats.
- Arbetet med att förstÀrka sÀkerheten för att förhindra sÄrbarheter orsakade av tidsförhÄllanden har fortsatt. Dessa sÄrbarheter kan tillÄta Àndringar i data efter att informationen har validerats, men före operationen, som till exempel att ersÀtta en fil med en symbolisk lÀnk under tiden mellan kontrollen och utförandet av operationen. I sammanhanget av att anvÀnda verktygen cp, chmod och mv i systemskript som körs med root-rÀttigheter ger sÄdana sÄrbarheter möjlighet att kopiera eller skriva över godtyckliga filer. Skyddet för verktygen touch, mkfifo, mkdir, mknod, mv, chroot, head, split och chcon har förstÀrkts.
- Arbete har utförts för att ÄtgÀrda krascher via panic-mekanismen i verktygen shuf, printf, numfmt, fmt, pr, chroot, dircolors, install, ln, touch, stat, split, expand, more, kill, cp, du, rm, runcon, sort, chown/chgrp, dirname, expr, cksum, dd, truncate, hashsum.
- Prestandaoptimering har genomförts för verktygen cksum, sum, split, expand/unexpand, base*, tee, cat, cp, mv, expr, uniq, du.
- Stöd för byggmÄl wasm32-wasip2 har lagts till.
- I verktyget mv har en funktion "âexchange" implementerats för att byta plats pĂ„ tvĂ„ filer eller kataloger.
- Verktyget install har implementerat alternativet «âreflink» och möjliggjort delning av alternativen «-C» och «âpreserve-timestamps».
- Verktyget rm har fĂ„tt alternativet «âone-file-system».
- Verktyget cut erbjuder nu stöd för multilÀsningskodningar nÀr icke-UTF-8-lokaler anvÀnds.
- För snabb berÀkning av kontrollsummor anvÀnds backend OpenSSL.
KĂ€lla: opennet.ru
