The OpenNET Project / Index page

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



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

"Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от opennews (ok), 25-Окт-25, 08:01 
Опубликован выпуск проекта uutils coreutils 0.3.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=64114

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

Оглавление

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


1. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +4 +/
Сообщение от Медведь (ok), 25-Окт-25, 08:01 
> Заявлен уровень совместимости 83.91% (было 87.06%)

То есть добавление тестов выявило новые проблемы? Кто бы мог подумать... Пилите, Шура, пилите, они золотые.

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

3. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +2 +/
Сообщение от Аноним (3), 25-Окт-25, 08:09 
Казалось бы более просто управление памятью должно было помочь растикам быстрее разрабатывать софт. В итоге они разрабатывают софт в 10 ращ медленнее. Оказалось все дело не в языке, а в голове.
Ответить | Правка | Наверх | Cообщить модератору

4. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Медведь (ok), 25-Окт-25, 08:18 
На самом деле rust не так уж прост в управлении памятью: например, утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает. Но т-с-с-с-с, я этого не говорил, а то сейчас набигут растеры и побьют меня.
Ответить | Правка | Наверх | Cообщить модератору

5. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +3 +/
Сообщение от Аноним (5), 25-Окт-25, 08:44 
но ведь утечки памяти безопасны, oom киллер перегрузит приложение, станок/автопилот/робот перезапустятся полностью и все.
Ответить | Правка | Наверх | Cообщить модератору

6. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +2 +/
Сообщение от Медведь (ok), 25-Окт-25, 08:46 
> но ведь утечки памяти безопасны, oom киллер перегрузит приложение, станок/автопилот/робот перезапустятся полностью и все.

Какая прелесть! В цитатник! Не забудьте, пожалуйста, донести эту ценную мысль до разработчиков .net, скажем -- а то они ерундой маются, разруливают циклические ссылки, освобождают зачем-то память...

Стоп, а зачем ее вообще освобождать? Ну свалится софтина в OOM -- но безопасно же свалится, вот что главное! Эврика!

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

9. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от 12yoexpert (ok), 25-Окт-25, 09:18 
так .net/c# это не язык, просто NIH-пародия на джаву.

да и течь, как джава, оно не может, даже киллер-фичу языка толком не осилили

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

74. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от morphe (?), 25-Окт-25, 22:32 
> так .net/c# это не язык, просто NIH-пародия на джаву.

Когда через 25 лет в жаве осилят project valhalla - тогда может быть, но сейчас VM и GC шарпов намного лучше спроектирована для большинства задач. В жаве слишком долго полагались на оптимизацию gc вместо того чтобы просто хранить вещи на стеке/inline в других объектах, escape analysis не считается потому что кроме простых случаев не работает.

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

15. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +2 +/
Сообщение от laindono (ok), 25-Окт-25, 09:58 
https://doc.rust-lang.org/reference/unsafety.html

Что именно является unsafe в контексте rust достаточно недвусмысленно определено. Утёкшая память никак не относится к безопасному доступу к памяти (memory-safety). Rust даёт гарантии по части доступа к памяти, а не гарантии безопасности в общем смысле.

Протёкшая память может максимум привести к атаке denial-of-service. Может быть критическим багом, но на полноценную уязвимость не тянет. Безусловно неприятно, но не тоже самое, что use after free или прочие сишечные забавы.

Кроме того DoS наверняка проще провести над .net приложухой, чем над аналогичной rust приложухой. Всёж таки у шарпов рантайм жирненький. Да и не только на исчерпание памяти такие атаки проводятся.

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

17. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от Аноним (17), 25-Окт-25, 10:06 
>Может быть критическим багом, но на полноценную уязвимость не тянет.

Описание большинства ошибок работы с указателями в Си.

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

19. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +3 +/
Сообщение от Аноним (-), 25-Окт-25, 10:30 
> Описание большинства ошибок работы с указателями в Си.

Особенно когда это remote code execution))
Загляни в соседнюю тему, так десятки взломов "c использованием уязвимости, связанной с переполнением буфера".

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

20. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Медведь (ok), 25-Окт-25, 10:40 
Вы опять привычно свернули в сторону гарантий раста по работе с памятью. Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью, но, во-первых, даже в случае памяти -- не от всех, а во-вторых -- какой ценой? Давайте для каждого класса критических ошибок придумаем по языку, и будем яростно спорить, какой из них наиболее критически защищен.

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

Кстати, в какой-то мере необходимость защиты от утечек понимали даже сами растеры: в начальных версиях раста был опциональный GC, который потом был вышвырнут на мороз во имя пуризма и чтобы zero-cost'у раста больше доверяли. Но зато позже наплодили библиотечных реализаций GC, неудобных и лишенных языковой поддержки... Песня!

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

26. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от Аноним (17), 25-Окт-25, 11:18 
>в начальных версиях раста был опциональный GC, который потом был вышвырнут на мороз

Т.е. они пожертвовали безопасностью работы с памятью ради производительности? Кого-то это мне напоминает...

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

27. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от Медведь (ok), 25-Окт-25, 11:29 
> Т.е. они пожертвовали безопасностью работы с памятью ради производительности?

Учитывая, что GC был опционален и производительности особо-то и не мешал, очень странное решение. Ну ввели бы что-то типа #![no_gc], есть же у них #![no_std] -- и гарантировали бы предсказуемость времени жизни объектов и всё такое там, где оно надо.

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

28. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от laindono (ok), 25-Окт-25, 11:29 
> Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью

А больше ничего и не предполагалось. Rust в первую очередь язык для системного уровня и ниже.
Сборка мусора не бесплатна, виртуальные машины не бесплатны. Есть некоторый набор задач, где это критично.

> защита от критических ошибок доступа к памяти должна быть аппаратной

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

> Давайте придумаем

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

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

30. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (17), 25-Окт-25, 11:45 
>Сборка мусора не бесплатна, виртуальные машины не бесплатны. Есть некоторый набор задач, где это критично.

Ну так ввели бы директиву no_gc, как предложили выше, но делать этого не стали, потому что сложнее было бы рекламироваться.

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

41. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от 12yoexpert (ok), 25-Окт-25, 13:57 
ты разговариваешь с отбитым фанатиком раста

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

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

66. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (-), 25-Окт-25, 21:42 
> человек на родном языке не может запятые расставить.

Этот язык может быть не его родной.
Но что об этом может знать холуй бульбенфюppера 🤷🏻‍♂️

> представь, что у него получится с синтаксисом раста

И что получится?
Если он запятую пропустит, то компилятор напомнит.

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

29. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (29), 25-Окт-25, 11:41 
> Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью,

Насколько узкого?
Можно посмотреть на кол-во CVE в ядре и узреть, что этот узкий класс составется примерно большинство.

> но, во-первых, даже в случае памяти -- не от всех,

Но от тех, которые могут принести существенный вред.

> а во-вторых -- какой ценой?

Сколько там процентов насчитали вулнов из-за "ошибки памяти"? 70%? Мало?

> Давайте для каждого класса критических ошибок придумаем по языку, и будем яростно спорить, какой из них наиболее критически защищен.

Если вы представите руст2.0 который покроет еще один класс широко распространенных ошибок, то я вам пожму руку и поблагодарю.

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

А АРМ такая защита уже давно... но что-то это не сильно помогает.
Интересно почему?)

Гуглу приходится то MiraclePTR добавлять, то фаззингом обамзываться, то ультиматично выкидывать код на с/с++ и заменять. А всё вышеперечисленное стоит денег.
ChkTag еще и будет стоить памяти. Уверен админы серверов обрадуются)

> Кстати, в какой-то мере необходимость защиты от утечек понимали даже сами растеры: в начальных версиях раста был опциональный GC, который потом был вышвырнут на мороз во имя пуризма и чтобы zero-cost'у раста больше доверяли.

И много вы знаете системных ЯП со сборщиком мусора?
Смогли бы совместить одновременно развитие GC и borrow?

И да, вы лукавите.
GC из раста убрали еще в 2014 году, в версиях 0.11-0.12
Т.е просто сменилась парадигма развития.

> Но зато позже наплодили библиотечных реализаций GC, неудобных и лишенных языковой  поддержки... Песня!

Пф, слышать такую критику от адепта языка, где даже строк нормальных нету в std...
Как там было в пословице про бревно в глазу))?


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

31. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –2 +/
Сообщение от Медведь (ok), 25-Окт-25, 11:57 
> Если вы представите руст2.0 который покроет еще один класс широко распространенных ошибок, то я вам пожму руку и поблагодарю.

Нет уж, увольте, с меня хватает дичи и в rust 1.0 )))

> ChkTag еще и будет стоить памяти. Уверен админы серверов обрадуются)

Стоимость памяти ничтожна по сравнению с последствиями простоя для большинства бизнес-процессов.

> А АРМ такая защита уже давно... но что-то это не сильно помогает

Возможно, потому, что из-за очень недавнего появления стандарта на это дело пока что поддержка в компиляторах хромает? Я вообще не очень в курсе, насколько широко MTE используется в софте на ARM прямо сейчас. Поделитесь статистикой, насколько используется и насколько не помогает?

> И много вы знаете системных ЯП со сборщиком мусора?

Я выше писал, что для системного ПО его было бы правильнее отключать в коде, а не выбрасывать вообще.

> Смогли бы совместить одновременно развитие GC и borrow?

А вот это -- правильный вопрос. Borrow вообще трудно совместить со многими концепциями, которые из-за этого никогда не будут реализованы в rust. Но вам не кажется, что это обрекает его на стагнацию как ЯП?

> И да, вы лукавите. GC из раста убрали еще в 2014 году, в версиях 0.11-0.12

Я где-то утверждал что-то другое, кроме того, что он изначально был в rust?

> Пф, слышать такую критику от адепта языка, где даже строк нормальных нету в std...

Пф, std::string в моем любимом C++ меня вполне устраивают...

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

36. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +1 +/
Сообщение от Аноним (-), 25-Окт-25, 13:03 
> Нет уж, увольте, с меня хватает дичи и в rust 1.0 )))

Раз добровольцев нет - будем использовать то, что есть)

> Стоимость памяти ничтожна по сравнению с последствиями простоя для большинства бизнес-процессов.

Так ChkTag просто убьет процесс.
На серваке. Например БД в процессе транзакции. Вот админы обрадуются!

>> А АРМ такая защита уже давно... но что-то это не сильно помогает
> Возможно, потому, что из-за очень недавнего появления стандарта на это дело пока  что поддержка в компиляторах хромает?

Я бы не назвал технологию представленную в 2018, а выкаченную в 2019 новой.
community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/enhancing-memory-safety

> Я вообще не очень в курсе, насколько широко MTE используется в софте на ARM прямо сейчас.

source.android.com/docs/security/test/memory-safety/arm-mte
Есть мааааленькая загвоздка
Caution: Apps that enable MTE should be thoroughly tested on an MTE-compatible device before being shipped to the Play Store. Failure to do so may lead to critical bugs being discovered only on MTE-capable devices, which may harm usability of the app

Сколько у нас на данный момент выпущено процессоров без ChkTag?
Сколько лет у них будет поддержка?

> Поделитесь статистикой, насколько используется и насколько не помогает?

Могу поделиться насколько не помогает)
2021 год - всё еще не помогло 🤷🏻‍♂️
security.googleblog.com/2021/04/rust-in-android-platform.html
Жалуются на Limitations of detection и что выполнить "The Rule Of 2" очень сложно.

А тут уже какой-то прогресс, правда не связанный с MTE
security.googleblog.com/2022/12/memory-safe-languages-in-android-13.html
To date, there have been zero memory safety vulnerabilities discovered in Android’s Rust code.

> Я выше писал, что для системного ПО его было бы правильнее отключать в коде, а не выбрасывать вообще.

Вон D так умеет.
Но по какой-то причине никому не нужен.

>> Смогли бы совместить одновременно развитие GC и borrow?
> А вот это -- правильный вопрос. Borrow вообще трудно совместить со многими  концепциями, которые из-за этого никогда не будут реализованы в rust.

Не уверен что это плохо.

> Но вам не кажется, что это обрекает его на стагнацию как ЯП?

Нет. Большая часть языков это "или GС, или ручное управление" без выбора.
И они работают и выполняют свои функции (как могут))).
Делать из ЯП мегакомаbн типа NeroBurning с редактором этикеток, ну такой себе.
Могут позволить далеко не многие.

> Я где-то утверждал что-то другое, кроме того, что он изначально был в rust?

А был ли тот раст, растом?

> Пф, std::string в моем любимом C++ меня вполне устраивают...

Добавили, но не в первой версии. Примерно как в расте убрали GC.
Был ли С++ без string С++ или это был какой-то другой язык?

А а utf без костылей уже может)?


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

37. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Медведь (ok), 25-Окт-25, 13:26 
> Добавили, но не в первой версии. Примерно как в расте убрали GC. Был ли С++ без string С++ или это был какой-то другой язык?

Есть некоторая разница -- строки в C++ добавили и они есть, а сборщик мусора из rust выкинули -- и его нет.

Остальное у вас -- переливание из пустого в порожнее насчет того, что действительность такова и больше никакова. Но действительность меняется, подождем...

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

51. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (51), 25-Окт-25, 16:51 
> Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятьи

Не узкого, а более 70% тех, что приводят к уязвимостям. Гугл с МС приводили статистику.

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

46. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (46), 25-Окт-25, 16:22 
> Rust даёт гарантии по части доступа к памяти, а не гарантии безопасности в общем смысле.

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

Может ли Раст проверять корректность логики в вопросе доступа к неопределённо-вероятностным блокам памяти, исчисляемых во время выполнения и зависимых от окружения и входных данных?

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

14. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +2 +/
Сообщение от Аноним (14), 25-Окт-25, 09:55 
станок/автопилот/робот перезапустятся полностью и все.

да, и самолёт и ядерный реактор :-)

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

48. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (48), 25-Окт-25, 16:26 
>самолёт и ядерный реактор

Ядерный реактор на расте с кореутилс.
кхд)кхд)

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

53. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (51), 25-Окт-25, 17:12 
> перезапустятся полностью и все.
> да, и самолёт и ядерный реактор :-)

А что, предлагаешь писать ПО для самолетов и ядерных реакторов на языках с GC? Эксперт выше ведь именно о GC вещал.

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

56. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (48), 25-Окт-25, 18:29 
Короч спросил у гжпт, Rust используется в вспомогательных системах ядерных реакторов и самолетов, но не массово, пока что C++,
Основными системами управляет (RTOS), такие как VxWorks, QNX, INTEGRITY, RTLinux.
Но не в критических модулях, в критических модулях управляют специальные встроенные системы.
Ответить | Правка | Наверх | Cообщить модератору

69. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (69), 25-Окт-25, 22:15 
> спросил у гжпт

Странно, что он тебе не рассказал, как космические корабли на расте бороздят просторы большого театра.

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

77. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от НеАноним (?), 25-Окт-25, 22:38 
Да двигатель м драйв который, кажется в 2017 сделали.
Бороздит просторы)
Люди во всю колонизируют другие планеты.
И занимаются терраформингом других планет.
Там кстати щас набирают экспедицию на марс, но долгтй полет.
Правда пока набирают. Года так с 2018, любой может. Короч где то видел на сайте, серьезно.
Вообщем только)
Только ты с Linux)
хд)хд)
Ответить | Правка | Наверх | Cообщить модератору

25. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (25), 25-Окт-25, 11:15 
Дак вот почему боинги падают... Программисты на расте переполняют память при работе с закрылками...
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

16. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +3 +/
Сообщение от Аноним (-), 25-Окт-25, 10:05 
> утечки памяти из-за циклических связей в структурах с объектами
> со счетчиками ссылок (Rc) в нем вполне себе имеют место быть

А не подскажите, в каком языке без garbage collection эту проблему решили?
И решаема ли она в принципе?))

> и borrow checker от этого не спасает

Вообще в доке раста расписано от чего borrow спасает, а от чего нет.
И даже черным по белому написано "Preventing memory leaks entirely is not one of Rust’s guarantees" doc.rust-lang.org/book/ch15-06-reference-cycles.html
Но кто же читает доку...

> а то сейчас набигут растеры и побьют меня.

Фууу, конечно нет! Это было бы сравнимо с пинанием щеночков-дayнов!
Мерзко с одной стороны, и абсолютно бесполезно с другой.

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

50. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (51), 25-Окт-25, 16:47 
> утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает

А как работающий во время компиляции borrow checker должен спасать от ошибок во времени выполнения? Иди проспись.

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

78. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от morphe (?), 25-Окт-25, 22:39 
>  На самом деле rust не так уж прост в управлении памятью: например, утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает. Но т-с-с-с-с, я этого не говорил, а то сейчас набигут растеры и побьют меня.

Циклические ссылки нужно создавать либо явно (Rc::new_cyclic), либо у тебя внутри Rc должно быть interior mutable значение, потому что по дефолту содержимое Rc immutable

И в обоих случаях у человека есть возможность задуматься, а то ли он вообще делает, и не нужна ли ему арена/хранилище объектов с передачей хендлов (индексов)/какая-то графовая структура/gc. И все эти способы решения в Rust имеются, и использовать их удобнее чем другие.

Посмотри как сложный софт на Rust пишется, например Bevy ECS для игр, и увидишь что за счёт выразительности языка даже такая стрельба по ногам является опциональной, и проблема скорее для тех кто недостаточно в Rust погружен и пытается решать проблемы методами из других языков.

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

54. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (54), 25-Окт-25, 17:18 
> разрабатывают софт в 10 ращ медленнее

Сколько времени у GNU/coreutils заняло развиться до этого уровня? Лет тридцать? Ок…

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

55. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (17), 25-Окт-25, 17:42 
Предлагаете подождать 30 лет до работоспособного состояния uutils?
Ответить | Правка | Наверх | Cообщить модератору

67. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (67), 25-Окт-25, 22:01 
> Предлагаете подождать 30 лет до работоспособного состояния uutils?

Так уже используют. Да, вылезли первые ошибки. И еще не одна вылезет. Но паровоз уже тронулся (не умом). И через 30 лет (если оба доживут) разница в списках CVE за этот период у растовского варианта будет в разы ниже чем у сишного.

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

84. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (54), 26-Окт-25, 00:08 
Если в 10 раз медленнее, то 300 лет надо ждать.
Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

76. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (76), 25-Окт-25, 22:36 
В 1990-м в целом уже готово было
Ответить | Правка | К родителю #54 | Наверх | Cообщить модератору

24. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Я (??), 25-Окт-25, 11:04 
Это, как раз, нормально.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

7. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от 12yoexpert (ok), 25-Окт-25, 09:00 
> по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза

конечно, если в половине кода вставлять успешно завершающиеся загрушки

инвалиды умственного труда

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

21. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (25), 25-Окт-25, 10:53 
Дак это же те самые uutils, которые сломали обновления в Убунте!
Ответить | Правка | Наверх | Cообщить модератору

40. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +1 +/
Сообщение от Аноним (40), 25-Окт-25, 13:49 
Ну к слову это не их вина, что убунтовцы взяли пакет, который на 80% совместим со старым и при этом не удосужились проверить что все используемые функции работают как надо
Ответить | Правка | Наверх | Cообщить модератору

75. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (75), 25-Окт-25, 22:36 
А фальш-заглушка в эти 80%, прошедших тесты, входит? Если да, то их вина.

К тому же, какие ещё "они" и "убунтовцы"? Разраб с самым большим количеством коммитов в uutils - подписался как Ubuntu Developer. Это, плюс-минус, те же люди.

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

79. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от morphe (?), 25-Окт-25, 22:42 
> Ну к слову это не их вина, что убунтовцы взяли пакет, который на 80% совместим со старым и при этом не удосужились проверить что все используемые функции работают как надо

Убунта даже не удосужилась обновить пакет, несмотря на то что в uutils каждый день что-то дорабатывают и фиксят, и фикс проблемы был уже давно, просто по привычке убунта взяла версию трёхмесячной давности

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

49. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (48), 25-Окт-25, 16:28 
>Дак это же те самые uutils, которые сломали обновления в Убунте!

Ну все прям можно убунту даже ставить.
Нет спасибо, я после убунт 21.10 еще до релиза разочаровался.
Все  понятно куда они линию гнут.

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

52. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (51), 25-Окт-25, 16:57 
>> по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза
> конечно, если в половине кода вставлять успешно завершающиеся загрушки

В смысле, растовый sort бысрее сишного потому что как-то частично/неполноценно сортирует, или что ты хотел сказать?

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

58. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от 12yoexpert (ok), 25-Окт-25, 18:47 
чувак, для начала тебе нужно понять, что слова маркетологов о том, что их товар быстрее свободного ПО, могут быть неправдой
Ответить | Правка | Наверх | Cообщить модератору

61. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (51), 25-Окт-25, 19:36 
> слова маркетологов о том, что их товар быстрее свободного ПО, могут быть неправдой

Хочешь сказать, растовый sort сортирует так же или медленнее сишного?

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

63. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (40), 25-Окт-25, 20:55 
А если наработки по сортировке перенесут на С.... Вообще взлетит
Ответить | Правка | Наверх | Cообщить модератору

10. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +2 +/
Сообщение от Аноним (17), 25-Окт-25, 09:23 
>Заявлен уровень совместимости 83.91% (было 87.06%). Снижение уровня совместимости объясняется добавлением в тестовый набор 16 новых тестов.

Никто не измерял насколько они тесты переписали? В свете последних новостей возникают сомнения в их правдивости.
Также встаёт вопрос, исходя из цели переписать 1 в 1 GNU Coreutils почему у них стабильно ломается то одно, то другое, если им достаточно просто повторить код? Неужели Rust оказался настолько сложным для восприятия человеком, что даже ИИ не может помочь?

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

11. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +4 +/
Сообщение от Аноним (11), 25-Окт-25, 09:36 
А зачем им повторять CVE из gnu? Тут стараются сразу писать корректно.
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от Медведь (ok), 25-Окт-25, 09:39 
> Тут стараются сразу писать корректно.

10/10 за чувство юмора!

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

13. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (17), 25-Окт-25, 09:44 
>Тут стараются сразу писать корректно.

А когда это у них начнёт получаться?

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

22. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (25), 25-Окт-25, 10:55 
opennet.ru/opennews/art.shtml?num=64108
Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

64. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от Аноним (11), 25-Окт-25, 21:15 
И где тут CVE?
Ответить | Правка | Наверх | Cообщить модератору

71. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (69), 25-Окт-25, 22:21 
Ты сказал "Тут стараются сразу писать корректно", что является враньём.
Ответить | Правка | Наверх | Cообщить модератору

72. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –1 +/
Сообщение от Аноним (69), 25-Окт-25, 22:22 
P.S. Ах, да... "стараются". Но кроме старания нужна ещё и квалификация, которой у них нету.
Ответить | Правка | Наверх | Cообщить модератору

82. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (11), 25-Окт-25, 22:55 
Ты вырвал фразу из текста, корректность была про CVE.
Ответить | Правка | К родителю #71 | Наверх | Cообщить модератору

18. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  –2 +/
Сообщение от нах. (?), 25-Окт-25, 10:21 
Ну наоборот жыж - в свете последних новостей выяснилось, что если ты тестируешь что ключик -r обрабатывается - какой-то умный вася может взять и заткнуть тест, поставив заглушку, и ачивмент анлокт!

Поэтому теперь приходится переделывать тесты, чтобы убедиться что -r не текущую дату вернул, еще и файл ему создать особым образом, а то свежесозданым не проверишь.

Не то что эти диды, которым в голову не пришло что тут может быть диверсия на ровном месте.

> если им достаточно просто повторить код?

повторить != скопипастить.

А бегать от борова да, труднее чем просто абы как решить задачу, а обрабатывать corner cases когда-нибудь в следующей версии - как оно было при разработке gnu. (потому что таки да, надо проверять untrusted input на входе, а не совать в date форматную строку из внешнего источника, и надеяться что как-нибудь обработается)

опыт руффлятины не даст соврать - пять лет на голый парсер. С все еще "79%" api. (Причем по сути кроме парсера своего там почти ничего не было, от ффмпега до совсем ужасных лефтпадов неведомых васянов взято готовыми. Макромедии пришлось почти все писать с нуля, ничего готового не было. Да еще под три несовместимых даже в мелочах компилятора.)

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

65. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (11), 25-Окт-25, 21:17 
> Не то что эти диды, которым в голову не пришло что тут может быть диверсия на ровном месте.

Это те диды, которые писали оригинал? https://github.com/advisories/GHSA-vg73-g8m4-q62r

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

32. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (32), 25-Окт-25, 12:06 
>Улучшена совместимость с эталонным тестовым набором GNU Coreutils

Т.е. проходить стала меньше тестов - 532 (было 538)
неудач стало больше - 68 (было 52)
и полностью пропускать приходится больше - 33 (было 27)

Но это улучшение... тут скорее продолжена работа над улучшением или типа того

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

33. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +1 +/
Сообщение от Аноним (25), 25-Окт-25, 12:26 
Только программисты на расте умеют безопасно разрабатывать программы обратно во времени!
Ответить | Правка | Наверх | Cообщить модератору

38. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Медведь (ok), 25-Окт-25, 13:30 
Что ж тут непонятного. Отрицательное улучшение, в лучших традициях.
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

47. Скрыто модератором  +/
Сообщение от Аноним (46), 25-Окт-25, 16:25 
Ответить | Правка | К родителю #32 | Наверх | Cообщить модератору

34. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (34), 25-Окт-25, 12:29 
Если даже coreutils заржавеют и сгниют, останутся busybox и toybox.
Ответить | Правка | Наверх | Cообщить модератору

39. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (39), 25-Окт-25, 13:36 
>производительность некоторых утилит, например, по сравнению

Осталось выяснить, за чей счёт банкет. Если ускорение не за счёт simd для каких-то угловых случаев, очевидно, новый вариант менее оптимален (впрочем, для когда на ржавчине довольно классически).

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

57. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (57), 25-Окт-25, 18:43 
Гнутый софт, честно говоря, кривой и медленный.

Grep тормознее хипстерских аналогов заметно.

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

59. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (39), 25-Окт-25, 18:56 
Греп хоть не падает рандомно. Рипгреп одна из худших представителей поделок, по умолчанию на медленных носителях ощутимо тормознее и больше долбит диск впустую. Что есть у гнутого софта (во всяком случае, когда касается компонентов ОС, вроде coreutils) -- это стабильность и предсказуемая работоспособность.
Ответить | Правка | Наверх | Cообщить модератору

80. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от Аноним (48), 25-Окт-25, 22:45 
>Гнутый софт

Да.

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

60. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +1 +/
Сообщение от freehck (ok), 25-Окт-25, 19:05 
>>производительность некоторых утилит, например, по сравнению
> Осталось выяснить, за чей счёт банкет. Если ускорение не за счёт simd
> для каких-то угловых случаев, очевидно, новый вариант менее оптимален (впрочем, для
> когда на ржавчине довольно классически).

С учётом того, что у них задача -- сделать сравнение в свою пользу, бьюсь об заклад, что они сравнивали (условно) стоковый coreutils из какого-нибудь Debian, скомпилированного под amd64 для древнючих архитектур, и uutils, скомпилированный со всеми возможными и невозможными оптимизациями спецом под тестовую тачку.

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

43. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +/
Сообщение от warlockemail (??), 25-Окт-25, 14:13 
Круть!
Ответить | Правка | Наверх | Cообщить модератору

45. "Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust "  +1 +/
Сообщение от Аноним (45), 25-Окт-25, 15:55 
Ерундой люди занимаются, что доказала недавняя новость про убунту.
Ответить | Правка | Наверх | Cообщить модератору

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

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




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

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