ĂshtĂ« publikuar lĂ«shimi i projektit uutils coreutils 0.4.0 (Rust Coreutils), i cili zhvillon njĂ« analog tĂ« paketĂ«s GNU Coreutils, tĂ« shkruar nĂ« gjuhĂ«n Rust. NĂ« grupin coreutils pĂ«rfshihen mĂ« shumĂ« se njĂ«qind utilitete, duke 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 Cross-platform tĂ« Coreutils, i cili ndihmon edhe nĂ« platformat Windows, Redox dhe Fuchsia.
Rust Coreutils është aktivizuar si standard në shpërndarjen Ubuntu 25.10 dhe përdoret në shpërndarjet AerynOS (Serpent OS) dhe Apertis (në zhvillim nga kompania Collabora). Ndryshe nga GNU Coreutils, implementimi në Rust shpërndahet me një licencë të lehtë MIT, në vend të licencës copyleft GPL. Po ashtu, ekipi i njëjtë i zhvilluesve po zhvillon alternativa të shkruara në Rust për paketat e utiliteteve util-linux, diffutils, findutils dhe procps, si dhe për programet sed dhe login.
Në versionin e ri të Rust Coreutils:
- ĂshtĂ« pĂ«rmirĂ«suar kompatibiliteti me setin e standardeve testuese tĂ« GNU Coreutils, gjatĂ« kalimit tĂ« tĂ« cilit janĂ« realizuar me sukses 544 teste, 12 mĂ« shumĂ« se nĂ« versionin e kaluar (532). 56 (68) teste pĂ«rfunduan me dĂ«shtim, ndĂ«rsa 33 (33) teste u injoruan. TĂ« deklaruar nga niveli i kompatibilitetit Ă«shtĂ« 85.80% (ishte 83.91%).
- NĂ« utilitetin data Ă«shtĂ« pĂ«rmirĂ«suar kompatibiliteti me GNU date pĂ«r procesimin e zonave tĂ« kohĂ«s (Ă«shtĂ« shtuar mundĂ«sia e tregimit tĂ« emrave tĂ« shkurtuar tĂ« zonave tĂ« kohĂ«s nĂ« opsionin âset).
- Në utilitetin factor është përdorur paketa num_prime për të shpejtuar faktorizimin e llojeve u64/u128.
- Në utilitetin tsort, implementimi i algoritmit DFS është kaluar nga një metodë rekurzive në një metodë iteruese për të parandaluar mbushjen e stack-ut.
- Në utilitetin cksum është realizuar mbështetje për hash SHA2 dhe SHA3. Janë shtuar teste për të ndjekur ndryshimin e performancës së cksum. Funksionaliteti hashsum është kaluar në cksum.
- Në utilitetin mkdir është eliminuar mbushja e stack-ut që shkaktonte përfundimin e papritur kur krijohej një numër i madh (mbi 200) katalogësh të nënshkruar.
- Në utilitetet stdbuf dhe uptime është realizuar mbështetje për platformën OpenBSD.
- ĂshtĂ« pĂ«rmirĂ«suar ndĂ«rtimi dhe testimi nĂ« platformĂ«n FreeBSD.
- Janë kryer përmirësime të përgjithshme për të rritur portabilitetin.
- Janë zgjeruar mundësitë, janë eliminuar probleme dhe janë shtuar opsionet që mungonin për utilitetet base64, cat, chown, chsum, date, dd, du, factor, hashsum, install, ls, mkdir, od, printenv, printf, readlink, stdbuf, timeout, truncate, tsort, uptime, uudoc.
Gjithashtu, mund të theksohet që ka një shkëputje në sjelljen e utilitetit "du" nga grupet uutils dhe GNU Coreutils, që u shfaq pas kalimit të Ubuntu 25.10 në uutils. Zhvilluesit ende nuk kanë vendosur nëse të interpretojnë këtë shkëputje si një gabim, pasi nga ana tjetër sjellja e uutils ka logjikë dhe seti testues i GNU Coreutils nuk zbulon probleme, por nga ana tjetër, moskombtaria me GNU Coreutils është e parashikuar të trajtohet si gabim dhe sjellja e Busybox është në përputhje me GNU Coreutils.
Një sjellje e ndryshme vërehet kur në numrin e argumenteve të utilitetit "du" specifikohen disa katalogë, në situatë kur disa prej katalogëve janë nënkatalogë të tjerë (për shembull, /var dhe /var/log). Uutils tregon madhësinë aktuale të secilit katalog të veçantë, ndërsa në rreshtin përfundimtar shfaq madhësinë totale të të gjithë katalogëve të specifikuar. GNU Coreutils tregon në rreshtin përfundimtar madhësinë aktuale që katalogët e specifikuar zënë në disk, por në listën e ndarë tregon madhësitë e secilit katalog me përjashtim të katalogëve të nënshkruar, për shkak të së cilës madhësia e tyre është më e vogël se madhësia aktuale. Për më tepër, vlerat e shfaqura në GNU Coreutils dhe Busybox ndryshojnë në varësi të rendit të specifikimit të katalogëve.
Për shembull, gjatë kontrollit të madhësisë së katalogëve " /var/log" dhe "/var", përkatësisht 1540 dhe 35495 byte, në GNU Coreutils do të shfaqet: du -smc /var/log /var 1540 /var/log 33955 /var # më pak se madhësia aktuale 35495 total du -smc /var /var/log 35495 /var # vetëm /var është shfaqur dhe /var/log nuk është shfaqur 35495 total
Në uutils: du -smc /var/log /var 1540 /var/log 35495 /var 37033 total # më shumë se madhësia aktuale, por përputhet me shumën e /var dhe /var/log du -smc /var /var/log 35495 /var 1540 /var/log 37033 total # më shumë se madhësia aktuale, por përputhet me shumën e /var dhe /var/log
Në Busybox: du -smc /var/log /var 1540 /var/log 33955 /var # më pak se madhësia aktuale 35495 total du -smc /var /var/log 35495 /var # vetëm /var është shfaqur dhe /var/log nuk është shfaqur 35495 total
Burimi: opennet.ru
