Rust 1.95.0 è disponibile da ieri tramite rustup update stable. Due le novità di maggior interesse per chi scrive codice Rust quotidianamente, più una modifica da tenere a mente per chi sviluppa su piattaforme non standard.
Meno pacchetti esterni per la gestione delle piattaforme
La nuova macro cfg_select! permette di scegliere blocchi di codice diversi in base alla piattaforma di destinazione o alle opzioni di compilazione, con una sintassi simile a quella di una normale istruzione match. Fino a ora, la soluzione più diffusa per fare questa cosa era la crate cfg-if, usata in moltissimi progetti. Con Rust 1.95, quella funzionalità entra direttamente nella libreria standard, eliminando la dipendenza esterna.
// affiliato ▸ Proton VPN · La VPN che non ti spia con sconti fino al 70% · Provala gratis →
If-let guard nelle espressioni match
Rust 1.88 aveva introdotto le let chain, la possibilità di concatenare più condizioni let in un’unica espressione if o while. Rust 1.95 estende questa logica alle espressioni match: è ora possibile aggiungere una condizione if let direttamente su un ramo del match, combinando pattern matching e verifica di un secondo valore nello stesso colpo. Per chi lavora con strutture dati complesse o risultati opzionali, significa codice più leggibile senza dover spezzare la logica in più passaggi.
Nota per gli sviluppatori embedded
Rust 1.95 rimuove dalla versione stabile il supporto per le specifiche di target personalizzate in formato JSON, usate soprattutto nello sviluppo embedded per piattaforme non ufficialmente supportate. Come spiega il team di Rust, questa funzionalità richiedeva già in precedenza l’uso del canale nightly, quindi chi usa esclusivamente la versione stabile non dovrebbe notare differenze. Il team ha aperto un issue dedicato per raccogliere i casi d’uso reali prima di decidere se e come stabilizzare qualcosa in futuro.


Mastodon
Telegram
Bluesky
Lascia un commento