Nowe wydania wariantów coreutils i findutils przepisane w Rust

Dostępna jest wersja zestawu narzędzi uutils coreutils 0.0.18, w ramach którego rozwijana jest analogia pakietu GNU Coreutils, przepisana w języku Rust. Coreutils zawiera ponad sto narzędzi, w tym sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln i ls. Celem projektu jest stworzenie wieloplatformowej alternatywnej implementacji Coreutils, zdolnej do działania m.in. na platformach Windows, Redox i Fuchsia. W przeciwieństwie do GNU Coreutils, implementacja Rusta jest rozpowszechniana na liberalnej licencji MIT, a nie na licencji typu copyleft GPL.

Główne zmiany:

  • Poprawiona kompatybilność z zestawem testów porównawczych GNU Coreutils, który przeszedł 340 testów, nie zdał 210 testów i pominął 50 testów. Wersja referencyjna to GNU Coreutils 9.2.
    Nowe wydania wariantów coreutils i findutils przepisane w Rust
  • Rozszerzone możliwości, poprawiona kompatybilność i dodane brakujące opcje narzędzi cksum, chmod, chroot, comm, cp, cut, date, dd, du, Expand, env, Factor, hashsum, install, ln, ls, mktemp, mv, nice, nproc , od, ptx, pwd, rm, shred, sen, stdbuf, stty, ogon, dotyk, limit czasu, tr, uname, uniq, utmpx, uptime, wc.
  • Tryb interaktywny (-i) został ulepszony w narzędziach ln, cp i mv.
  • Ulepszone przetwarzanie sygnału w narzędziach tak, tee i timeout.
  • Aby zdefiniować terminal, przeszliśmy na pakiet is_terminal zamiast atty.

W tym samym czasie wydano pakiet uutils findutils 0.4.0 z implementacją w Rust narzędzi z zestawu GNU Findutils (find,location, updateb i xargs). W nowej wersji:

  • Dodano obsługę funkcji printf zgodnej z GNU.
  • Zaimplementowano narzędzie xargs.
  • Dodano obsługę wyrażeń regularnych, masek POSIX i podstawień „{}”.
  • Narzędzie find dodało obsługę opcji „-print0”, „-lname”, „-ilname”, „-empty”, „-xdev”, „-and”, „-P”, „—”, „- wyjdź”, „-mount”, „-inum” i „-links”.

Źródło: opennet.ru

Dodaj komentarz