The OpenNET Project / Index page

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

Выпуск uutils 0.3, варианта GNU Coreutils на языке Rust

25.10.2025 07:45

Опубликован выпуск проекта 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.

Rust Coreutils задействован по умолчанию в выпуске Ubuntu 25.10 и применяется в дистрибутивах AerynOS (Serpent OS) и Apertis (развивается компанией Collabora). В отличие от GNU Coreutils реализация на Rust распространяется под пермиссивной лицензией MIT, вместо копилефт-лицензии GPL. Дополнительно той же командой разработчиков развиваются написанные на Rust аналоги наборов утилит util-linux, diffutils, findutils и procps, а также программ sed и login.

В новой версии Rust Coreutils:

  • Значительно повышена производительность некоторых утилит, например, по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза при обычной сортировке и в 1.46 раз при сортировке чисел, base64 быстрее в 1.2 раза, expand в 1.8 раз, unexpand - в 1.5 раз, nl - в 1.57 раз, fold - в 1.19 раз, "uniq -c" в 1.13 раз.
  • На базе инструментария CodSpeed создана инфраструктура для отслеживания производительности. В системе непрерывной интеграции обеспечено выявление регрессий в производительности. Добавлены тесты производительности для 15 утилит, среди которых sort, ls, uniq, du и base64.
  • Для утилит rm, du, chmod и chgrp реализована безопасная работа с относительными путями директорий, основанная на использовании функций openat и unlinkat.
  • Повышена безопасность за счёт использования crate-пакета nix вместо unsafe-вызовов libc.
  • Улучшена обработка ошибок и приближена к GNU Coreutils обработка ошибок во многих утилитах.
  • Улучшена совместимость с Coreutils при работе с файловыми путями, содержащими и не содержащими UTF8-символы.
  • Улучшена совместимость с эталонным тестовым набором GNU Coreutils, при прохождении которого успешно выполнено 532 тестов (в прошлой версии 538), 68 (52) тестов завершилось неудачей, а 33 (27) теста было пропущено. Заявлен уровень совместимости 83.91% (было 87.06%). Снижение уровня совместимости объясняется добавлением в тестовый набор 16 новых тестов.
  • В утилите date реализована опция "--reference=file" для показа времени модификации файла. Из-за отсутствия данной опции в Ubuntu перестал работать скрипт автоматической проверки наличия обновлений. В date также консолидирована логика парсинга времени, улучшена совместимость в GNU date в реализации опции "-d" и добавлен флаг "--resolution" для вывода данных о точности учёта времени.
  • Реализованы опции: "basenc --base58", "id -a", "ls -f", "pinky --lookup", "realpath -E", "rm --progress".
  • Расширены возможности, устранены проблемы и добавлены недостающие опции для утилит base64, basenc, chgrp, chmod, cksum, cp, csplit, date, df, dirname, du, expand, expr, fold, hashsum, hostname, id, install, ln, ls, mv, nl, nohup, numfmt, od, pinky, ptx, realpath, rm, seq, sort, stat, stdbuf, stty, tail, timeout, touch, tsort, unexpand, uniq, uname, wc, who, uucore.


  1. Главная ссылка к новости (https://github.com/uutils/core...)
  2. OpenNews: Выпуск uutils 0.2, варианта GNU Coreutils на языке Rust
  3. OpenNews: Из-за ошибки в uutils в Ubuntu 25.10 перестала работать автоматическая проверка наличия обновлений
  4. OpenNews: Выпуск Rust 1.89. Около 8% src-пакетов в Debian Sid завязаны на Rust
  5. OpenNews: В Ubuntu 25.10 решено заменить GNU Coreutils на uutils, написанные на Rust
  6. OpenNews: Выпуск утилит GNU grep 3.12, gzip 1.14, diffutils 3.12 и coreutils 9.7
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64114-uutils
Ключевые слова: uutils, rust, coreutils
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (88) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Медведь (ok), 08:01, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    > Заявлен уровень совместимости 83.91% (было 87.06%)

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

     
     
  • 2.3, Аноним (3), 08:09, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Казалось бы более просто управление памятью должно было помочь растикам быстрее разрабатывать софт. В итоге они разрабатывают софт в 10 ращ медленнее. Оказалось все дело не в языке, а в голове.
     
     
  • 3.4, Медведь (ok), 08:18, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    На самом деле rust не так уж прост в управлении памятью: например, утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает. Но т-с-с-с-с, я этого не говорил, а то сейчас набигут растеры и побьют меня.
     
     
  • 4.5, Аноним (5), 08:44, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    но ведь утечки памяти безопасны, oom киллер перегрузит приложение, станок/автопилот/робот перезапустятся полностью и все.
     
     
  • 5.6, Медведь (ok), 08:46, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > но ведь утечки памяти безопасны, oom киллер перегрузит приложение, станок/автопилот/робот перезапустятся полностью и все.

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

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

     
     
  • 6.9, 12yoexpert (ok), 09:18, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    так .net/c# это не язык, просто NIH-пародия на джаву.

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

     
     
  • 7.74, morphe (?), 22:32, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > так .net/c# это не язык, просто NIH-пародия на джаву.

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

     
  • 6.15, laindono (ok), 09:58, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    https://doc.rust-lang.org/reference/unsafety.html

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

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

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

     
     
  • 7.17, Аноним (17), 10:06, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >Может быть критическим багом, но на полноценную уязвимость не тянет.

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

     
     
  • 8.19, Аноним (-), 10:30, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Особенно когда это remote code execution Загляни в соседнюю тему, так десятки ... текст свёрнут, показать
     
  • 7.20, Медведь (ok), 10:40, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Вы опять привычно свернули в сторону гарантий раста по работе с памятью. Это замечательно, что он защищает от (сравнительно узкого) класса ошибок работы с памятью, но, во-первых, даже в случае памяти -- не от всех, а во-вторых -- какой ценой? Давайте для каждого класса критических ошибок придумаем по языку, и будем яростно спорить, какой из них наиболее критически защищен.

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

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

     
     
  • 8.26, Аноним (17), 11:18, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Т е они пожертвовали безопасностью работы с памятью ради производительности Ко... текст свёрнут, показать
     
     
  • 9.27, Медведь (ok), 11:29, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Учитывая, что GC был опционален и производительности особо-то и не мешал, очень ... текст свёрнут, показать
     
  • 8.28, laindono (ok), 11:29, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А больше ничего и не предполагалось Rust в первую очередь язык для системного у... текст свёрнут, показать
     
     
  • 9.30, Аноним (17), 11:45, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну так ввели бы директиву no_gc, как предложили выше, но делать этого не стали, ... текст свёрнут, показать
     
  • 8.29, Аноним (29), 11:41, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Насколько узкого Можно посмотреть на кол-во CVE в ядре и узреть, что этот узкий... большой текст свёрнут, показать
     
     
  • 9.31, Медведь (ok), 11:57, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Нет уж, увольте, с меня хватает дичи и в rust 1 0 Стоимость памяти ничтожна ... текст свёрнут, показать
     
     
  • 10.36, Аноним (-), 13:03, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Раз добровольцев нет - будем использовать то, что есть Так ChkTag просто убьет ... большой текст свёрнут, показать
     
     
  • 11.37, Медведь (ok), 13:26, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Есть некоторая разница -- строки в C добавили и они есть, а сборщик мусора из ... текст свёрнут, показать
     
  • 8.51, Аноним (51), 16:51, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не узкого, а более 70 тех, что приводят к уязвимостям Гугл с МС приводили стат... текст свёрнут, показать
     
  • 7.46, Аноним (46), 16:22, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Rust даёт гарантии по части доступа к памяти, а не гарантии безопасности в общем смысле.

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

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

     
     
  • 8.88, Чтото знающий (?), 01:48, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не могли бы вы привести пример на безопасном Rust, который подтверждал бы ваше у... текст свёрнут, показать
     
  • 5.14, Аноним (14), 09:55, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    станок/автопилот/робот перезапустятся полностью и все.

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

     
     
  • 6.48, Аноним (48), 16:26, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >самолёт и ядерный реактор

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

     
  • 6.53, Аноним (51), 17:12, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > перезапустятся полностью и все.
    > да, и самолёт и ядерный реактор :-)

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

     
     
  • 7.56, Аноним (48), 18:29, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Короч спросил у гжпт, Rust используется в вспомогательных системах ядерных реакторов и самолетов, но не массово, пока что C++,
    Основными системами управляет (RTOS), такие как VxWorks, QNX, INTEGRITY, RTLinux.
    Но не в критических модулях, в критических модулях управляют специальные встроенные системы.
     
     
  • 8.69, Аноним (69), 22:15, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Странно, что он тебе не рассказал, как космические корабли на расте бороздят про... текст свёрнут, показать
     
     
  • 9.77, НеАноним (?), 22:38, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да двигатель м драйв который, кажется в 2017 сделали Бороздит просторы Люди во... текст свёрнут, показать
     
  • 5.25, Аноним (25), 11:15, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Дак вот почему боинги падают... Программисты на расте переполняют память при работе с закрылками...
     
  • 4.16, Аноним (-), 10:05, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > утечки памяти из-за циклических связей в структурах с объектами
    > со счетчиками ссылок (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.50, Аноним (51), 16:47, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает

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

     
  • 4.78, morphe (?), 22:39, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >  На самом деле rust не так уж прост в управлении памятью: например, утечки памяти из-за циклических связей в структурах с объектами со счетчиками ссылок (Rc) в нем вполне себе имеют место быть, и borrow checker от этого не спасает. Но т-с-с-с-с, я этого не говорил, а то сейчас набигут растеры и побьют меня.

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

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

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

     
     
  • 5.93, Медведь (ok), 02:10, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это все замечательно, но вот только циклические взаимосвязи в реальных предметных областях встречаются очень часто, и раст со своим боровчекером в таких задачах неуклюж, как бегемот в посудной лавке.

    Стандартный ответ растера: "ты просто не понял раст!". Но если для того, чтобы выразить тривиальную взаимосвязь из реального мира, нужно навертеть тонны откровенно ненужных сущностей, возможно, не я "недостаточно погружён", а просто rust недостаточно выразителен или слишком ограничен? Скажем, биться с боровчекером, растыкивая Rc::new_cyclic просто из-за ограничений модели владения, как по мне, удовольствие сильно ниже среднего, не находишь?

     
     
  • 6.96, Чтото знающий (?), 02:32, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >раст со своим боровчекером в таких задачах неуклюж, как бегемот в посудной лавке.
    >чтобы выразить тривиальную взаимосвязь из реального мира, нужно навертеть тонны откровенно ненужных сущностей

    Если вам нужны циклические зависимости, вы или используете unsafe, либо вам неважна утечка памяти, о возможности которой честно сообщают в доке.

    >просто rust недостаточно выразителен или слишком ограничен?

    Ограничен? Да,безусловно. Не даёт протекать в код примерно 70% типовых ошибок.
    Недостаточно выразителен? Глядя на то, сколько кода уже написано на этом языке в разных предметных областях, закрадывается сомнение в вашей объективности.

     
     
  • 7.100, Медведь (ok), 02:48, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Если вам нужны циклические зависимости, вы или используете unsafe, либо вам неважна утечка памяти, о возможности которой честно сообщают в доке.

    А-а-а, погодите, так "честная дока" оправдывает все косяки дизайна языка, про которые она "честно сообщает"? Упс, а ведь доки по C совершенно честно говорят, что ответственность за косяки с памятью лежит на программисте. Всё, никаких претензий, ведь так?

     
  • 6.99, morphe (?), 02:47, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Это все замечательно, но вот только циклические взаимосвязи в реальных предметных областях
    > встречаются очень часто, и раст со своим боровчекером в таких задачах
    > неуклюж, как бегемот в посудной лавке.

    Я и не сказал что таких не существует, я сказал что большинство таких случаев решаются способами более удобными чем через Rc<RefCell<T>>: арены, графы, хендлы, опять же сборщик мусора/cборщик циклов

     
     
  • 7.101, Медведь (ok), 02:59, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > арены, графы, хендлы, опять же сборщик мусора/cборщик циклов

    Про тонны ненужных сущностей я уже писал...

     
     
  • 8.102, morphe (?), 03:02, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Т е в условных сях ты можешь использовать счётчик ссылок для циклических структу... текст свёрнут, показать
     
  • 8.103, morphe (?), 03:03, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Гвозди надо забивать микроскопом, стены сверлить им же ... текст свёрнут, показать
     
  • 3.54, Аноним (54), 17:18, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > разрабатывают софт в 10 ращ медленнее

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

     
     
  • 4.55, Аноним (17), 17:42, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Предлагаете подождать 30 лет до работоспособного состояния uutils?
     
     
  • 5.67, Аноним (67), 22:01, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Предлагаете подождать 30 лет до работоспособного состояния uutils?

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

     
  • 5.84, Аноним (54), 00:08, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если в 10 раз медленнее, то 300 лет надо ждать.
     
  • 4.76, Аноним (76), 22:36, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В 1990-м в целом уже готово было
     
  • 2.24, Я (??), 11:04, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это, как раз, нормально.
     
  • 2.85, morphe (?), 01:05, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > То есть добавление тестов выявило новые проблемы? Кто бы мог подумать... Пилите, Шура, пилите, они золотые.

    Там исправили проблему от которой неподдерживаемые аргументы игнорировались

    Вопрос скорее в том, что это за тесты, которым без разницы обрабатываются аргументы или нет

     

  • 1.7, 12yoexpert (ok), 09:00, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза

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

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

     
     
  • 2.21, Аноним (25), 10:53, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Дак это же те самые uutils, которые сломали обновления в Убунте!
     
     
  • 3.40, Аноним (40), 13:49, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну к слову это не их вина, что убунтовцы взяли пакет, который на 80% совместим со старым и при этом не удосужились проверить что все используемые функции работают как надо
     
     
  • 4.75, Аноним (75), 22:36, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А фальш-заглушка в эти 80%, прошедших тесты, входит? Если да, то их вина.

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

     
  • 4.79, morphe (?), 22:42, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну к слову это не их вина, что убунтовцы взяли пакет, который на 80% совместим со старым и при этом не удосужились проверить что все используемые функции работают как надо

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

     
  • 3.49, Аноним (48), 16:28, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Дак это же те самые uutils, которые сломали обновления в Убунте!

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

     
  • 2.52, Аноним (51), 16:57, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> по сравнению с GNU Coreutils утилита sort теперь быстрее в 3.72 раза
    > конечно, если в половине кода вставлять успешно завершающиеся загрушки

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

     
     
  • 3.58, 12yoexpert (ok), 18:47, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    чувак, для начала тебе нужно понять, что слова маркетологов о том, что их товар быстрее свободного ПО, могут быть неправдой
     
     
  • 4.61, Аноним (51), 19:36, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > слова маркетологов о том, что их товар быстрее свободного ПО, могут быть неправдой

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

     
     
  • 5.63, Аноним (40), 20:55, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А если наработки по сортировке перенесут на С.... Вообще взлетит
     

  • 1.10, Аноним (17), 09:23, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Заявлен уровень совместимости 83.91% (было 87.06%). Снижение уровня совместимости объясняется добавлением в тестовый набор 16 новых тестов.

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

     
     
  • 2.11, Аноним (11), 09:36, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    А зачем им повторять CVE из gnu? Тут стараются сразу писать корректно.
     
     
  • 3.12, Медведь (ok), 09:39, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Тут стараются сразу писать корректно.

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

     
  • 3.13, Аноним (17), 09:44, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Тут стараются сразу писать корректно.

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

     
     
  • 4.90, Чтото знающий (?), 02:02, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Уже получается. Просмотрите на количество пройденных тестов, что ли.
     
     
  • 5.97, Аноним (17), 02:36, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Результат пока не впечатляющий и правдивость тестов вызывает вопросы.
     
  • 3.22, Аноним (25), 10:55, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    opennet.ru/opennews/art.shtml?num=64108
     
     
  • 4.64, Аноним (11), 21:15, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    И где тут CVE?
     
     
  • 5.71, Аноним (69), 22:21, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты сказал "Тут стараются сразу писать корректно", что является враньём.
     
     
  • 6.72, Аноним (69), 22:22, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    P.S. Ах, да... "стараются". Но кроме старания нужна ещё и квалификация, которой у них нету.
     
  • 6.82, Аноним (11), 22:55, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты вырвал фразу из текста, корректность была про CVE.
     
  • 2.18, нах. (?), 10:21, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Ну наоборот жыж - в свете последних новостей выяснилось, что если ты тестируешь что ключик -r обрабатывается - какой-то умный вася может взять и заткнуть тест, поставив заглушку, и ачивмент анлокт!

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

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

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

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

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

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

     
     
  • 3.65, Аноним (11), 21:17, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Не то что эти диды, которым в голову не пришло что тут может быть диверсия на ровном месте.

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

     

  • 1.32, Аноним (32), 12:06, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Улучшена совместимость с эталонным тестовым набором GNU Coreutils

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

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

     
     
  • 2.33, Аноним (25), 12:26, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Только программисты на расте умеют безопасно разрабатывать программы обратно во времени!
     
  • 2.38, Медведь (ok), 13:30, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Что ж тут непонятного. Отрицательное улучшение, в лучших традициях.
     
  • 2.47, Аноним (46), 16:25, 25/10/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.34, Аноним (34), 12:29, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Если даже coreutils заржавеют и сгниют, останутся busybox и toybox.
     
  • 1.39, Аноним (39), 13:36, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >производительность некоторых утилит, например, по сравнению

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

     
     
  • 2.57, Аноним (57), 18:43, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Гнутый софт, честно говоря, кривой и медленный.

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

     
     
  • 3.59, Аноним (39), 18:56, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Греп хоть не падает рандомно. Рипгреп одна из худших представителей поделок, по умолчанию на медленных носителях ощутимо тормознее и больше долбит диск впустую. Что есть у гнутого софта (во всяком случае, когда касается компонентов ОС, вроде coreutils) -- это стабильность и предсказуемая работоспособность.
     
     
  • 4.91, Чтото знающий (?), 02:06, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >по умолчанию на медленных носителях ощутимо тормознее и больше долбит диск впустую

    Ссылки будут на результаты тестирования или очередное "экспертное мнение"?

     
     
  • 5.106, Аноним (39), 09:15, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На какие тестирования, у тебя всё хорошо? По умолчанию он в несколько потоков долбит и это значительно медленнее 1 потока.
     
  • 3.80, Аноним (48), 22:45, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Гнутый софт

    Да.

     
  • 2.60, freehck (ok), 19:05, 25/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>производительность некоторых утилит, например, по сравнению
    > Осталось выяснить, за чей счёт банкет. Если ускорение не за счёт simd
    > для каких-то угловых случаев, очевидно, новый вариант менее оптимален (впрочем, для
    > когда на ржавчине довольно классически).

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

     
     
  • 3.92, Чтото знающий (?), 02:08, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >С учётом того, что у них задача -- сделать сравнение в свою пользу

    Зачем бы им заниматься подтасовками? Или вы по себе судите?

     
     
  • 4.107, Аноним (39), 09:20, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>С учётом того, что у них задача -- сделать сравнение в свою пользу
    > Зачем бы им заниматься подтасовками? Или вы по себе судите?

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

     

  • 1.43, warlock (??), 14:13, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Круть!
     
  • 1.45, Аноним (45), 15:55, 25/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ерундой люди занимаются, что доказала недавняя новость про убунту.
     
     
  • 2.94, Чтото знающий (?), 02:12, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    1. Чем хотят, тем и занимаются. Вам какое дело до этого?

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

     
     
  • 3.98, Аноним (17), 02:40, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Авторы утилит и дистрособиратели Убунты - это одни и те же люди.
     

  • 1.95, Чтото знающий (?), 02:14, 26/10/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ух, сколько борцунов с Rust набежало. Чуют недоброе, ох чуют, что скоро только легаси и останется им поддерживать.
     
     
  • 2.105, Аноним (105), 07:11, 26/10/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Когда примерно 15-ть лет назад выходили новости про пермиссивные аналоги GNU ути... большой текст свёрнут, показать
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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