Rust Coreutils, GNU Coreutils zamjena u Rustu ide punom parom

Napor da se napiše Rust-bazirana zamjena za GNU Coreutils počinje da daje plodove, jer je nedavno objavljeno da je projekat na putu da napravi značajna poboljšanja u odnosu na prethodnu implementaciju C. Rust Coreutils takođe nastavlja da povećava nivo kompatibilnosti sa GNU Coreutils.

Projekat uutils, takođe poznat kao Rust Coreutils, ima za cilj da prepiše u Rust sve las pojedinačni uslužni programi uključeni u GNU Coreutils projekat. Prvobitno kreiran od strane Jordija Boggiana 2013. godine, projekat ima za cilj da obezbedi zamene za Coreutils programe, dodajući zaštitu istovremenosti i sigurnost memorije koju obezbeđuje Rust.

Rust Coreutils uključuje osnovne programe za obradu datoteka, procesa i teksta koji bi trebali postojati u svim operativnim sistemima baziranim na GNU-u.

Coreutils projekat je kreiran da konsoliduje tri skupa alata koji su prethodno bili odvojeno ponuđeni, Fileutils, Textutils i Shellutils, zajedno sa nizom drugih uslužnih programa. Mnogi programi uključeni u projekat, kao što su rm, du, ls i cat, postoje decenijama, a iako postoje druge implementacije, ovi uslužni programi nisu dostupni za platforme kao što je Windows u svom originalnom obliku.

Zajedno, Coreutils programi se vide kao zrelo voće za koje bi se radna verzija zasnovana na Rustu mogla proizvesti u razumnom roku. Zahtjevi za svaki uslužni program su jasni i mnogi od njih su konceptualno jednostavni., što ne znači da je posao lak.

Prema autorima, korištenje Rusta u ovom projektu pomoći će ubrzanju ovog procesa, jer su mnoge greške u memoriji i druga nedefinirana ponašanja potpuno eliminirana. Takođe otvara vrata efikasnom višenitnom radu bez istovremenosti.

Ovo može ubrzati neke programe pod određenim uslovima. Rust Coreutils također pruža priliku ne samo da se ponovo implementira Coreutils, već i poboljša funkcionalnost nekih uslužnih programa kako bi se pružilo bolje korisničko iskustvo uz održavanje kompatibilnosti sa GNU verzijama.

Na primjer, zahtjevi za značajkama koji su dugo bili odbijeni u Coreutils projektu, kao što je dodavanje opcije trake napretka za uslužne programe kao što su mv i cp, trenutno se rješavaju u ovom prepravljanju Rust jezika.

Trenutno postoje desetine saradnika koji doprinose više od 400 popravki ovom naporu svakog mjeseca i koji također nastaviti s izazovom zatvaranja jaza u kompatibilnosti ovih uslužnih programa sa uzvodnim GNU komandama.

Jedina preostala binarna za implementaciju je "stty", da će uz njihovu optimizaciju i rad na kompatibilnosti, programeri također raditi na tome da omoguće Debianu i Ubuntuu da lako pređu na Rust Coreutils prema zadanim postavkama bez potrebe za bilo kakvim posebnim podešavanjem ili konfiguracijom.

Iako je napravljen veliki napredak u dovođenju uutils u upotrebljivo stanje, biće potrebno neko vrijeme da se postigne stabilnost i zrelost GNU Coreutilsa. Također, važan aspekt uutils projekta koji treba uzeti u obzir je njegova licenca. Svi uslužni programi u projektu su licencirani pod dopuštenom MIT licencom, umjesto GNU Coreutils GPLv3 licencom.

Odluka o korištenju licence MIT-a nije bez kritika; neki od onih koji su komentarisali ovaj izbor bi više voleli da se na takav projekat primenjuje copyleft licenca.

Glavna kritika odražava argumente o licencama slobodnog softvera u prošlosti:

"Licenca koja nije zaštićena od kopiranja štetna je za slobode krajnjih korisnika, jer omogućava osobi ili organizaciji da ugradi bilo koji dio projekta u jedan uređaj ili u distribuciju drugih." softver bez davanja izvornog koda, tako da ga je nemoguće proučavati, modificirati ili poboljšati.

Takođe postoji zabrinutost da je izbor licence napravljen kako bi se maksimizirala upotreba Rusta bez razmatranja drugih efekata; Neki smatraju da je zamjena alata s GPL licencom dopuštenijim licenciranim alternativama korak unazad.

Konačno ako ste zainteresirani da saznate više o tome, detalje možete provjeriti u sledeći link.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.