Исследователи строят мост от языка C к Rust и безопасности памяти
Компьютерные ученые из Microsoft и Inria разработали способ автоматического перевода кода на языке C в безопасный для памяти Rust.

Вышла Rust 1.84, в которой появились строгие API проверки подлинности, которые можно использовать вместо приведения целочисленных указателей, что облегчает разработчикам рассуждения о коде и компилятору анализ, сообщает команда Rust.
Rust 1.84, анонсированный 9 января, может быть установлен через rustup для тех, у кого установлена предыдущая версия, с помощью команды rustup update stable.
Новые строгие API для проверки подлинности во многих случаях могут заменить использование целочисленных приведений указателей, что позволяет избежать двусмысленности, присущей таким приведениям. В частности, схема использования младших битов выровненного указателя для хранения дополнительной информации теперь может быть реализована без приведения указателя к целому числу или обратно.
В Rust 1.84 стабилизирован распознаватель минимальной поддерживаемой версии Rust (MSRV), который предпочитает версии зависимостей, совместимые с объявленной MSRV проекта. Благодаря MSRV-ориентированному выбору версий, сопровождающие сокращают трудозатраты на поддержку старых инструментальных цепочек, поскольку им не нужно вручную выбирать старые версии для каждой зависимости. Разработчики могут подключиться к MSRV-aware resolver через .cargo/config.toml.
Также в Rust 1.84 компилятор Rust находится в процессе перехода на новую реализацию решателя признаков. По словам команды Rust, решатель признаков нового поколения - это переработка основного компонента системы типов Rust, который отвечает за проверку соответствия границ признаков. Он также используется другими частями системы типов, такими как нормализация и приравнивание типов. В версии 1.84 новый решатель используется для проверки согласованности имплантов признаков, гарантируя, что для данного типа существует не более одной реализации признака. Это устраняет некоторые теоретические проблемы с корректностью старой реализации.
Rust 1.84 также стабилизирует более десятка API. Rust 1.84 следует за выпущенным в конце ноября Rust 1.83, который расширил возможности кода, выполняющегося в контекстах const.
Компьютерные ученые из Microsoft и Inria разработали способ автоматического перевода кода на языке C в безопасный для памяти Rust.
Вышла версия Gleam 1.7 с более быстрым обновлением записей и более безопасной обработкой учетных данных менеджера пакетов. Gleam - это статистически типизированный язык, скомпилированный в Erlang или JavaScript.
Выпущена версия Ruby 3.4. В этой версии по умолчанию используется парсер Prism, добавлена ссылка на параметр блока «it» и добавлена поддержка Happy Eyeballs Version 2 в библиотеку сокетов.