slawlor / ractor

Rust actor framework
MIT License
1.3k stars 66 forks source link

Support `async fn` in traits. #206

Closed slawlor closed 3 months ago

slawlor commented 4 months ago

This issue is to track work related to async fn in traits which was recently stabilized.

Related announcement by the Rust team: https://blog.rust-lang.org/2023/12/21/async-fn-rpit-in-traits.html

Work is already underway and is currently supported with an opt-in functionality in ractor via disabling the async-trait feature.

Related work: #202, #205

Before making this the default functionality, we need to understand the implications of not boxing the futures, which is what async-trait does in its procedural macro execution. By not boxing them, the large futures may stay on the stack and influence performance.

slawlor commented 3 months ago

Resolved by #202