MacMusic  |  PcMusic  |  440 Software  |  440 Forums  |  440TV  |  Zicos
rust
Recherche

Async closure support is stable for Rust 1.85

mercredi 29 janvier 2025, 22:21 , par InfoWorld
Rust’s leadership team announced progress on the 26 Rust project goals for 2024. Leadership representatives said the project emphasized work on asynchronous closures and finalizing its Rust development goals for early 2025.

Async closures, cited as a flagship goal for Rust, reached stability in December, said Rust proponents. The December project goals update was posted on January 23. Rust 1.85, due February 20 and now in beta, will include async closure support, said the post. The effort was intended to bring the asynchronous Rust experience closer to synchronous Rust. Essential capabilities include tasks such as stabilizing async closures to allow for a wider variety of async-related APIs and resolving the “Send”-bound problem, which blocks widespread usage of async functions in traits. Additionally, the stabilization of language features used by Rust for the Linux project is largely complete, but some work still needs to be done.

The leadership team also cited progress on return type notation, which has not yet reached the stable stage. Async functions in traits were not yet considered dyn-compatible at the time of posting. Work is ongoing to prototype an implementation for async drop, although this work is considered experimental. Discussions for async iteration were described as fruitful but lacking widespread consensus. Further discussion is on the docket for the first half of this year.

The final release of Rust 2024 is set to be part of Rust 1.85. Rust builders also have done refactorings in the past six months that are necessary for a min_generic_const_args prototype to expand const generics. Also, cargo sem-ver checks have started to include generic parameters in the schema, enabling more precise lints. A design sketch was also fleshed out for changes in rustdoc’s JSON support, which would aid cross-crate item linting. In turn, this requires compiler extensions. Other efforts toward the project goals include:

Progress on adding const traits and implementation in the compiler.

Current work on ergonomic ref counting is focused on identifying “cheaply cloneable” types and making it easy to create closures that clone them instead of moving them.

The Znext=solver=coherence stabilization is stable in version 1.84.

A fix stopping cargo-script from overriding the release profile was posted and merged.

Goals that were not updated in the past month include an associated type position impl trait, a user-wide build cache, and implementing “merged doctests” to save doctest time. Additionally, alternatives to sandboxed build scripts will be investigated rather than continuing this project goal into the first half of 2025.
https://www.infoworld.com/article/3812600/async-closure-support-is-stable-for-rust-1-85.html

Voir aussi

News copyright owned by their original publishers | Copyright © 2004 - 2025 Zicos / 440Network
Date Actuelle
jeu. 30 janv. - 19:05 CET