A equipe de desenvolvimento do Rust anunciou a disponibilização da versão estável 1.96.0. O novo release traz aprimoramentos na biblioteca padrão, novas macros de asserção, correções de vulnerabilidades e mudanças importantes no comportamento dos alvos WebAssembly.
Para usuários que já utilizam o rustup, a atualização pode ser feita com um simples comando:
rustup update stable
Caso ainda não tenha o rustup instalado, ele pode ser baixado na página oficial do projeto.
Principais novidades da versão 1.96.0
Novos tipos Range copiáveis
Historicamente, os tipos de intervalo (Range, RangeFrom, RangeInclusive, etc.) não implementavam o traço Copy, o que dificultava o uso em estruturas que exigem cópia simples. O RFC 3550 introduziu uma família de tipos que implementam IntoIterator em vez de Iterator, permitindo que sejam Copy.
A partir desta versão, a biblioteca padrão estabiliza os seguintes tipos em core::range:
core::range::Range
core::range::RangeFrom
core::range::RangeInclusive
Futuras edições deverão incluir ainda core::range::RangeFull e core::range::RangeTo como reexportações de core::ops. Enquanto isso, a sintaxe tradicional 0..1 continua produzindo os tipos legados, que serão migrados nos próximos lançamentos.
Exemplo de uso:
use core::range::Range;
#[…