The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU Coreutils с 87% до 96%"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU Coreutils с 87% до 96%"  +/
Сообщение от opennews (??), 03-Фев-26, 10:01 
Опубликован выпуск проекта uutils coreutils 0.6.0 (Rust Coreutils), развивающего аналог пакета GNU Coreutils, написанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, среди прочего способной работать на платформах Windows, Redox и Fuchsia...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=64730

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


2. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +6 +/
Сообщение от Аноним (2), 03-Фев-26, 10:02 
>Проведена оптимизация производительности утилит base32, base64, basenc и df.

Посмотрел код. Хочешь оптимизаций добавляй unsafe. Чудес не бывает.

Ответить | Правка | Наверх | Cообщить модератору

4. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +1 +/
Сообщение от Аноним (4), 03-Фев-26, 10:10 
Не обязательно. Много где SWAR хватает.
Там много вот такого

/// `geteuid()` returns the effective user ID of the calling process.
pub fn geteuid() -> uid_t {
    unsafe { libc::geteuid() }
}

Оно и понятно, зачем: на границе libc многие коноплятора заканчиваются.

Ответить | Правка | Наверх | Cообщить модератору

6. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  –1 +/
Сообщение от Аноним (4), 03-Фев-26, 10:20 
Самофикс: без libc можно обойтись раскладкой аргументом по регистрах и вызовом syscall в asm!-блоке. Закат солнца вручную, да, но оно везде так.
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +2 +/
Сообщение от Аноним (-), 03-Фев-26, 11:01 
> раскладкой аргументом по регистрах и вызовом syscall в asm!-блоке
> в asm!-блоке

Который точно также будет unsafe и ты поменяешь шило на мыло.
Какой смысл?

Ответить | Правка | Наверх | Cообщить модератору

17. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  –2 +/
Сообщение от warlock66613email (ok), 03-Фев-26, 11:20 
> Который точно также будет unsafe

Он не точно так же unsafe. В большинстве мест в Rust unsafe нужен в тех местах, где код может стать unsound если программист не проследит. Но ассемблерные вставки всегда sound. Так что unsafe в этом случае имеет иной смысл и просто синоним "я не боюсь".

Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (9), 03-Фев-26, 10:36 
Вы специально так криво форматируете?
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

10. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (4), 03-Фев-26, 10:52 
Я случайно форматирование.
Ответить | Правка | Наверх | Cообщить модератору

33. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  –1 +/
Сообщение от Аноним (33), 03-Фев-26, 12:12 
Какой ужасный синтаксис, где return?
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

11. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  –1 +/
Сообщение от Аноним (11), 03-Фев-26, 10:57 
> Хочешь оптимизаций добавляй unsafe. Чудес не бывает

unsafe никак не связан с оптимизациями. Он лишь отключает запрет на доступ к нескольким небезопасным возможностям (типа разыменовантя сырых указателей) во время компиляции.

Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

26. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +2 +/
Сообщение от Феникс123 (?), 03-Фев-26, 11:34 
Что позволяет применять оптимизации которые иначе компилятор не допускает т.к. не может просчитать их безопасность.

Я это тоже заметил в расте, если код у тебя safe то постоянно добавляются накладные расходы, т.к. компилятор много чего просчитать не может.

Ответить | Правка | Наверх | Cообщить модератору

34. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (34), 03-Фев-26, 12:22 
> если код у тебя safe то постоянно добавляются накладные расходы

А пример привести сможете?
Напр. на godbolt с асм выхлопом.

Ответить | Правка | Наверх | Cообщить модератору

36. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (11), 03-Фев-26, 12:24 
> Я это тоже заметил в расте, если код у тебя safe то постоянно добавляются накладные расходы, т.к. компилятор много чего просчитать не может.

Safe сам по себе не добавляет накладных расходов, которые unsafe сам по себе магически убирает. Если ты САМ пишешь оптимизацию ручками, то да: ее может понадобиться частично или полностью зюобернуть в unsafe. Но само по себе наличие unsafe не дает каких-то моагических возможностей компилятору для автоматических оптимизаций.

Ответить | Правка | К родителю #26 | Наверх | Cообщить модератору

13. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (11), 03-Фев-26, 11:01 
>>Проведена оптимизация производительности утилит base32, base64, basenc и df.
> Посмотрел код. Хочешь оптимизаций добавляй unsafe

Ты куда-то не туда смотрел. 😄 Вот pull request этой оптимизации, и unsafe в коде даже не упоминается:

https://github.com/uutils/coreutils/pull/9632/changes

Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

15. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  –1 +/
Сообщение от Аноним (15), 03-Фев-26, 11:11 
> Вот pull request этой оптимизации, и unsafe в коде даже не упоминается:

Зато он получил три плюсика и одобрение у всех ему поверившим.
И заодно набросил про невозможность оптимизаций без unsafe.
Молодец!

Ответить | Правка | Наверх | Cообщить модератору

21. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +2 +/
Сообщение от Аноним (2), 03-Фев-26, 11:26 
Смотреть сюда где +

https://github.com/uutils/coreutils/commit/3c2f35837296bd4b3...

Ответить | Правка | К родителю #13 | Наверх | Cообщить модератору

22. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +2 +/
Сообщение от Аноним (2), 03-Фев-26, 11:27 
Строка 561
Ответить | Правка | Наверх | Cообщить модератору

35. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (35), 03-Фев-26, 12:22 
Смотреть сюда https://github.com/uutils/coreutils/pull/9632/commits "remove unsafe" и 2 и 3 коммит
Ответить | Правка | К родителю #21 | Наверх | Cообщить модератору

38. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (35), 03-Фев-26, 12:24 
И сюда https://github.com/uutils/coreutils/pull/9632/commits/dbeacf...

TL;DR - Изначально в pull request было unsafe - к моменту его принятия unsafe уже не было.

Ответить | Правка | Наверх | Cообщить модератору

3. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (4), 03-Фев-26, 10:05 
С такой скоростью разработки к поздней весне достигнут полного паритета по проходжению тестового набора.
Ответить | Правка | Наверх | Cообщить модератору

5. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от ebassi (?), 03-Фев-26, 10:18 
К тому времени Убунта 26.04 появится
Ответить | Правка | Наверх | Cообщить модератору

30. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (-), 03-Фев-26, 11:54 
> К тому времени Убунта 26.04 появится

Будем надеяться что они всё успеют и утилиты будут поставляться с LTS версией.
Может еще sudo-rs затянут.

Ответить | Правка | Наверх | Cообщить модератору

8. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +10 +/
Сообщение от Маяковский (?), 03-Фев-26, 10:34 
где C++, там каждый байт — граната.
где Rust, там каждая строка — петля.
Один рванёт — и нету результата.
Другой удавит, подло, втихаря.
Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +6 +/
Сообщение от Аноним (35), 03-Фев-26, 11:17 
> В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL.

Настоящая причина создания этого проекта.

Ответить | Правка | Наверх | Cообщить модератору

19. Скрыто модератором  –1 +/
Сообщение от mos87 (ok), 03-Фев-26, 11:24 
Ответить | Правка | Наверх | Cообщить модератору

24. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (24), 03-Фев-26, 11:33 
> Настоящая причина создания этого проекта.

Так отлична же причина!
Линукс начал очищаться от запретительной GPLv3 в пользу свободных лицензий.
Как тут не порадоваться))

А заодно со временем избавится от гнутых версий util-linux, diffutils, findutils, procps, acl, sed и login. Плюс заменит древнюю дыряху на нормальный язык.
Шикарно же! Тот линукс, о котором мечтают все адекватные люди.

Ответить | Правка | К родителю #16 | Наверх | Cообщить модератору

27. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (35), 03-Фев-26, 11:42 
Вместо бессмысленных споров о свободе хотела бы заметить, что корпорации стали "любить Open Source" как только они осознали, что это фактически бесплатная рабочая сила.
См. также https://opensource.guide/starting-a-project/ и https://opensource.guide/how-to-contribute/ - инструкции, созданные GitHub (в подвале сайта) - т.е. Microsoft.
Ответить | Правка | Наверх | Cообщить модератору

29. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (29), 03-Фев-26, 11:49 
> как только они осознали, что это фактически бесплатная рабочая сила

Так и есть. Они же не немамонты какие-то чтобы игнорировать такую халяву.
А вот почему эта рабочая сила бесплатная нужно задавать вопросы бороде и его прихлебателям.
Не зря же он писал в своем манифесте "ну будут программисты получать меньше, и чо?"

> opensource.guide

Первый раз вижу этот сайт.
Вы бы хотя бы какое-то Open Source Initiative привели в пример, а не вообще непонятно что.

А с другой стороны - гитхаб бесплатно предоставил ресурсы и возможности для сотен тысяч открытых проектов. Даже к тем, о которых МС даже не знает.
Не сказать им спасибо - быть крайне неблагодарной мра.. ну вы поняли.

Ответить | Правка | Наверх | Cообщить модератору

31. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (35), 03-Фев-26, 11:58 
> Open Source Initiative

Они больше по юридической части.
opensource.guide - что-то вроде "почему вам стоит заниматься open-source" ака работать за бесплатно - т.е. фокус на обычных людей.

Ответить | Правка | Наверх | Cообщить модератору

32. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (35), 03-Фев-26, 12:06 
"крайне неблагодарной" В принципе согласна, только в добрые корпорации "Don't be evil" больше не верю :)

https://en.wikipedia.org/wiki/Enshittification

Ответить | Правка | К родителю #29 | Наверх | Cообщить модератору

23. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Фонтимос (?), 03-Фев-26, 11:29 
> Достигнут уровень совместимости ... 96.28% (было 87.75%)

ага, про date тоже писали, что все пучком, а оказалось не фига, половину опций тупо заглушками реализовали...

Ответить | Правка | Наверх | Cообщить модератору

28. "Выпуск Rust Coreutils 0.6.0, повысивший совместимость с GNU ..."  +/
Сообщение от Аноним (29), 03-Фев-26, 11:44 
> ага, про date тоже писали, что все пучком

Так с date и было "было пучком" на момент написания что "всё пучком".
А почему убунтоводы взяли версию месчной давности - вопрос к убунтоидам.

Ну и нужно понимать что это за цифры. Это успешность прохождения тестового набора GNU Coreutils. Если что-то тестом не покрыто, то отличие в имплементации будет даже при 100% прохождении тестов.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2026 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру