Новости Rust 1.78.0: новый язык Borgo, улучшенный контроль и стабильность кода

NewsMaker

I'm just a script
Премиум
13,855
20
8 Ноя 2022
Основные детали и преимущества последнего обновления Rust.


xsm73rvrmf203njximhygtiqva1og101.jpg


Команда Rust Для просмотра ссылки Войди или Зарегистрируйся новую версию языка программирования — Для просмотра ссылки Войди или Зарегистрируйся Язык Rust, ориентированный на создание надёжного и эффективного ПО, продолжает развиваться, предлагая разработчикам новые возможности для улучшения качества и производительности проектов.

Как обновиться до новой версии

Если у вас уже установлена предыдущая версия Rust через rustup, выполните команду в терминале:

$ rustup update stable

Для тех, кто ещё не установил rustup, его можно Для просмотра ссылки Войди или Зарегистрируйся с официального сайта. На сайте также доступны подробные Для просмотра ссылки Войди или Зарегистрируйся версии 1.78.0.

Нововведения в версии 1.78.0:

  1. Диагностические атрибуты: Версия 1.78.0 вводит новое пространство имён атрибутов #[diagnostic], которое позволяет влиять на сообщения об ошибках компилятора. Например, атрибут #[diagnostic::eek:n_unimplemented] можно использовать для кастомизации сообщений, когда требуемый трейт не реализован для типа. Это предоставляет авторам трейтов возможность более точно указывать на проблемы в коде, что улучшает понимание и исправление ошибок при разработке.
  2. Утверждения небезопасных предусловий: Стандартная библиотека Rust теперь улучшена с добавлением утверждений для предусловий небезопасных функций, которые активируются в зависимости от настроек пользователя. Это изменение увеличивает шансы на обнаружение и предотвращение неопределённого поведения кода, даже если ранее оно могло казаться работоспособным.
  3. Детерминированное выравнивание: Усовершенствованы функции, которые изменяют выравнивание указателей и срезов. Теперь эти функции обещают более последовательное поведение во время выполнения, что делает их использование более надёжным и предсказуемым.
Стабилизация API и изменения в системных требованиях

В Rust 1.78 также стабилизирован ряд API, включая Barrier::new() и несколько реализаций, связанных с std::error::Error. Среди важных изменений — повышение минимальных системных требований до Windows 10 для ряда целей и обновление встроенного LLVM до версии 18, что улучшает совместимость и исправляет известные проблемы с ABI.

Дополнительно, описан новый язык программирования Для просмотра ссылки Войди или Зарегистрируйся разработанный с целью сочетать простоту Go и безопасность Rust, предлагая баланс между выразительностью и сложностью. Borgo использует статическую типизацию и совместим с пакетами Go, при этом код компилятора Borgo написан на Rust и Для просмотра ссылки Войди или Зарегистрируйся под лицензией ISC.
 
Источник новости
www.securitylab.ru

Похожие темы