نسخه های جدید coreutils و findutils که در Rust بازنویسی شده اند

انتشار جعبه ابزار uutils coreutils 0.0.18 در دسترس است که در آن یک آنالوگ از بسته Coreutils گنو، بازنویسی شده به زبان Rust، در حال توسعه است. Coreutils با بیش از صد برنامه کاربردی از جمله sort، cat، chmod، chown، chroot، cp، date، dd، echo، hostname، id، ln و ls ارائه می‌شود. هدف این پروژه ایجاد یک پیاده‌سازی جایگزین بین پلتفرمی از Coreutils است که می‌تواند بر روی پلتفرم‌های Windows، Redox و Fuchsia و غیره اجرا شود. برخلاف GNU Coreutils، پیاده‌سازی Rust به جای مجوز کپی‌لفت GPL، تحت مجوز مجاز MIT توزیع می‌شود.

تغییرات اصلی:

  • سازگاری بهبود یافته با مجموعه تست بنچمارک گنو کوروتیلز که 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.
  • حالت تعاملی (-i) در ابزارهای ln، cp و mv بهبود یافته است.
  • پردازش سیگنال بهبود یافته در ابزارهای بله، سه راهی و زمان‌بندی.
  • برای تعریف ترمینال، به جای atty به بسته is_terminal تغییر مکان دادیم.

در همان زمان، بسته uutils findutils 0.4.0 با پیاده سازی Rust از ابزارهای مجموعه GNU Findutils (یافتن، مکانیابی، به روز رسانی b و xargs) منتشر شد. در نسخه جدید:

  • پشتیبانی از تابع printf سازگار با گنو اضافه شد.
  • ابزار xargs پیاده سازی شده است.
  • پشتیبانی از عبارات منظم، ماسک های POSIX و جایگزین های "{}" اضافه شده است.
  • ابزار Find پشتیبانی از گزینه‌های «-print0»، «-lname»، «-ilname»، «-empty»، «-xdev»، «-and»، «-P»، «—»، «- را اضافه کرده است. خروج، "-mount"، "-inum" و "-links".

منبع: opennet.ru

اضافه کردن نظر