Language update adds info subcommand to Cargo that provides detailed information about packages in the Cargo registry. Credit: Mihai Simonia / Shutterstock Rust 1.82, the newest version of the popular memory-safe programming language, fulfills a longstanding request for displaying information in the Cargo package manager registry. Also with Rust 1.82, Apple macOS on 64-bit Arm now offers Rust’s highest guarantee of functionality. The update was announced October 17. Developers using a previous version of Rust can access the update by running the command rustup update stable. For Cargo, Rust adds a cargo info subcommand to show information about a package in the registry. This feature has been requested for nearly 10 years. Third-party extensions like this have been written over the years; this implementation was developed as cargo-information before merging into Cargo itself. Also in Rust 1.82, aarch64-apple-darwin for macOS on 64-bit Arm CPUs now is a tier 1 Rust target, backed by the highest guarantee of working properly. Every change in the Rust repository must pass full tests on every tier 1 target before it can be merged. This target had been introduced as tier 2 in Rust 1.49, making it available in rustup. The new milestone puts the aarch64-apple-darwin target on par with the 64-bit Arm Linux and x86 macOS, Linux, and Windows targets. Additionally, targets for Mac Catalyst, an Apple technology for running iOS applications natively on the Mac, now are tier 2. Rust 1.82 follows the September 5 release of Rust 1.81, which stabilized the Error trait in the Rust core library. Elsewhere in Rust 1.82: Rust now supports the use<..> syntax within certain impl Trait bounds to control which generic lifetime parameters are captured. Return-position impl Trait (RPIT) types in Rust capture certain generic parameters. Capturing a generic parameter allows the parameter to be used in the hidden type. That, in turn, affects borrow checking. Native syntax for creating a raw pointer is featured. It is the responsibility of persons writing the extern block to ensure that all signatures contained within it are correct; thus, developers now can write unsafe extern. A benefit of this is that items within an unsafe extern block can be marked as safe to use. Some Rust attributes, such as no-mangle, can be used to cause undefined behavior without any unsafe block. If this were regular code, it would be required that these be placed in an unsafe {} block, but so far, attributes have not had comparable syntax. To reflect that these attributes can undermine Rust safety guarantees, these now are considered “unsafe” and should be written as follows: #unsafe(no_mangle)] pub fn my global_function (){} Patterns that match empty types now can be omitted. Rust 1.82 standardizes on a set of rules for how NaN (not a number) values behave. The const assembly operand now offers a way to use integers as immediates without first storing them in a register. Related content feature What is Rust? Safe, fast, and easy software development Unlike most programming languages, Rust doesn't make you choose between speed, safety, and ease of use. Find out how Rust delivers better code with fewer compromises, and a few downsides to consider before learning Rust. By Serdar Yegulalp Nov 20, 2024 11 mins Rust Programming Languages Software Development how-to Kotlin for Java developers: Classes and coroutines Kotlin was designed to bring more flexibility and flow to programming in the JVM. Here's an in-depth look at how Kotlin makes working with classes and objects easier and introduces coroutines to modernize concurrency. By Matthew Tyson Nov 20, 2024 9 mins Java Kotlin Programming Languages analysis Azure AI Foundry tools for changes in AI applications Microsoft’s launch of Azure AI Foundry at Ignite 2024 signals a welcome shift from chatbots to agents and to using AI for business process automation. By Simon Bisson Nov 20, 2024 7 mins Microsoft Azure Generative AI Development Tools news Microsoft unveils imaging APIs for Windows Copilot Runtime Generative AI-backed APIs will allow developers to build image super resolution, image segmentation, object erase, and OCR capabilities into Windows applications. By Paul Krill Nov 19, 2024 2 mins Generative AI APIs Development Libraries and Frameworks Resources Videos