Các bản phát hành mới của biến thể coreutils và findutils được viết lại bằng 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.

Sự thay đổi chính:

  • Улучшена совместимость с эталонным тестовым набором GNU Coreutils, при прохождении которого успешно выполнено 340 тестов, 210 тестов завершились неудачей, а 50 тестов были пропущены. В качестве эталонного задействован выпуск GNU Coreutils 9.2.
    Các bản phát hành mới của biến thể coreutils và findutils được viết lại bằng 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».

Nguồn: opennet.ru

Thêm một lời nhận xét