Команда разработчиков Rust рада представить релиз Rust 1.11. Rust — это системный язык программирования, при разработке которого внимание сосредоточено на безопасности, скорости и параллелизме.
Как обычно, вы можете установить Rust 1.11 с соответствующей страницы на официальном сайте, а также посмотреть примечания к выпуску на GitHub.
Основные изменения
- Большая часть изменений касалась пока ещё нестабильных внутренностей компилятора. Началась работа над инкрементальной компиляцей и переходом на MIR. В этом выпуске были заложены основы для этих возможностей.
- В выпуске 1.10 был введён новый формат контейнеров
cdylib
, который используется при компиляции кода на Rust для встраивания в другие языки. До этого момента поддержкаcdylib
была реализована только в компиляторе, теперь эта возможность стала доступна и в Cargo. - В стандартной библиотеке изменилась функция хэширования по умолчанию с SipHash 2-4 на SipHash 1-3.
Стабилизации библиотеки
- В
BinaryHeap
,BTreeMap
, иBTreeSet
добавлен методappend
. - В
BTreeMap
иBTreeSet
добавлен методsplit_off
. - Методы
to_degrees
иto_radians
ранее были реализованы дляf32
иf64
вlibstd
, теперь они также доступны вlibcore
. - В
Iterator
добавлены два новых метода:sum
иproduct
. Cell
иRefCell
получили методget_mut
.assert_eq!
, как иassert!
, теперь принимает пользовательское сообщение об ошибке.- Главный поток теперь называется “main” вместо “<main>”.
Cargo
- Добавлена поддержка цвета для Windows-консолей, и вы можете теперь конфигурировать цвета для stderr так же, как и для stdout.
- Скрипты сборки теперь могут выдавать предупреждения.
- Как было упомянуто выше, добавлена поддержка cdylib-контейнеров.
- Cargo теперь предотвращает публикацию контейнеров при наличии изменённых файлов или файлов, которые не являются частью рабочего дерева.
>>> Подробности