LINUX.ORG.RU

Rust


246

19

Всего сообщений: 115

StringZilla 3.8.1

Группа Разработка

StringZillaSIMD- и SWAR-оптимизированная библиотека для C++ (с биндингами для языков C, JavaScript (модуль Node.js), Python, Rust и Swift) для быстрых строковых операций: поиск подстрок и набора символов (прямой и обратный), сортировка, расстояние Левенштейна, расстояние Хэмминга и других. Однако, функциональность не одинакова для всех языков.
Проект распространяется по лицензии Apache-2.0.

( читать дальше... )

>>> Подробности

 , , , ,

dataman
()

Taskwarrior 3.0.0

Группа Open Source

25 марта 2024 года вышел долгожданный Taskwarrior 3.0.0.

Taskwarrior — продвинутый менеджер задач и планирования времени для командной строки (также доступны GUI-фронтэнды, библиотеки и дополнения).

( читать дальше... )

>>> Подробности (github)

 , , ,

hobbit
()

hyperfine 1.17.0

Группа Open Source

После более двух месяцев разработки состоялся выпуск 1.17.0 кроссплатформенной (Linux, MacOS, Windows) консольной утилиты hyperfine, написанной на языке Rust и распространяемой по лицензиям Apache-2.0 и MIT.
Утилита предназначена для сравнения производительности других консольных утилит.

Список изменений:

  • добавлен параметр --sort, используемый для сортировки результатов сравнения относительной скорости и экспорте;
  • неиспользуемые параметры теперь отображаются в круглых скобках;
  • в скрипт scripts/plot_histogram.py вывода результатов в виде гистограмм добавлена опция --log-count;
  • обновлена документация (man);
  • исправлена ошибка вывода промежуточных результатов в stdout при использовании - в качестве имени файла;
  • исправлено падение при экспорте, если время бенчмарка равнялось нулю.

>>> Подробности

 , , , ,

dataman
()

В GCC добавлена поддержка Modula-2 и планируется включение Rust

Группа Open Source

В основной состав GCC принят фронтэнд m2 и библиотека libgm2, позволяющие использовать штатный инструментарий GCC для сборки программ на языке программирования Modula-2. Поддерживается сборка кода, соответствующего диалектам PIM2, PIM3 и PIM4, а также принятому ISO-стандарту для данного языка. Изменения включены в ветку GCC 13, релиз которой ожидается в мае 2023 года.

Modula-2 разработан в 1978 году Никлаусом Виртом, продолжает развитие языка Pascal и позиционируется как язык программирования для высоконадёжных промышленных систем (например, применяется в ПО для спутников ГЛОНАСС). Modula-2 является предшественником таких языков, как Modula-3, Oberon и Zonnon. Помимо Modula-2 в состав GCC включены фронтэнды для языков C, C++, Objective-C, Fortran, Go, D, Ada.

Также было одобрено включение фронтэнда для Rust. Разработчикам gccrs рекомендовано начать работу с командами, отвечающими за рецензирование изменений и подготовку релизов GCC, для проведения финальной проверки и одобрения патчей с точки зрения соблюдения технических требований к коду, добавляемому в GCC. В случае, если разработка gccrs продолжится в соответствии с ранее намеченным графиком и не будет выявлено непредвиденных проблем, фронтэнд для языка Rust будет интегрирован в состав выпуска GCC 13, намеченного на май следующего года. Реализация Rust в GCC 13 будет иметь статус бета-версии, пока не включаемой по умолчанию.

>>> Подробности (OpenNet)

 , ,

LongLiveUbuntu
()

Linux 6.1

Linux 6.1
Группа Ядро Linux

Линус Торвальдс после двух месяцев разработки выпустил стабильную версию ядра Linux версии 6.1.

В новой мажорной версии ядра с кодовым названием «Hurr durr I’ma ninja sloth» представлена экспериментальная (но пока очень базовая и неприменимая в реальных случаях использования) поддержка языка программирования Rust для разработки модулей и драйверов.

( читать дальше... )

Окончательно удалена поддержка a.out.

>>> Подробности

 , ,

Dimez
()

RustCon 2022 — конференция по языку программирования Rust

Группа Конференции и встречи

Привет всем! Второго декабря, в Москве, пройдет второй RustCon — конференция для тех, кто пишет на языке Rust, и для тех, кто только приглядывается к нему. И сразу хорошая новость — в этом году RustCon пройдет одновременно в офлайн и онлайн-форматах! Что мы готовим:

Продвинутые доклады Крутейшие спикеры будут весь день делиться опытом и рассказывать о своих кейсах в Rust-разработке. Поговорим о новых технологиях и методах, поищем оптимальные решения типичных задач, обсудим перспективы языка (до сих пор не утихают споры!).

Воркшопы Потрогаем код руками и вживую освоим несколько классных приемов программирования на Rust.

Нетворкинг Разработчиков Rust трудно встретить в «естественной среде обитания», а на конференции можно будет познакомиться и пообщаться в неформальной обстановке со всеми заинтересованными лицами: спикерами, слушателями, участниками и представителями компаний, где уже пишут на Rust или собираются запускать проекты на нем.

По промокоду linux.org действует скидка 10 % на билет.

>>> Подробности

 , , ,

it-people
()

Линус Торвальдс запланировал внедрение Rust в Linux 6.1

Группа Ядро Linux

Создатель ядра Linux и координатор его разработки Линус Торвальдс объявил на Kernel Maintainers Summit, что в Linux 6.1 будет доступно программирование модулей на Rust — «если не произойдёт ничего незапланированного».

Причиной включения Rust в ядро Торвальдс назвал более высокую безопасность языка (за счёт снижения числа ошибок работы с памятью) и его привлекательность для молодых разработчиков:

Rust - это одна из тех вещей, которые, как я думаю, привлекут новые лица… мы стареем и седеем…

Также опубликована начальная реализация драйвера rust-e1000 для Ethernet-адаптеров Intel. А компания Western Digital разрабатывает на Rust драйвер для NVMe-накопителей. Хотя драйвер ещё не оптимизирован, он не отстаёт в производительности от имеющегося ядерного драйвера на языке Си.

>>> Подробности

 , , ,

alex1101
()

grex 1.4.0 — генератор регулярных выражений

grex 1.4.0 — генератор регулярных выражений
Группа Разработка

Обновилась утилита для создания регулярных выражений — grex 1.4.0. В новой версии исправлены ошибки, обновлена поддержка Unicode 14, крупным изменением стала возможность компиляции в WebAssembly и теперь grex можно использовать в браузере и Node.js (автор собрал NPM-пакет).

Посмотреть работу grex без установки можно на демо-странице: https://pemistahl.github.io/grex-js/

>>> Подробности

 , ,

dotcoder
()

Онлайн-вечеринка «виртПиво v5» — четверг 26 мая в 7 вечера по Москве

Онлайн-вечеринка «виртПиво v5» — четверг 26 мая в 7 вечера по Москве
Группа Конференции и встречи

Дорогие друзья, я рад сообщить вам о пятом международном онлайн-«виртПиве» - очередном неформальном сборище любителей опенсорсных прошивок!

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

Разумеется, мы собираемся не только «пить чай» и веселиться, но и поговорить и узнать больше о крутых опенсорсных проектах из «низкоуровневого мира». Например:

  • порт БИОСа coreboot для свежей матплаты MSI PRO Z690-A DDR4 от компании 3mdeb - см. новость «Сoreboot портирован на материнскую плату для Intel Alder Lake» - и результаты его тестирования пользователями защищённой ОС QubesOS ;
  • RustSBI - супервизор для RISC-V на 100%-ом Rust'е;
  • qspimux - переходник для безопасной удалённой перепрошивки чипа SPI-Flash без его отключения от матплаты;
  • lnDSO150 - прошивка для популярных карманных осциллографов DSO;
  • bcm5719-fw - прошивка для сетевой карты Broadcom BCM5719;
  • swtpm - программный эмулятор Trusted Platform Module и способы его использования;
  • TrenchBoot - фреймворк из связки проектов, призванный повысить безопасность процесса загрузки прошивки.

Надеюсь, и эта встреча окажется не менее увлекательной чем прошлые, которые продлились по 10-12 часов ;-) Вас ждут увлекательные разговоры об открытых прошивках, свободном железе и приятный вечер в уютной компании за чашкой чая. Приходите, мы ждём вас!

>>> Ссылка на онлайн-вечеринку

 , , , ,

SakuraKun
()

SixtyFPS становится Slint

Группа Open Source

Slint — это набор инструментов для разработки графических пользовательских интерфейсов, подходящий как для встраиваемых устройств, так и для настольных приложений. Имеется поддержка Rust, C++ и JavaScript.

Исходный код Slint написан на Rust. На выбор предлагаются лицензия GPLv3 и альтернативные варианты для проприетарных проектов.

Проект основали Olivier Goffart и Simon Hausmann, которые участвовали в разработке KDE и работали в Trolltech над Qt. Разработка началась весной 2020 года под названием SixtyFPS, что символизировало плавные анимации со скоростью 60 кадров в секунду, но под напором советчиков было принято решение переименовать проект в Slint, что можно расшифровать, как Straightforward, Lightweight, Native Toolkit (простой, легковесный, нативный набор инструментов).

Для описания интерфейса используется специально созданный декларативный язык разметки Slint, который частично был вдохновлён Qt QML. Язык является строго типизированным, с удобной для дизайнера системой измерений и хорошим инструментарием. Для написания бизнес-логики может использоваться Rust, C++ или JavaScript. Для этих языков было разработано интуитивное и идиоматичное API. Язык разметки Slint транслируется в код на Rust или C++, что обеспечивает высокую производительность. Также можно загружать .slint-файлы во время выполнения программы с помощью интерпретатора.

Инструментарий включает реализацию LSP для языка разметки Slint, которая интегрируется с различными средами разработки и редакторами и обеспечивает автодополнение, семантическую подсветку синтаксиса и предпросмотр.

Демонстрационные примеры можно запустить в браузере по ссылке https://slint-ui.com/#demos

>>> Подробности

 , ,

Legioner
()

RustCon Contest 2021

Группа Конференции и встречи

RustCon Contest — индивидуальные соревнования по программированию на языке Rust, которые пройдут с 12 октября по 15 ноября 2021 года. Присоединиться можно в любой момент.

Соревнование состоит из двух частей. Первая часть — решение задач на языке Rust. Вторая — Open-source contribution contest. Участвовать можно как в одной части, так и в обеих. Первая часть создана специально для новичков, а вторая — для разработчиков на Rust со стажем.

Победитель любой части получит билет на RustCon, бейдж победителя и фирменный мерч.

Занявшие второе место получат билет на RustCon.

Занявшие третье место получат скидку на билет 30 % и фирменный мерч RustCon.

Всем участникам даётся скидка 10 % на билет на RustCon.

>>> Правила и регистрация

 ,

it-people
()

RustCon Russia — конференция по языку программирования Rust

Группа Конференции и встречи

RustCon — конференция для тех, кто пишет на Rust, и тех, кто им интересуется.

Конференция пройдёт 3 декабря в Москве.

В программе: 8 докладов, мастер-класс «начинаем embedded на Rust», погружение в rust-тусовку, обед и кофе-брейки.

Некоторые из тем:

  • Rust и Python — как в небольшой команде просто, прозрачно и с минимальными трудозатратами переписать узкие места на Rust (и почему не C++);
  • под капотом у процедурных макросов (доклад про «кишки» rustc и низкоуровневые особенности процедурных макросов);
  • неочевидные прелести Rust.

По промокоду linux.org действует скидка 10 % на билет.

>>> Программа и билеты

 

it-people
()

Rust 1.55.0

Rust 1.55.0
Группа Разработка

Команда Rust рада объявить о новой версии языка программирования Rust, 1.55.0!

Основные изменения:

  • Cargo теперь дедуплицирует ошибки компилятора.
  • Ускорен и исправлен парсинг чисел с плавающей точкой по алгоритму Eisel-Lemire.
  • Обновлены варианты для std::io::ErrorKind.
  • Добавлены шаблоны открытого диапазона. (Подробности.)
  • Стабилизированы многочисленные API.

>>> Подробности

 ,

umren
()

Корректирующий выпуск Firefox 91.0.1

Группа Mozilla

Почти сразу после релиза Firefox 91 вышла новая версия браузера, в которой появились важные баг-фиксы и изменения:

  • Исправлена уязвимость (CVE-2021-29991), касающаяся как браузера Firefox так и Thunderbird, с помощью которой было возможно провести атаку по разделению HTTP-заголовков. Проблема вызвана некорректным принятием символа перевода строки в заголовках HTTP/3, что позволяет указать заголовок, который будет принят как два разных заголовка.
  • Исправлен баг, из-за которого менялась высота табов при использовании математических символов.
  • Исправлена проблема, приводящая к отображению вкладок из окон, открытых в приватном режиме, в обычных окнах при просмотре рекомендаций в адресной строке.

Также объявлено о главном изменении в грядущей 92-й версии, которая должна будет выйти 7-го сентября. Разработчики планируют включить опцию WebRender для всех пользователей по умолчанию (касается всех платформ: Linux, MacOS, Windows и Android), а уже в версии 93 отключить WebRender станет невозможно, опции gfx.webrender.force-legacy-layers и MOZ_WEBRENDER=0 будут убраны.

WebRender написан на языке Rust и позволяет добиться существенного увеличения скорости отрисовки и снижения нагрузки на центральный процессор за счёт выноса на сторону видеокарты операций отрисовки содержимого страницы, которые реализованы через выполняемые в GPU шейдеры. Для систем со старыми видеокартами или проблемными графическими драйверами в WebRender будет использован режим программной растеризации gfx.webrender.software=true.

>>> Подробности

 , , , ,

claire
()

Google профинансирует работу над Rust for Linux

Группа Open Source

Компания оплатит год работы Мигеля Охеда (Miguel Ojeda) над его проектом Rust for Linux. Работа будет вестись в рамках проекта Prossimo под эгидой организации ISRG (Internet Security Research Group) — учредителя проекта Let's Encrypt.

По данным Microsoft около 70% всех уязвимостей, описанных в CVE, вызваны небезопасной работой с памятью. Написание на Rust таких компонентов, как драйверы устройств, может снизить риск появления уязвимостей.

>>> Подробности

 , ,

LikeABoss
()

Линус Торвальдс раскритиковал Rust в ядре

Группа Linux General

Линус Торвальдс критикует использование Rust в ядре. Причины: возможность panic(), неделимость библиотеки и соответственно опасные попытки использования 128 bit типов (в ядре запрещено), бесполезность предложенных примеров драйверов.

>>> Подробности

 ,

anonymous
()

grex 1.2.0 — генератор регулярных выражений

grex 1.2.0 — генератор регулярных выражений
Группа Разработка

Вышла новая версия библиотеки и командной утилиты grex 1.2.0, которая позволяет создавать регулярное выражение из предоставленных пользователем тестовых данных. Созданное регулярное выражение имеет синтаксис PCRE.

grex начинался как порт JavaScript-утилиты regexgen и написан на языке программирования Rust.

>>> Подробности

 , , ,

dotcoder
()

Линус высказал своё мнение о Rust в ядре

Группа Ядро Linux

Поживем - увидим

Мне интересен проект внедрения Rust в ядро. Но я считаю, что авторы этого проекта предвзяты по отношению к Rust, и хотелось бы сначала посмотреть, как это обернется на практике.

Лично Торвальдс не продавливает Rust в ядро, но он «готов оценить обещанные преимущества и возможность избегания граблей, связанных с безопасностью», но также понимает, что «иногда обещанное не исполняется».

Торвальдс полагает, что первоначальной областью применения Rust в ядре могут быть драйверы, поскольку их написание представляет собой множество небольших и независимых задач. «Может, это не самое интересное применение, но оно самое очевидное». Он добавил, что поскольку многие устройства предназначены не для всех процессорных архитектур, недостаток их поддержки в Rust – не такая большая проблема.

>>> Источник

 , ,

anonymous
()

В linux-next добавлена возможность писать драйверы на Rust

Группа Ядро Linux

В ветку ядра linux-next включен код для написания драйверов на Rust, сам патч. Пока неясно, оставит Линус это или нет, он высказывается довольно туманно, из его слов не совсем понятно, есть ли четкие критерии включения.

>>> Подробности

 , linux-next, ,

anonymous
()

Почему Discord сменил Go на Rust. Блог разработчика.

Группа Разработка

В статье автор описывает успешный проект Discord, в котором Rust используется для потоковой обработки в Go Live и их Elixir NIFs’ сервере.

Автор пишет
«Хочу отметить, что мы потратили очень мало усилий на оптимизацию реализации на Rust. Но даже только с базовой оптимизацией Rust оказался быстрее супероптимизированной реализации на Go. Это заметный плюс для Rust, показывающий, насколько легко писать эффективные программы, используя Rust, по сравнению с глубоким погружением в Go.»

>>> Why Discord is switching from Go to Rust

 , ,

grim
()