Новые выпуски вариантов 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

Добавить комментарий