Bol zverejnený release projektu uutils coreutils 0.11.0 (Rust Coreutils), vyvíjajúceho alternatívu balíka GNU Coreutils napísaného v jazyku Rust. Coreutils obsahuje viac než sto utilít, vrátane sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln a ls. Cieľom projektu je vytvorenie multiplatformovej alternatívnej implementácie Coreutils, medzi inými aj na platformách Windows, Redox a Fuchsia.
Rust Coreutils je predvolene zapojený do vydania Ubuntu 25.10 a čiastočne v Ubuntu 26.04. Rust Coreutils sa tiež používa v distribúciách AerynOS (Serpent OS) a Apertis (vyvíjané spoločnosťou Collabora). Na rozdiel od GNU Coreutils sa implementácia v Ruste distribuuje pod permissívnou licenciou MIT, namiesto copyleft licencie GPL. Ďalšími vyvinutými nástrojmi tímu vývojárov sú analogické súbory utilít util-linux, diffutils, findutils, procps a acl, ako aj programy sed a login.
V novej verzii Rust Coreutils:
- Úroveň kompatibility s referenčným súborom testov GNU Coreutils dosiahla 95,33% (predtým 94,44%). Úspešne sa vykonalo 653 testov, čo je o 8 viac než v predchádzajúcej verzii (645). 22 testov bolo neúspešných (predtým 29), a 15 testov bolo preskočených (predtým 15).
- Integrový nový motor pre diagnostiku problémov založený na knižnici ariadne, ktorý pri spúšťaní utilít v termináli vytvára prehľadné správy o chybách s označením argumentov príkazového riadku, kvôli ktorým nastala problém. Vizualizácia chýb je zapojená v utilitách chmod, mkdir, mkfifo, mknod, install, tr, expr, sort, numfmt, cut, env, head, tail, truncate, split, shred, stdbuf, od, seq, dd, stat, join, csplit, ls, df a du. Na vypnutie diagnostických správ je navrhnutá premenná prostredia UUTILS_DIAG.

- Pri zostavovaní release aktivované optimalizácie na základe výsledkov profilovania kódu (PGO – Profiling-guided optimization), ktoré umožňujú generovať optimalizovanejší kód na základe analýzy vlastností vykonávania programu. Podľa odhadov vývojárov vzrástla výkonnosť pri vykonávaní niektorých operácií až do 31%.
- Optimalizácia výkonu utilít cp (+32,93%), join (2,5-krát rýchlejšie ako GNU vďaka vypnutiu nadbytočných porovnaní lokalít), od, ptx (+4%), nl, tail, expand, unexpand, numfmt a sort. Výkonové operácie sa začali považovať za pomalšie než v GNU Coreutils.
- Opravené boli jednotlivé nezrovnalosti v správaní príkazov pr, numfmt, join, id, mkdir, fold, sort, stat, od a date s GNU Coreutils.
- Implementované špecifické pre GNU Coreutils možnosti: „uname -A“, „uname —all-labeled“, „cut -F“, „cut —whitespace-delimited“, „pr —columns“, „pr —join-lines“, „pr -f“.
- V príkazoch mv, cp, rm, chmod a stdbuf bola vykonaná práca na zlepšení bezpečnosti s cieľom zabrániť vznikom zraniteľností spôsobených pretekajúcim stavom, ktorý umožňuje zmeniť údaje po overení správnosti informácií, ale pred vykonaním operácie s nimi, napríklad zmeniť súbor na symbolický odkaz v momente medzi dokončením kontroly a začatím vykonania operácie. V kontexte používania príkazov cp, chmod a mv v systémových skriptoch spúšťaných s právami root podobné zraniteľnosti umožňujú kopírovať alebo prepísať ľubovoľné súbory.
- Bola vykonaná práca na odstránení havarijných ukončení v príkazoch split, yes, sort, stat, csplit, ls, od, nl, pr, csplit, dd, touch, tail, tac, who.
- Implementované varianty príkazov kill a uptime pre Windows.
- Bol ukončený používateľský balíčok byteorder, same-file, filetime, winapi-util, file_diff, mockstream, binary-heap-plus, compare, arrayref (nedávno bol skompromitovaný), exacl a dns-lookup v prospech funkcií z knižníc std, rustix a windows-sys.
- Do príkazov ls a comm bola pridaná podpora vlastností locale „collation“, čo umožňuje porovnávanie s ohľadom na význam znakov (napríklad pri porovnávaní sa môže ignorovať diakritika).
- Vylepšená práca s multibyte znakmi v príkazoch nl a cut.
Okrem toho je potrebné spomenúť publikáciu spoločnosti Canonical dvoch experimentálnych obrazov kontajnerov pre vývoj programov v jazyku Rust, ktoré spĺňajú špecifikáciu Dev Container. Prvý obraz obsahuje Rust 1.93, Cargo, rust-analyzer, Clippy, Rustfmt, Miri (interpret pre odhaľovanie neurčitého správania), cargo-auditable (audit zostavení), GCC, Clang, LLD, pkg-config, Just, Git, Vim, Helix, Ripgrep, Hyperfine, Bacon, xh a curl. Druhý obraz navyše obsahuje balíky pre vývoj Ubuntu: git-buildpackage, sbuild, ubuntu-dev-tools, devscripts, dh-make, dh-cargo, autopkgtest, cargo-vendor-filterer.
Zdroj: opennet.ru

