Rust-da yenidən yazılmış GNU Coreutils-ə yeniləmə

uutils coreutils 0.0.12 alət dəstinin buraxılışı təqdim olunur, onun çərçivəsində Rust dilində yenidən yazılmış GNU Coreutils paketinin analoqu hazırlanır. Coreutils sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln və ls daxil olmaqla yüzdən çox kommunal proqramla gəlir. Eyni zamanda, uutils findutils 0.3.0 paketi GNU Findutils dəstindən (tap, tap, updatedb və xargs) kommunal proqramların Rust-da tətbiqi ilə buraxıldı.

Layihənin yaradılmasına və Rust dilindən istifadə edilməsinə səbəb başqaları ilə yanaşı Windows, Redox və Fuchsia platformalarında işləyə bilən Coreutils və Findutils-in çarpaz platformalı alternativ tətbiqini yaratmaq istəyidir. Uutils arasındakı digər mühüm fərq, GPL copyleft lisenziyası əvəzinə MIT İcazəli Lisenziyası altında paylanmasıdır.

Hazırda 88 kommunal proqramın tətbiqi tam olaraq GNU Coreutils ilə paritetə ​​gətirilib. Fərdi çatışmazlıqlar cp, dd, date, df, install, ls, more, sort, split, tail və test daxil olmaqla 18 utilitdə qeyd olunub. Yalnız stty kommunal tətbiq olunmamış qalır. GNU Coreutils layihəsindən test paketini keçərkən 214 test uğurla həyata keçirilir, lakin Rust analoqu hələ 313 testdən keçmir. Eyni zamanda, layihənin inkişafının intensivliyi nəzərəçarpacaq dərəcədə artmışdır - bir il əvvəl 400-470 tərtibatçıdan 20-50 əvəzinə 30-60 tərtibatçıdan ayda 3-8 yamaq əlavə olunur.

Rust-da yenidən yazılmış GNU Coreutils-ə yeniləmə

Ən son nailiyyətlər arasında performansın optimallaşdırılması qeyd olunur - hazırkı vəziyyətdə, baş və kəsmə kimi bir çox kommunal, performans baxımından GNU Coreutils-in seçimlərindən əhəmiyyətli dərəcədə üstündür. Test paketinin əhatə dairəsi bütün kodların 55%-dən 75%-ə qədər genişləndirilib (80% kifayət qədər hədəfdir). Kod texniki xidmətin sadələşdirilməsi üçün yenidən işlənmişdir, məsələn, səhvlərin idarə edilməsi müxtəlif proqramlarda birləşdirilmişdir və giriş hüquqları ilə işləmək üçün kod chgrp və chown-da birləşdirilib. GNU Coreutils ilə uyğunluğu yaxşılaşdırmaq üçün çoxsaylı dəyişikliklər əlavə edildi.

Gələcək üçün planlara stty yardım proqramının tətbiqi, GNU Coreutils ilə uyğunluğun yaxşılaşdırılması üzrə davamlı iş, icra olunan faylların ölçüsünü azaltmaq üçün optimallaşdırmaların əlavə edilməsi, həmçinin GNU Coreutils və GNU əvəzinə Debian və Ubuntu-da uutils utilitlərindən istifadə üzrə davamlı təcrübələr daxildir. Findutils (uutils-in əsas tərtibatçılarından biri əvvəllər Clang kompilyatorundan istifadə edərək Debian GNU/Linux qurmaq layihəsi üzərində işləyirdi). Bundan əlavə, macOS üçün uutils-coreutils paketinin hazırlanması, NixOS-da GNU Coreutils-in uutils coreutils ilə əvəz edilməsi ilə bağlı təcrübələr, Apertis paylanmasında defolt olaraq uutils coreutils istifadə etmək niyyəti və Redox ƏS üçün uutils dəstinin uyğunlaşdırılması qeyd olunur.

Mənbə: opennet.ru

Добавить комментарий