Release van uutils 0.9, een variant van GNU Coreutils in Rust

De uitgave van het uutils coreutils-project 0.9.0 (Rust Coreutils) is uitgebracht, dat een alternatief ontwikkelt voor het GNU Coreutils-pakket, geschreven in de Rust-taal. Coreutils bevat meer dan honderd hulpprogramma's, waaronder sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln en ls. Het doel van het project is om een cross-platform alternatieve implementatie van Coreutils te creƫren, die onder andere kan werken op Windows-, Redox- en Fuchsia-platforms.

Rust Coreutils
is standaard ingeschakeld in de release van Ubuntu 25.10 en gedeeltelijk in Ubuntu 26.04. Rust Coreutils wordt ook gebruikt in de distributies AerynOS (Serpent OS) en Apertis (ontwikkeld door Collabora). In tegenstelling tot GNU Coreutils wordt de implementatie in Rust verspreid onder de permissieve MIT-licentie, in plaats van de copyleft GPL-licentie. Daarnaast worden door hetzelfde team van ontwikkelaars ook Rust-analogen ontwikkeld van de util-linux-, diffutils-, findutils-, procps- en acl-hulpprogramma's, evenals de programma's sed en login.

In de nieuwe versie van Rust Coreutils:

  • Het compatibiliteitsniveau met de referentieset van tests voor GNU Coreutils was 90,58% (was 94,74%). 625 tests zijn succesvol uitgevoerd, wat er 5 minder zijn dan in de vorige versie (630). 56 tests zijn mislukt (was 21), ƩƩn test leidde tot een fout, en 8 tests zijn overgeslagen (was 14). De afname van het compatibiliteitsniveau wordt verklaard door de update van de testset naar de release-status van GNU Coreutils 9.11, waarin 25 nieuwe tests zijn toegevoegd.
  • 44 kwetsbaarheden zijn verholpen, die zijn aangetoond tijdens een audit uitgevoerd door Zellic. De meeste kwetsbaarheden zijn het gevolg van afwijkend gedrag van GNU coreutils of een race-voorwaarde die het mogelijk maakt gegevens te wijzigen na de validatie van informatie, maar vóór de uitvoering van de operatie, bijvoorbeeld door een bestand te vervangen door een symbolische link in de tijd tussen de voltooiing van de controle en het begin van de uitvoering van de operatie. In de context van het gebruik van de hulpprogramma's cp, chmod en mv in systeemskripts die met root-rechten worden uitgevoerd, maken dergelijke kwetsbaarheden het mogelijk om willekeurige bestanden te kopiĆ«ren of te overschrijven. Ter bescherming tegen kwetsbaarheden veroorzaakt door race-voorwaarden, is in het project de module uucore::safe_copy ingeschakeld. Informatie over kwetsbaarheden is in een apart bericht gepubliceerd.
  • Het vertalen van hulpprogramma's naar het crate-pakket rustix in plaats van het crate-pakket nix is voortgezet. De hulpprogramma's id, tr, timeout, sort, wc, tail, cp, who en factor zijn naar rustix verhuisd.
    De code is schoongemaakt van unsafe-operaties in verschillende hulpprogramma's.
  • In de hulpprogramma's cat, wc, head, tail, yes, cp, tee en unexpand zijn invoer-/uitvoerhandlers op basis van systeemaanroepen splice(), tee() en pipe() gebruikt, waardoor de werking is versneld door onnodig kopiĆ«ren van gegevens tussen buffers te vermijden.
  • De compatibiliteit met GNU Coreutils is verbeterd voor de hulpprogramma's numfmt, date, tr, cksum, factor, head, stat en sort.
  • Voor de hulpprogramma's ln, dd, mktemp en tty is ondersteuning voor bouwen in het WebAssembly-formaat en het gebruik van de WASI-interface (WebAssembly System Interface) toegevoegd.
  • De mogelijkheden zijn uitgebreid, problemen zijn opgelost en ontbrekende opties zijn toegevoegd voor de hulpprogramma's cat, chroot, cksum,
    cp, date, dd, df, dirname, du, echo, env, expr, factor, fmt, head, id, install, join, ln, logname, ls, md5sum, mkdir, mknod, mktemp, more, mv, nl, nohup, nproc, numfmt, od, paste, pinky, pr, realpath, rm, rmdir, shred, sort, split, stat, stdbuf, stty, sum, sync, tail, tee, timeout, touch, tr, tty, unexpand, uniq, uptime, wc, who, yes.
  • Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster