Языки программирования

Rust 1.84 вводит строгие API для проверки достоверности информации

Rust 1.84 вводит строгие API для проверки достоверности информации

Вышла 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.

Читайте также