Nouvelles versions des variantes coreutils et findutils réécrites en Rust

La version de la boîte à outils uutils coreutils 0.0.18 est disponible, dans laquelle un analogue du package GNU Coreutils, réécrit en langage Rust, est en cours de développement. Coreutils est livré avec plus d'une centaine d'utilitaires, dont sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln et ls. L'objectif du projet est de créer une implémentation alternative multiplateforme de Coreutils, capable de fonctionner sur les plateformes Windows, Redox et Fuchsia, entre autres. Contrairement à GNU Coreutils, l'implémentation de Rust est distribuée sous la licence permissive MIT, au lieu de la licence copyleft GPL.

Les principaux changements:

  • Compatibilité améliorée avec la suite de tests de référence GNU Coreutils, qui a réussi 340 tests, échoué 210 tests et ignoré 50 tests. La version de référence est GNU Coreutils 9.2.
    Nouvelles versions des variantes coreutils et findutils réécrites en Rust
  • Capacités étendues, compatibilité améliorée et ajout d'options manquantes pour les utilitaires 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.
  • Le mode interactif (-i) a été amélioré dans les utilitaires ln, cp et mv.
  • Traitement du signal amélioré dans les utilitaires yes, tee et timeout.
  • Pour définir un terminal, nous sommes passés au package is_terminal au lieu de atty.

Dans le même temps, le package uutils findutils 0.4.0 a été publié avec une implémentation dans Rust des utilitaires de l'ensemble GNU Findutils (find, Locate, Updateb et xargs). Dans la nouvelle version :

  • Ajout de la prise en charge de la fonction printf compatible GNU.
  • L'utilitaire xargs a été implémenté.
  • Ajout de la prise en charge des expressions régulières, des masques POSIX et des substitutions "{}".
  • L'utilitaire de recherche a ajouté la prise en charge des options "-print0", "-lname", "-ilname", "-empty", "-xdev", "-and", "-P", "—", "- quitter", "-mount", "-inum" et "-links".

Source: opennet.ru

Ajouter un commentaire