Вышел Rust 1.51.0
Команда Rust выпустила новую версию Rust 1.51.0. Это одно из самых крупных и долгожданных дополнений к языку Rust и менеджеру пакетов Cargo, что отмечают и их пользователи. В обновлении стабилизированы константные дженерики и преобразователь функций для Cargo, а также 18 новых методов для различных типов.
В новой сборке стало возможно писать дженерик-код для значения любого типа integer, bool или char (значения struct и enum по-прежнему нестабильны). Это изменение позволит разработчикам иметь собственную структуру массива, которая будет обобщенной по своему типу и длине.
Константные дженерики добавляют важный инструмент для разработчиков библиотек в создании новых мощных безопасных API во время компиляции.
В прошлых выпусках не было удобного способа перебора собственных значений массива, только ссылки на них, поэтому в рамках стабилизации дженериков const команда Rust стабилизировала новый API под названием Intolter. Он позволяет создавать итератор по значению для любого массива.
Согласно заявлению создателей, сборка Rust 1.51.0 дает одно из важнейших улучшений по времени компиляции для Rust на macOS. Теперь информация об отладке сопоставляет двоичный код с вашим исходным кодом, чтобы программа могла предоставить больше информации об ошибках. Ранее же в macOS отладочная информация собиралась в одну папку dSYM
с помощью инструмента dsymutill
, это занимало много времени, а сам инструмент занимал много места на диске.
Всего в релизе стабилизировано 18 новых методов для различных типов, таких как slice
и Peekable
. Среди них — методы ptr: : addr_of!
и ptr: :addr_of_mut!
, которые позволяют создавать необработанные указатели на невыровненныe поля, что раньше было невозможно.
Полный список обновлений и изменений доступен на GitHub.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: