Вышел Rust 1.80
Разработчики опубликовали релиз языка программирования Rust 1.80. Он включает структуры LazyCell и LazyLock, которые позволяют отложить инициализацию данных до первого доступа, а вторая поддерживает средства синхронизации для использования в многопоточном коде.
В компиляторе rustc стабилизирована опция "--check-cfg". Она задействована в пакетном менеджере для проверки всех имён и значений, задаваемых через cfg, включая имена из Cargo.toml, а также новый вывод cargo::rustc-check-cfg из скриптов сборки. Опция позволяет обнаружить опечатки или другие ошибки конфигурации.
В шаблонах теперь можно указывать диапазоны в форматах "a..b" и "..b" по аналогии с использованием выражений Range и RangeTo.
Признак "const", который определяет возможность использования в любом контексте вместо констант, применили в функциях:
<[T]>::last_chunk,
BinaryHeap::new.
Кроме того, в разряд стабильных перевели несколько десятков API, в том числе методы и реализации типажей.
Наконец, реализован третий уровень поддержки для платформы x86_64-unknown-linux-none. Он подразумевает базовую поддержку без автоматизированного тестирования, публикации официальных сборок и проверки возможности сборки кода.
В июне вышла версия Rust 1.79 с поддержкой inline-констант, возможностью импорта функции main из других модулей и crate-пакетов и вторым уровнем поддержки для платформы x86_64-unknown-linux-none.
Читать на habr.com