Новости
Значительные события: релизы, анонсы компаний, RFC, инженерные события вокруг Rust.
При установке инструмента из реестра Cargo теперь использует приложенный файл блокировок. Если файла нет, зависимости фиксируются по месту.
Вышел Rust 1.98.0. У типов f32 и f64 появились методы, разрешающие компилятору перегруппировывать вычисления по правилам вещественных чисел. Целочисленные типы получили форматирование без промежуточного выделения памяти.
Принято предложение, добавляющее два вида ограничений: где можно реализовывать трейт и где можно изменять поле структуры. Оба доступны для тестирования на ночных сборках.
Принято предложение добавить в язык способ объявить функцию с нестандартным, неизвестным компилятору соглашением о вызове. Речь о низкоуровневом коде, который сам отвечает за передачу аргументов и результата.
В ночных сборках включена следующая итерация проверки заимствований. Это не постепенная оптимизация, а смена формулировки самого правила: разработка шла с 2023 года, и стабилизация намечена на конец года.
Трейты и функции ввода-вывода постепенно переносятся из std в core и alloc. Летом 2026 года завершалась самая объёмная часть — чтение, буферизованный ввод-вывод и связанные функции.
Вышел точечный релиз Rust 1.97.1 с исправлением ошибки компиляции в одной из оптимизаций LLVM. Существенно, что сама ошибка присутствовала как минимум с Rust 1.87 — то есть задевала и более старые версии.
Вышел Rust 1.97.0. Собственная схема манглинга символов Rust включена по умолчанию на стабильной ветке, а Cargo научился управлять тем, считать ли предупреждения причиной отказа сборки.
Новая структура каталога сборки Cargo, которая долго была доступна только по флагу, перестала быть экспериментом. Она упрощает генерацию путей и уменьшает число аргументов, передаваемых компилятору.
Проект Redox получил грант на 50 000 евро от фонда NGI Zero Commons и ещё 11 500 евро от NLnet. На первые деньги будет делаться «Virtualized Redox» — доведение ОС на Rust до роли веб-сервера и среды микросервисов; вторые пойдут на capability-безопасность.
Вышел Rust 1.96.0. Стабилизирована стандартная библиотечная часть RFC 3550 — новые типы диапазонов, которые можно копировать, — и появились макросы assert_matches!. В WebAssembly больше не используется --allow-undefined.
У сетевого потока появился способ включить автоматические переотправки и узнать, включены ли они. До этого управлять этим из Rust было нельзя вообще.
С Rust 1.97 для платформы nvptx64-nvidia-cuda поднимаются минимальные требования: PTX ISA версии 7.0 и архитектура SM 7.0. Генерировать код для более старых видеокарт и драйверов станет невозможно.
В сборщик пакетов добавлены две проверки по умолчанию, которые отклоняют код, содержащий символы управления направлением текста. Раньше такой код собирался как ни в чём не бывало.
Настройка управления предупреждениями в Cargo перестала быть экспериментальной. Она позволяет либо скрыть предупреждения сборки, либо превратить их в ошибку.