Paul Krill
Editor at Large

Rust 1.90 brings workspace publishing support to Cargo

news
Sep 19, 20252 mins

Rust developers now can automatically publish all crates in a workspace in the correct order, without manually ordering individual publishes.

A rusty crown sits on an anvil.
Credit: AL-art/Shutterstock

The Rust release team has released Rust 1.90, an update of the popular memory-safe programming language that brings native support for workspace publishing to the Cargo package manager. Rust 1.90 also demotes the x86-64-apple-darwin target.

The update was announced September 18. Developers who have Rust installed via rustup can update with the command rustup update stable.

Rust 1.90 brings support for a new command, cargo publish --workspace, that will automatically publish all of the crates in a workspace in the proper order, following any dependencies between them. While this already has been possible by using external tools or by manually ordering individual publishes, the functionality is now native to Cargo. The native integration allows Cargo’s publish verification to run a build across the full set of to-be-published crates as if they were published, the Rust team said.

Rust 1.90 also demotes x86_64-apple-darwin target from Tier 1 with host tools to Tier 2 with host tools. GitHub will soon discontinue the provision of free macOS x86-64 runners for public repositories, while Apple has announced plans to discontinue support for the x86-64 architecture, the Rust team noted. The team added that this change will not immediately impact users. Builds of both the standard library and the compiler still will be distributed by the Rust Project for use via rustupor alternative installation methods while the target remains at Tier 2. But over time it is likely that reduced coverage for this target will cause things to break or fall out of compatibility with no further announcements, the team said.

Also in Rust 1.90, the x86_64-unknown-linux-gnu target now will use the LLD linker for linking Rust crates by default. The release team said this should result in improved linking performance versus the default BFD Linux linker. Developers should not see any difference other than reduced compilation time. But if they do experience issues, developers can opt out by using the -C linker-features=-lld compiler flag, the Rust team said.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author