Нові випуски варіантів coreutils та findutils, переписаних мовою Rust

Доступний випуск інструментарію uutils coreutils 0.0.18, у рамках якого розвивається аналог пакету GNU Coreutils, переписаний мовою Rust. До складу coreutils входить більше ста утиліт, включаючи sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln та ls. Метою проекту є створення кросплатформної альтернативної реалізації Coreutils, здатної працювати у тому числі на платформах Windows, Redox та Fuchsia. На відміну від GNU Coreutils, реалізація на Rust поширюється під пермісивною ліцензією MIT, замість копілефт-ліцензії GPL.

Основні зміни:

  • Поліпшено сумісність із еталонним тестовим набором GNU Coreutils, при проходженні якого успішно виконано 340 тестів, 210 тестів завершилися невдачею, а 50 тестів було пропущено. Як еталонний задіяний випуск GNU Coreutils 9.2.
    Нові випуски варіантів coreutils та findutils, переписаних мовою Rust
  • Розширені можливості, покращена сумісність і додані відсутні опції для утиліт 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, sleep, stdbuf, stty, tail, touch, timeout, tr, uname, uniq, utmpx, uptime, wc.
  • В утилітах ln, cp і mv покращено роботу інтерактивного режиму (-i).
  • Покращена обробка сигналів в утилітах yes, tee та timeout.
  • Для визначення терміналу здійснено перехід на пакет is_terminal замість atty.

Одночасно випущено пакет uutils findutils 0.4.0 з реалізацією мовою Rust утиліт з набору GNU Findutils (find, locate, updatedb та xargs). У новій версії:

  • Додано підтримку GNU-сумісної функції printf.
  • Реалізована утиліта xargs.
  • Додано підтримку регулярних виразів, POSIX-масок та підстановок «{}».
  • В утиліту find додана підтримка опцій "-print0", "-lname", "-ilname", "-empty", "-xdev", "-and", "-P", "-", "-quit", "-mount", "-inum" та "-links".

Джерело: opennet.ru

Додати коментар або відгук