Det har publicerats ett utgÄvan av projektet uutils coreutils 0.7.0 (Rust Coreutils), som utvecklar en motsvarighet till GNU Coreutils-paketet, skrivet i Rust. Coreutils innehÄller över ett 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 ska kunna fungera pÄ plattformar som Windows, Redox och Fuchsia.
Rust Coreutils anvÀnds som standard i utgÄvan av Ubuntu 25.10 och anvÀnds i distributioner som AerynOS (Serpent OS) och Apertis (utvecklas av Collabora). Till skillnad frÄn GNU Coreutils, distribueras Rust-implementationen under den permissiva MIT-licensen, istÀllet för den copyleft-licens som GPL. Dessutom utvecklar samma team skrivna pÄ Rust analoger till verktygsuppsÀttningar som util-linux, diffutils, findutils, procps och acl, samt program som sed och login.
I den nya versionen av Rust Coreutils:
- NivÄn av kompatibilitet med referenstestsviten för GNU Coreutils var 94.59% (tidigare 96.28%). 629 tester har genomförts framgÄngsrikt, vilket Àr 7 fler Àn i den föregÄende versionen (622). 23 (tidigare 16) tester misslyckades, och 13 (tidigare 7) tester hoppades över. Minskningen av kompatibilitet förklaras av uppdateringen av testsviten till versionen av GNU Coreutils 9.10, dÀr 19 nya tester har lagts till. Om man rÀknar det totala antalet tester sÄ har Rust Coreutils ett genomförande av 7 fler tester Àn i förra utgÄvan.
- Den mest betydande ökningen av kompatibilitet har noterats för verktygen date, fmt, kill, ptx, numfmt och cksum. Mindre betydande förbÀttringar av kompatibilitet har observerats i verktygen cut, tac, tail, tr, uniq, od, chroot, stat, mktemp, pr, readlink, ln, kill, nproc, rm, env, sync, fmt, factor och wc.
- Understöd för Rust-biblioteket num-prime, som anvÀnds för testning i verktyget factor, har sÀkerstÀllts.
- Mer snabbare implementationer av hashfunktioner rustc-hash har anvÀnts i ls, du, tsort, shuf, mv, och foldhash i sort.
- Arbetet med ASCII-tecken i verktygen unexpand och expand har optimerats, vilket resulterade i en hastighetsökning pÄ 14% vid buffrat lÀsande.
- Minneshanteringen i verktygen shuf, split, sort och du har optimerats, vilket har lett till en hastighetsökning pĂ„ 3â6% för du, och 4% för shuf.
- Konverteringen av nummer till strÀngar i verktyget nl har pÄskyndats.
- Storleken pÄ körbara filer har minskat och starttiden för verktygen true och false har ökat.
- I mer Àn 20 verktyg, inklusive echo, date, sort, expr, hostname, id, comm, pr och dircolors, har problem med krasch vid oförmÄga att skriva till stderr (omdirigering till /dev/full) ÄtgÀrdats.
- I umask, mkdirat, mknod och andra verktyg har osÀkra libc-anrop ersatts med skyddade omslag frÄn crate-paketet nix.
- Den korrekta funktionen av alternativet "âpreserve-root" i verktyget "rm" nĂ€r symboliska lĂ€nkar anges har sĂ€kerstĂ€llts.
- Stödet för plattformarna NetBSD, Windows och NixOS har förbÀttrats. Bygget för PowerPC-arkitekturen har förbÀttrats.
- Möjligheterna har utökats, problemen har ÄtgÀrdats och saknade alternativ har lagts till för verktygen cat, cksum, chroot, comm, cp, csplit, cut, date, dd, df, dircolors, du, echo, env, expand, expr, factor, false, fmt, fold, hostname, id, install, kill, ln, ls, mktemp, mknod, mv, nl, nproc, numfmt, od, paste, pr, printfm, ptx, readlink, rm, shuf, sort, split, stat, stdbuf, stty, sync, tac, tail, test, tr, true, tsort, unexpand, uniq, uptime, vdir, wc, whoami.
KĂ€lla: opennet.ru
