Uppfærsla á GNU Coreutils, endurskrifuð í Rust

Útgáfa uutils coreutils 0.0.12 verkfærasettsins er kynnt, þar sem hliðstæða GNU Coreutils pakkans, endurskrifuð á Rust tungumálinu, er í þróun. Coreutils kemur með yfir hundrað tólum, þar á meðal sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln og ls. Á sama tíma var uutils findutils 0.3.0 pakkinn gefinn út með útfærslu í Rust á tólunum úr GNU Findutils settinu (finna, finna, uppfæra b og xargs).

Ástæðan fyrir því að búa til verkefnið og nota Rust tungumálið er löngunin til að búa til aðra vettvangsútfærslu Coreutils og Findutils, sem geta keyrt á Windows, Redox og Fuchsia kerfum, meðal annarra. Annar mikilvægur munur á uutils er að því er dreift undir MIT leyfilegt leyfi, í stað GPL copyleft leyfisins.

Eins og er, hefur innleiðing á 88 tólum verið að fullu samræmd við GNU Coreutils. Einstakir gallar koma fram í 18 tólum, þar á meðal cp, dd, date, df, install, ls, more, sort, split, tail og test. Aðeins stty tólið er enn óútfært. Þegar prófunarsvítunni frá GNU Coreutils verkefninu er lokið, eru 214 próf framkvæmdar með góðum árangri, en Rust hliðstæðan stenst ekki enn 313 próf. Á sama tíma hefur styrkur verkefnaþróunar aukist verulega - 400-470 plástra bætast við á mánuði frá 20-50 forriturum í stað 30-60 frá 3-8 forriturum fyrir ári síðan.

Uppfærsla á GNU Coreutils, endurskrifuð í Rust

Meðal nýjustu afrekanna er hagræðing afkasta getið - í núverandi ástandi eru mörg tól, svo sem höfuð og skurður, verulega betri í frammistöðu en valkostir frá GNU Coreutils. Umfang prófunarsvíta hefur verið stækkað úr 55% í 75% af öllum kóða (80% er nægilegt markmið). Kóðinn hefur verið endurnýjaður til að einfalda viðhald, til dæmis hefur villumeðferð verið sameinuð í mismunandi forritum og kóða til að vinna með aðgangsrétt hefur verið sameinuð í chgrp og chown. Fjölmörgum breytingum hefur verið bætt við til að bæta samhæfni við GNU Coreutils.

Áætlanir fyrir framtíðina fela í sér innleiðingu stty tólsins, áframhaldandi vinna við að bæta samhæfni við GNU Coreutils, bæta við hagræðingu til að minnka stærð keyranlegra skráa, auk áframhaldandi tilrauna með að nota uutils tól í Debian og Ubuntu í stað GNU Coreutils og GNU Findutils (einn af aðalhönnuðum uutils vann áður að verkefni til að byggja Debian GNU/Linux með Clang þýðandanum). Auk þess er bent á undirbúning uutils-coreutils pakkans fyrir macOS, tilraunir með að skipta út GNU Coreutils fyrir uutils coreutils í NixOS, ætlunin að nota uutils coreutils sjálfgefið í Apertis dreifingunni og aðlögun á uutils settum fyrir Redox OS.

Heimild: opennet.ru

Bæta við athugasemd