LINUX.ORG.RU

Rust


261

18

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

Tatuin v0.24.0 со своей БД для задач и улучшеным UX

Группа Open Source

После почти месяца разработки и более 100 коммитов я рад представить новую версию агрегатора задач Tatuin v0.24.0.

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

>>> Все изменения

 , , ,

panter_dsd
()

Linux 6.17

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

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.17. Среди наиболее заметных изменений: повышение производительности Btrfs, системные вызовы file_getattr() и file_setattr(), унификация однопроцессорных и многопроцессорных конфигураций в планировщике задач, модуль DAMON_STAT со статистикой доступа к памяти, поддержка Live-патчей на системах ARM64, отправка core-дампов через сокет AF_UNIX, лимитирование SCHED_EXT через cgroup, упрощённая настройка защиты от уязвимостей в CPU, сборка в Clang с инициализацией переменных в стеке, защита от подмены /proc, расширение подсистемы RV (Runtime Verification), ограничение сокетов AF_UNIX через AppArmor, алгоритм контроля перегрузок TCP DualPI2.

В новую версию принято 14334 исправлений от 2118 разработчиков, размер патча – 46 МБ (изменения затронули 12841 файлов, добавлено 646654 строк кода, удалено 398782 строк). В прошлом выпуске было 15924 исправления от 2145 разработчиков, размер патча – 50 МБ . Около 43% всех представленных в 6.17 изменений связаны с драйверами устройств, примерно 12% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 14% связано с сетевым стеком, 4% – с файловыми системами и 3% c внутренними подсистемами ядра.

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

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

 , , ,

dataman
()

CADBase 0.3 — обновление платформы и интеграций

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

CADBase — это цифровая платформа для публикации, хранения и версионирования инженерных данных: чертежей, моделей компонентов, параметров, модификаций и сопроводительной документации. Название отражает концепцию «САПР-базы» — базы данных для хранения и управления данными систем автоматизированного проектирования (моделей, чертежей, спецификаций и т.п.). Платформа обладает широкими возможностями интеграции с системами проектирования, моделирования, анализа и симуляции, а также редакторами 2D и 3D анимации.

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

>>> Подробнее о платформе

 , , , ,

margarin
()

Релиз Diesel 2.3.0

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

Diesel — это безопасный, высокопроизводительный и расширяемый ORM и генератор SQL-запросов для языка Rust. Diesel гарантирует корректность генерируемых SQL-запросов и совместимость между типами, используемыми в коде приложения, и типами в БД. Код, который сгенерировал бы падающий запрос, попросту не скомпилируется. При этом, Diesel является zero-cost абстракцией: производительность кода, использующего Diesel такая же, как производительность кода на C, напрямую вызывающего SQL-запросы.

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

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

 diesel, , ,

provaton
()

uutils 0.2.0 и 0.2.2, вариант GNU Coreutils на языке Rust

uutils 0.2.0 и 0.2.2, вариант GNU Coreutils на языке Rust
Группа Open Source

6 сентября опубликован выпуск 0.2.0 проекта uutils coreutils (Rust Coreutils), развивающего аналог пакета GNU Coreutils, написанный на языке Rust. В состав coreutils входит более ста утилит, включая sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln и ls. Целью проекта является создание кроссплатформенной альтернативной реализации Coreutils, среди прочего способной работать на платформах Windows, Redox и Fuchsia.

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

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

 , , , ,

PunkPerson
()

Tatuin v0.23.0 - агрегатор задач с поддержкой CalDAV

Группа Open Source

После месяца работы и более 100 коммитов выпущена версия Tatuin v0.23.0 с двумя новыми провайдерами: iCal и CalDAV. Первый работает только для чтения, а второй поддерживает полный рабочий процесс.

Tatuin реализует TUI для агрегации различных провайдеров задач в одном приложении, позволяющее создавать и редактировать задачи, просматривать их и отмечать как выполненные.

На данный момент поддерживаются следующие провайдеры: Todoist, Obsidian, GitLab TODO, GitHub Issues, iCal, CalDAV.

>>> Homepage

>>> v0.23.0 changes

>>> v0.23.0

 , , , ,

panter_dsd
()

В Ubuntu по умолчанию задействован sudo-rs, написанный на Rust

Группа Ubuntu Linux

В ежедневно обновляемых экспериментальных сборках Ubuntu, отражающих развитие осеннего выпуска Ubuntu 25.10, вместо утилиты sudo по умолчанию задействован проект sudo-rs, написанный на языке Rust. Решение использовать sudo-rs в Ubuntu было принято в мае, но до последнего времени не было ясно, успеют ли разработчики реализовать в sudo-rs необходимые отсутствующие возможности до перехода Ubuntu 25.10 на стадию заморозки.

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

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

 , , ,

PunkPerson
()

Proton Authenticator — новое открытое приложение для безопасной двухфакторной аутентификации

Proton Authenticator — новое открытое приложение для безопасной двухфакторной аутентификации
Группа Open Source

Proton Authenticator — это бесплатное и открытое приложение для безопасной двухфакторной аутентификации от создателей ProtonMail и ProtonVPN.

С помощью 2FA вам нужно будет ввести вторую часть информации, помимо пароля, при входе в аккаунт. Обычно это шестизначный код, сгенерированный вашим приложением-аутентификатором. Даже если кто-то знает ваш пароль, он не сможет получить доступ к вашему аккаунту. Хотя SMS-коды аутентификации являются еще одним распространенным вариантом, они остаются уязвимыми для атак с подменой SIM-карты. Приложение-аутентификатор гораздо сложнее взломать, так как оно генерирует коды локально на вашем устройстве, и каждый код истекает через 30 секунд.

Основные преимущества:

  • Открытый исходный код.
  • Безопасное шифрование.
  • Поддержка основных настольных и мобильных ОС.
  • Поддержка работы в режиме оффлайн.
  • Быстрое импортирование всех существующих токенов 2FA в Proton Authenticator.
  • Синхронизации кодов 2FA на всех устройствах со сквозным шифрованием.
  • Создание автоматических резервных копий.
  • Защита аккаунта с помощью биометрии или PIN-кода.
  • Возможность использовать Proton, iCloud или локальный метод синхронизации.

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

 proton authenticator, , , ,

fail2ban
()

Rust 1.88.0

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

Опубликован следующий стабильный релиз компилятора и стандарта языка Rust.

В этой версии добавлены следующие возможности:

  1. Синтаксис для описания функций без пролога и эпилога. Тело таких функций обязано состоять из naked_asm! блока :
#[unsafe(naked)]
pub unsafe extern "sysv64" fn wrapping_add(a: u64, b: u64) -> u64 {
    // Equivalent to `a.wrapping_add(b)`.
    core::arch::naked_asm!(
        "lea rax, [rdi + rsi]",
        "ret"
    );
}
  1. Возможность объявлять две и более переменных в условных выражениях if / while:
if let Channel::Stable(v) = release_info()
    && let Semver { major, minor, .. } = v
    && major == 1
    && minor == 88
{
    println!("`let_chains` was stabilized in this version");
}
  1. В DSL для условной компиляции cfg добавлены константы true и false, которые так же стали доступны в макросе cfg!.

  2. Добавлено предупреждение о попытке обращения к нулевому указателю для функций, чьи инварианты корректной работы требуют не нулевых адресов. К примеру попытка сконструировать объект std::slice по нулевому адресу:

// Undefined behavior
unsafe { std::slice::from_raw_parts(ptr::null(), 1); }

приведёт к выдаче сообщения. По умолчанию это предупреждение имеет уровень deny-by-default, то есть будет рассмотрено компилятором как ошибка.

Все нововведения перечислены в списке изменений.

>>> Announcing Rust 1.88.0

 

LamerOk
()

Команда разработчиков Rust запустила опрос по производительности компилятора

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

Это прямой перевод записи из блога Rust.

Мы за­пу­ска­ем Опрос по про­из­во­ди­тель­но­сти ком­пи­ля­то­ра Rust.

Дол­гая ком­пи­ля­ция ко­да на Rust ча­сто упо­ми­на­лась как од­но из са­мых боль­ших испы­та­ний, огра­ни­чи­ва­ющих про­дук­тив­­ность Rust-ра­зра­бот­чи­ков. Лю­ди, вно­ся­щие вклад в ком­пи­ля­тор Rust, ко­неч­но, в кур­се об этом, и они по­сто­ян­но ра­бо­та­ют над улуч­ше­ни­ем си­ту­ации, ища но­вые спо­со­бы уско­рить ком­пи­ля­тор, сор­ти­руя ре­грес­сии про­из­во­ди­тель­но­сти и из­ме­ряя на­ши дол­го­сроч­ные улуч­ше­ния про­из­во­ди­тель­но­сти. Не­дав­но мы так­же вне­сли круп­ные из­ме­не­ния, на ра­зра­бо­тку ко­то­рых бы­ло по­тра­че­но мно­го вре­ме­ни, так что про­из­во­ди­тель­ность ком­пи­ля­то­ра дол­жна зна­чи­тель­но улуч­шить­ся по умол­ча­нию.

Ког­да речь идёт о про­из­во­ди­тель­но­сти ком­пи­ля­ции, важ­но отме­тить, что это не всег­да так же про­сто, как опре­де­лить, на­сколь­ко дол­го rustc ком­пи­ли­ру­ет крейт. Есть мно­го раз­но­образ­ных ра­бо­чих про­цес­сов ра­зра­бо­тки, ко­то­рые мо­гут за­ста­влять ид­ти на ком­про­мис­сы, и тех, ко­то­рые мо­гут быть за­труд­не­ны раз­лич­ны­ми фак­то­ра­ми, та­ки­ми как ин­те­гра­ция ком­пи­ля­то­ра с исполь­зу­емой сбо­роч­ной си­сте­мой.

Для то­го, что­бы луч­ше по­нять эти ра­бо­чие про­цес­сы, мы при­го­то­ви­ли Опрос по про­из­во­ди­тель­но­сти ком­пи­ля­то­ра Rust. Он ак­цен­ти­ро­ван имен­но на про­из­во­ди­тель­но­сти ком­пи­ля­ции, что поз­во­ля­ет нам по­лу­чить бо­лее по­дроб­ные дан­ные, чем те, ко­то­рые мы обыч­но по­лу­ча­ем из еже­год­но­го опро­са «State of Rust». Дан­ные из это­го опро­са по­мо­гут нам по­нять ме­ста, на ко­то­рых нам сле­ду­ет со­сре­до­то­чить уси­лия по улуч­ше­нию про­дук­тив­но­сти Rust-ра­зра­бот­чи­ков.

Прой­ти опрос вы мо­же­те здесь.

Про­хож­де­ние дол­жно за­нять приб­ли­зи­тель­но 10 ми­нут ва­ше­го вре­ме­ни. Опрос пол­но­стью ано­ни­мен. Мы бу­дем при­ни­мать фор­мы до 7 и­юля 2025 го­да. По окон­ча­нии опро­са мы обра­бо­та­ем ре­зуль­та­ты и опуб­ли­ку­ем клю­че­вые мо­мен­ты в этом бло­ге.

Приг­ла­ша­ем вас при­нять уча­стие в опро­се, ведь ва­ши от­ве­ты по­мо­гут нам улуч­шить про­из­во­ди­тель­ность ком­пи­ля­ции Rust. Спа­си­бо!

>>> Запись в блоге Rust

 , ,

MrCookie
()

Microsoft открыл код WSL и текстового редактора Edit

Microsoft открыл код WSL и текстового редактора Edit
Группа Linux General

Microsoft опубликовал исходные тексты подсистемы wsl. Для желающих присоединиться к разработке запущен сайт wsl.dev.

WSL предоставляет виртуальную машину с полноценным ядром Linux (на базе ветки 6.6), в которой могут запускаться дистрибутивы Linux. Ядро включает специфичные для WSL изменения, такие как оптимизации для сокращения времени запуска и уменьшения потребления памяти, возможность возвращения Windows освобождённой Linux-процессами памяти и настройки для исключения лишних драйверов и подсистем. Система устанавливается в отдельный дисковый образ (VHD) c файловой системой ext4 и виртуальным сетевым адаптером.

Компоненты WSL, связанные с ядром Linux и графическим стеком wslg, применяемым для для запуска GUI-приложений на базе Wayland и X11, развивались в открытом виде изначально, но весь сопутствующий инструментарий оставался проприетарным. Отныне в число открытых переведены следующие компоненты:

  • утилиты командной строки wsl.exe, wslconfig.exe и wslg.exe, используемые для взаимодействия с WSL;
  • сервис wslservice.exe, применяемый для запуска виртуальной машины, активации в ней Linux-окружения и монтирования файловых систем;
  • фоновые процессы, запускаемые в Linux-окружении для доступа к функциональности WSL. Например, процесс init для начальной инициализации, gns для настройки сетевого доступа, localhost для перенаправления портов;
  • процесс plan9 с реализацией сервера Plan9, применяемого в WSL для совместного доступа к Linux-файлам из Windows.

Остаются частью Windows и не открыты в настоящее время:

  • драйвер ядра Lxcore.sys, применяемый для запуска исполняемых файлов в формате ELF через слой обеспечения совместимости;
  • драйвер P9rdr.sys и библиотека p9np.dll, обеспечивающие перенаправление доступа к ФС «\wsl.localhost» при обращении из Windows к Linux.

Одновременно компания Microsoft открыла под лицензией MIT исходный код консольного текстового редактора Edit, написанного на модном языке Rust и нацеленного на поставку по умолчанию в 64-разрядных версиях Windows. В ближайшие месяцы редактор будет предложен для ознакомления и тестирования в сборках Windows Insider Program, после чего войдёт в штатную поставку Windows 11.

В редакторе попытались реализовать современный интерфейс с управлением в стиле VS Code. Целью заявлено предоставление интерфейса, который был бы понятен и прост в использовании даже для тех, кто не имеет опыта работы в терминале. Редактор компактен и занимает всего 250kB на диске. Из возможностей упомянуты: система меню, управление клавиатурными комбинациями или мышью, поддержка вкладок и одновременной работы с несколькими файлами, операции поиска и замены, режим автоматического переноса текста на новую строку.

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

 , , , ,

Ygor
()

Языку программирования Rust исполнилось 10 лет

Группа Open Source

15 мая этого года исполнилось 10 лет с момента выхода первой стабильной версии языка программирования Rust, разрабатываемого Mozilla совместно с сообществом.

Основные итоги за это время:

Попытки собрать истории растового успеха: раз, два.

>>> Официальный сайт

 , ,

anonymous
()

Ubuntu 25.10 переходит на sudo, написанный на Rust

Группа Ubuntu Linux

В Ubuntu 25.10 собираются использовать sudo-rs по умолчанию вместо привычного sudo. Это реализация утилиты повышения привилегий sudo, написанная на языке программирования Rust.

sudo-rs разработана Trifecta Tech Foundation (TTF), некоммерческой организацией, которая создает безопасные компоненты с открытым исходным кодом для инфраструктурного программного обеспечения.

В sudo-rs обеспечена совместимость с классическими утилитами sudo и su, что даёт возможность использовать sudo-rs в качестве прозрачной замены sudo в системе. Для пользователей, не желающих переходить на новые утилиты из uutils и sudo-rs, в Ubuntu 25.10 будет предусмотрена возможность обратного перехода на привычные варианты системных утилит coreutils и sudo.

Замена sudo на sudo-rs — часть глобального плана по повышению безопасности и качества Ubuntu путём перехода на компоненты, написанные на языке Rust.

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

 , ,

Zhbert
()

Разработчики Gnome удалят из С++ лишние фичи

Группа Open Source

Как всем известно, язык программирования С++, пожалуй, самый большой по объему из ЯП. Даже программисты, которые пишут на нем десятки лет не могут похвастаться, что знают его полностью. В связи с чем комитет по стандартизации С++ принял нелегкое решение: чтобы язык оставался конкурентоспособным перед напирающими новыми ЯП, например rust, нужно удалить из него все легаси фичи, написаные непонятно какими гоблинами в мохнатые восьмидесятые. В этом помогут хорошо известные на этом форуме разработчики Gnome, которые в свое время удалили все лишние фичи из своей DE, тем самым сделав ее вне конкуренции. Они будут удалять все фичи, пока не удалят все «плюсы» и не дойдут до С, из которого и вылез C++, но на этом не остановятся, оставят от языка только минимальный C--.

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

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

 , , ,

goingUp
()

Linux 6.14

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

После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 6.14. Среди наиболее заметных изменений: драйвер ntsync c примитивами синхронизации Windows NT, настройка балансировки операций чтения в Btrfs RAID1, поддержка reflink в XFS в режиме realtime, возможность некэшируемого буферизированного ввода/вывода, dmem cgroup для ограничения памяти GPU, задействование io_uring в FUSE, делегирование атрибутов в NFS, поддержка атомарной записи в Device mapper, ускорение символических ссылок, управление возможностью выполнения скриптов, поддержка чипов Qualcomm Snapdragon 8 Elite, драйвер для NPU AMD.

В новую версию принято 12115 исправлений от 1984 разработчиков, размер патча – 39 МБ (изменения затронули 10170 файлов, добавлено 531586 строк кода, удалено 235999 строк). В прошлом выпуске было 14172 исправлений от 2086 разработчиков, размер патча – 46 МБ. Около 41% всех представленных в 6.14 изменений связаны с драйверами устройств, примерно 13% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 14% связано с сетевым стеком, 7% – с файловыми системами и 4% c внутренними подсистемами ядра.

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

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

 , ,

dataman
()

BLAKE3 1.7.0

Группа Open Source

18 марта состоялся выпуск 1.7.0 библиотек BLAKE3, реализующих криптографический алгоритм хеширования BLAKE3 на языках C и Rust, и распространяемых как общественное достояние или по лицензии Apache 2.0.

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

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

>>> Подробности на github.com

 , , , ,

dataman
()

Fish Shell 4.0

Fish Shell 4.0
Группа Open Source

Командная оболочка Fish Shell, популярная среди пользователей терминалов, обновилась до версии 4.0, которая принесла значительные изменения и улучшения.

Основное новшество заключается в том, что Fish Shell теперь полностью переписана на языке программирования Rust. Однако для обычных пользователей этот переход будет практически незаметен: команды, настройки и типичные взаимодействия останутся прежними.

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

>>> Полный список изменений и релиз на GitHub

>>> Подробности в блоге fishshell.com

 , ,

CrX
()

Линус Торвальдс пояснил свою позицию в отношении приёма изменений на Rust

Группа Ядро Linux

К обсуждению сопротивления мэйнтейнеров внедрению Rust в ядро подключился Линус Торвальдс, который пояснил, что никто не заставляет мэйнтейнеров изучать язык Rust, использовать код на Rust, или принимать во внимание наличие в ядре кода на Rust. Мэйнтейнеры могут спокойно продолжать работать только с кодом на Си и никак не пересекаться с Rust. Но подобные сопровождающие не могут и влиять на то, как развивается Rust в ядре, например, не могут вмешиваться в организацию внешнего взаимодействия Rust-кода с кодом их подистемы.

Линус раскритиковал действия Кристофа Хелвига, мэйнтейнера подсистем DMA, KVM, Slab Allocator и архитектуры PowerPC. По мнению Линуса, Кристоф превысил свои полномочия и попытался повлиять на код, который не затрагивал код подсистемы DMA, был реализован в отдельном подкаталоге и не влиял на код, за который отвечает Кристоф. Кристоф попытался контролировать то, для чего используется подсистема DMA, и его действия можно сравнить с попыткой запрета использования DMA в каком-то драйвере, лишь потому, что ему не понравился этот драйвер. Итог: несмотря на то, что сопровождающие отвечают за свой код, они не отвечают за то, кто и как использует результат работы этого кода.

>>> Письмо Линуса

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

 ,

hobbit
()

Вышла версия 25.2.11 файлового менеджера Yazi

Группа Open Source

Yazi (кит. «鸭子» означает «утка») — это невероятно быстрый терминальный файловый менеджер, написанный на Rust, основанный на неблокируемом асинхронном вводе-выводе. Он нацелен на предоставление эффективного, удобного и настраиваемого опыта управления файлами.

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

>>> Основные особенности Yazi (осторожно, много мельтешащих видео на одном экране)

>>> GitHub проекта

>>> Более полный changelog в описании к релизам

 , , yazi

einhander
()

Развитие платформы CADBase за год

Группа Интернет

О платформе

Платформа CADBase обеспечивает систему публикации, хранения и версионирования данных инженерного дела, таких как 3D-модели и чертежи.
Название платформы образовано путём соединения двух слов — CAD (САПР) и Base (База), условно «База данных для систем автоматизированного проектирования».
На сайте платформы имеется просмотрщик для файлов STL, планируется добавить поддержку файлов в формате STEP.

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

>>> Сайт платформы

 , , , ,

margarin
()