В этой статье вы прочитаете что нового в новой версии языка программирования Rust 1.55, думаю всем любителем этого языка будет интересно.
Также можете посмотреть что было в нового в одной из прошлых версий этого языка, по этой ссылке.
Что нового в новом релизе Rust 1.55:
- В пакетном менеджере Cargo реализована возможность объединения дубликатов ошибок и предупреждений, возникающих во время сборки. При выполнении таких команд как «cargo test» и «cargo check —all-targets», приводящих к многократной сборке пакета с разными параметрами, пользователю теперь показывается сводная информация о возникновении повторяющейся проблемы, вместо отображения нескольких одинаковых предупреждений при повторной сборке одного и того же файла.
12345678910111213$ cargo +1.55.0 check --all-targetsChecking foo v0.1.0warning: function is never used: 'foo'--> src/lib.rs:9:4|9 | fn foo() {}| ^^^|= note: '#[warn(dead_code)]' on by defaultwarning: 'foo' (lib) generated 1 warningwarning: 'foo' (lib test) generated 1 warning (1 duplicate)Finished dev [unoptimized + debuginfo] target(s) in 0.84s - Код для разбора чисел с плавающей запятой в стандартной библиотеке переведён на использование более быстрого и точного алгоритма Эйзеля-Лемира, применение которого решило некоторые ранее наблюдаемые проблемы с округлением и разбором чисел с очень большим числом цифр.
- Стабилизирована возможность указания незакрытых диапазонов в шаблонах («X..» интерпретируется как диапазон, который начинается со значения X и заканчивается максимальным значением целого типа):
1234match x as u32 {0 => println!("zero!"),1.. => println!("positive number!"),} - Расширены варианты ошибок, охватываемые списком std::io::ErrorKind (классифицирует ошибки по категориям, таким как NotFound и WouldBlock). Раньше, ошибки не подпадающие под имеющиеся категории, попадали в категорию ErrorKind::Other, которая также применялась для ошибок в стороннем коде. Теперь для не подпадающих под имеющиеся категории ошибок создана отдельная внутренняя категория ErrorKind::Uncategorized, а категория ErrorKind::Other ограничена только ошибками, возникающими не в стандартной библиотеке (функции стандартной библиотеки, возвращающие
io::Error, больше не используют категорию ErrorKind::Other). - В разряд стабильных переведена новая порция API, в том числе стабилизированы методы и реализации типажей:
Bound::cloned
Drain::as_str
IntoInnerError::into_error
IntoInnerError::into_parts
MaybeUninit::assume_init_mut
MaybeUninit::assume_init_ref
MaybeUninit::write
array::map
ops::ControlFlow
x86::_bittest
x86::_bittestandcomplement
x86::_bittestandreset
x86::_bittestandset
x86_64::_bittest64
x86_64::_bittestandcomplement64
x86_64::_bittestandreset64
x86_64::_bittestandset64
- Признак «const», определяющий возможность использования в любом контексте вместо констант, применён в методе str::from_utf8_unchecked.
- Реализован третий уровень поддержки для платформы powerpc64le-unknown-freebsd. Третий уровень подразумевает базовую поддержку, но без автоматизированного тестирования, публикации официальных сборок и проверки возможности сборки кода.
Вывод:
В этой статье вы прочитали что нового в новом релизе языка программирования Rust 1.55, думаю всем любителем этого языка было интересно и полезно.
Источник: OpenNet
Подписываетесь на соц-сети:
Также рекомендую:
Подписаться
0 комментариев