Nuove versioni di coreutils e varianti findutils riscritte in Rust

È disponibile il rilascio del toolkit uutils coreutils 0.0.18, all'interno del quale è in fase di sviluppo un analogo del pacchetto GNU Coreutils, riscritto nel linguaggio Rust. Coreutils viene fornito con oltre un centinaio di utilità, tra cui sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln e ls. L'obiettivo del progetto è creare un'implementazione alternativa multipiattaforma di Coreutils, in grado di funzionare su piattaforme Windows, Redox e Fuchsia, tra le altre. A differenza di GNU Coreutils, l'implementazione di Rust è distribuita sotto la licenza permissiva MIT, invece che con la licenza copyleft GPL.

Principali modifiche:

  • Compatibilità migliorata con la suite di test benchmark GNU Coreutils, che ha superato 340 test, fallito 210 test e saltato 50 test. La versione di riferimento è GNU Coreutils 9.2.
    Nuove versioni di coreutils e varianti findutils riscritte in Rust
  • Funzionalità estese, compatibilità migliorata e aggiunte opzioni mancanti per le utilità cksum, chmod, chroot, comm, cp, cut, date, dd, du, extend, env, factor, hashsum, install, ln, ls, mktemp, mv, nice, nproc , od, ptx, pwd, rm, shred, sleep, stdbuf, stty, tail, touch, timeout, tr, uname, uniq, utmpx, uptime, wc.
  • La modalità interattiva (-i) è stata migliorata nelle utilità ln, cp e mv.
  • Elaborazione del segnale migliorata nelle utilità yes, tee e timeout.
  • Per definire un terminale, siamo passati al pacchetto is_terminal invece che ad atty.

Contemporaneamente è stato rilasciato il pacchetto uutils findutils 0.4.0 con l'implementazione in Rust delle utilità del set GNU Findutils (find, individua, updateb e xargs). Nella nuova versione:

  • Aggiunto il supporto per la funzione printf compatibile con GNU.
  • L'utilità xargs è stata implementata.
  • Aggiunto supporto per espressioni regolari, maschere POSIX e sostituzioni "{}".
  • L'utilità di ricerca ha aggiunto il supporto per le opzioni “-print0”, “-lname”, “-ilname”, “-empty”, “-xdev”, “-and”, “-P”, “—“, “- quit”, "-mount", "-inum" e "-links".

Fonte: opennet.ru

Aggiungi un commento