Izdanje uutils 0.3, varijanta GNU Coreutils na jeziku Rust

Objavljen je izdanak projekta uutils coreutils 0.3.0 (Rust Coreutils), koji razvija analog paketa GNU Coreutils, napisan na jeziku Rust. U coreutils je uključeno više od stotinu alata, uključujući sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln i ls. Cilj projekta je stvoriti višekratnu alternativnu implementaciju Coreutils, sposobnu za rad na platformama Windows, Redox i Fuchsia.

Rust Coreutils se po defaultu koristi u izdanju Ubuntu 25.10 i primenjuje se u distribucijama AerynOS (Serpent OS) i Apertis (koji razvija kompanija Collabora). Za razliku od GNU Coreutils, Rust implementacija se distribuira pod permisivnom licencom MIT, umesto copyleft licence GPL. Dodatno, ista tim programera razvija napisane na Rust analoge alata util-linux, diffutils, findutils i procps, kao i programa sed i login.

U novoj verziji Rust Coreutils:

  • Značajno je poboljšana izvedba nekih alata, primjerice, u usporedbi s GNU Coreutils alat sort sada je brži 3.72 puta pri uobičajenom sortiranju i 1.46 puta pri sortiranju brojeva, base64 je brži 1.2 puta, expand 1.8 puta, unexpand — 1.5 puta, nl — 1.57 puta, fold — 1.19 puta, „uniq -c“ 1.13 puta.
  • Na temelju alata CodSpeed stvorena je infrastruktura za praćenje performansi. U sustavu kontinuirane integracije osigurano je otkrivanje regresija u performansama. Dodani su testovi performansi za 15 alata, među kojima sort, ls, uniq, du i base64.
  • Za alate rm, du, chmod i chgrp implementirano je sigurno rukovanje relativnim putanjama direktorija, temeljeno na korištenju funkcija openat i unlinkat.
  • Povećana je sigurnost koristeći crate-paket nix umjesto unsafe poziva libc.
  • Poboljšana je obrada grešaka i približena je GNU Coreutils obradi grešaka u mnogim alatima.
  • Poboljšana je kompatibilnost s Coreutils pri radu s putanjama datoteka koje sadrže i ne sadrže UTF8 znakove.
  • Poboljšana je kompatibilnost s referentnim testnim skupom GNU Coreutils, pri čemu je uspješno izvršeno 532 testa (u prethodnoj verziji 538), 68 (52) testova završilo je neuspjehom, a 33 (27) testa je propušteno. Proglašena je razina kompatibilnosti 83.91% (bila je 87.06%). Smanjenje razine kompatibilnosti objašnjava se dodavanjem 16 novih testova u testni skup.
  • U alatu date implementirana je opcija „—reference=file“ za prikaz vremena modifikacije datoteke. Zbog nedostatka ove opcije u Ubuntu prestao je raditi skript za automatsku provjeru prisutnosti ažuriranja. U date je također konsolidirana logika analize vremena, poboljšana je kompatibilnost s GNU date pri implementaciji opcije „-d“ i dodana je oznaka „—resolution“ za ispis podataka o točnosti mjerenja vremena.
  • Implementirane su opcije: „basenc —base58“, „id -a“, „ls -f“, „pinky —lookup“, „realpath -E“, „rm —progress“.
  • Razširjene možnosti, odpravljene težave in dodane manjkajoče možnosti za pripomočke base64, basenc, chgrp, chmod, cksum, cp, csplit, date, df, dirname, du, expand, expr, fold, hashsum, hostname, id, install, ln, ls, mv, nl, nohup, numfmt, od, pinky, ptx, realpath, rm, seq, sort, stat, stdbuf, stty, tail, timeout, touch, tsort, unexpand, uniq, uname, wc, who, uucore.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster