ĂshtĂ« publikuar lĂ«shimi i projektit uutils coreutils 0.9.0 (Rust Coreutils), qĂ« zhvillon njĂ« ekuivalent tĂ« paketĂ«s GNU Coreutils, i shkruar nĂ« gjuhĂ«n Rust. NĂ« pĂ«rbĂ«rjen e coreutils pĂ«rfshihen mĂ« shumĂ« se njĂ«qind utilitete, pĂ«rfshirĂ« sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln dhe ls. QĂ«llimi i projektit Ă«shtĂ« krijimi i njĂ« implementimi alternativ ndĂ«r-platformĂ« tĂ« Coreutils, mes tĂ« tjerash, nĂ« tĂ« cilin mund tĂ« punojĂ« nĂ« platformat Windows, Redox dhe Fuchsia.
Rust Coreutils
është aktivizuar si parazgjedhje në lëshimin e Ubuntu 25.10 dhe pjesërisht në Ubuntu 26.04. Rust Coreutils gjithashtu përdoret në distribucione si AerynOS (Serpent OS) dhe Apertis (i zhvilluar nga Compania Collabora). Ndryshe nga GNU Coreutils, implementimi në Rust shpërndahet me licencën e lehtë MIT, në vend të licencës copyleft GPL. Së bashku me këtë, ekipi i njëjtë i zhvilluesve po i zhvillon analogët e shkruar në Rust të grupeve të utiliteteve util-linux, diffutils, findutils, procps dhe acl, si dhe programeve sed dhe login.
Në versionin e ri të Rust Coreutils:
- Niveli i përputhshmërisë me grupin referencë të testeve të GNU Coreutils kishte 90.58% (ishte 94.74%). Në mënyrë të suksesshme u përfunduan 625 teste, që janë 5 më pak se në versionin e kaluar (630). 56 teste dështuan (ishin 21), një test çoi në një gabim, dhe 8 teste u përjashtuan (ishin 14). Rënia e nivelit të përputhshmërisë shpjegohet me përditësimin e grupit të testeve në gjendjen e lëshimit të GNU Coreutils 9.11, në të cilin janë shtuar 25 teste të reja.
- Janë eliminuar 44 vulnerabilitete të zbuluara gjatë auditimit të kryer nga kompania Zellic. Shumica e vulnerabiliteteve janë shkaktuar nga mos përputhja e sjelljes me GNU coreutils ose nga një gjendje garë që lejon ndryshimin e të dhënave pas verifikimit të saktësisë së informacionit, por para kryerjes së operacionit me to, për shembull, zëvendësimi i skedarit me një lidhje simbolike në momentin midis përfundimit të verifikimit dhe fillimit të kryerjes së operacionit. Në kontekstin e përdorimit të utiliteteve cp, chmod dhe mv në skriptet sistemike të nisura me të drejtat root, këto vulnerabilitete lejojnë kopjimin ose rikrijimin e skedarëve të rastit. Për mbrojtjen nga vulnerabilitetet e shkaktuar nga situata garash, në projekt është përdorur moduli uucore::safe_copy. Informacioni mbi vulnerabilitetet është publikuar në një lajm të veçantë.
- ĂshtĂ« vazhduar pĂ«rkthimi i utiliteteve nga paketa crate rustix nĂ« paketa crate nix. Utilitetet id, tr, timeout, sort, wc, tail, cp, who dhe factor janĂ« pĂ«rkthyer nĂ« rustix.
ĂshtĂ« bĂ«rĂ« pastrimi i kodit nga operacionet unsafe nĂ« utilitete tĂ« ndryshme. - NĂ« utilitatet cat, wc, head, tail, yes, cp, tee dhe unexpand janĂ« pĂ«rfshirĂ« trajtues tĂ« hyrjes/daljes bazuar nĂ« thirjet sistemore splice(), tee() dhe pipe(), tĂ« cilat kanĂ« lejuar pĂ«rshpejtimin e punĂ«s duke pĂ«rjashtuar kopjimin e tepruar tĂ« tĂ« dhĂ«nave midis buferĂ«ve.
- ĂshtĂ« pĂ«rmirĂ«suar pĂ«rputhshmĂ«ria me utilitat GNU Coreutils numfmt, date, tr, cksum, factor, head, stat dhe sort.
- Në utilitat ln, dd, mktemp dhe tty është shtuar mbështetje për ndërtimin në formatin WebAssembly dhe për përdorimin e ndërfaqes WASI (WebAssembly System Interface).
- Janë zgjeruar mundësitë, janë eliminuar problemet dhe janë shtuar opsionet e humbura për utilitat 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.
Burimi: opennet.ru
