Вышла Rust 1.80, последняя версия популярного безопасного для памяти языка программирования, в которой появились «ленивые» типы, позволяющие отложить инициализацию данных до первого обращения к ним.
Rust 1.80 был представлен 25 июля. Разработчики, у которых предыдущая версия Rust установлена через rustup, могут обновить ее до версии 1.80, выполнив команду $ rustup update stable.
Новые ленивые типы LazyCell и LazyLock, которые откладывают инициализацию значений до первого обращения, похожи на типы OnceCell и OnceLock, стабилизированные в Rust 1.70, но с функцией инициализации, включенной в ячейку. Это завершает стабилизацию функциональности, перешедшей в стандартную библиотеку из критериев lazy_static и once_cell. LazyLock - это потокобезопасный вариант, подходящий для таких мест, как статические значения. В LazyCell отсутствует синхронизация потоков, поэтому он не реализует Sync, который необходим для static, но может быть использован в thread_local! statics, сообщила команда Rust.
Также в Rust 1.80 шаблоны диапазонов теперь могут использовать эксклюзивные конечные точки, записываемые a..b или ..b, подобно типам выражений Range и RangeTo. Эксклюзивные диапазоны были реализованы в Rust как нестабильная возможность. По словам команды Rust, блокировка вызывала опасения, что они могут внести путаницу и увеличить вероятность ошибок off-by-one в шаблонах. В Rust 1.80 проверка исчерпанности была улучшена, чтобы лучше обнаруживать пробелы в сопоставлении шаблонов, а новые линки non_contiguous_range_endpoints и overlapping_range_endpoints помогут обнаружить случаи, когда разработчики могут захотеть поменять эксклюзивные шаблоны на инклюзивные, или наоборот.
В Rust 1.79 rustc стабилизировал флаг --check-cfg. Теперь Cargo 1.80 включает эту проверку для всех известных ему имен и значений cfg (в дополнение к хорошо известным именам и значениям из rustc). Это включает имена функций из Cargo.toml, а также новый вывод cargo::rustc-check-cfg из скриптов сборки.
Понравилась новость? Тогда не забудь оставить свой комментарий.
А так же, добавь наш сайт в закладки (нажми Ctrl+D), не теряй нас.
Комментарии