Goals:
Issues: (project board)
async
closures (i.e. able to borrow from the closure)async Drop
Goals:
Issues: (project board)
Skipped for the holidays.
Goals:
Issues: (project board)
Goals:
Issues: (project board)
Goals:
Issues: (project board)
Goals:
Issues: (project board)
Issues: (project board)
Goals:
Goals:
Issues: (project board)
#[refine]
for RPITIT, identify any blockersGoals:
Issues: (project board)
Goals:
Issues: (project board)
Goals:
Issues: (project board)
PointerSized
.
Goals:
Issues: (project board)
Boxing<T>
dyn*
)
Goals:
Issues: (project board)
Goals:
I-async-nominated
)Issues: (project board)
dyn*
conversion traits
futures-concurrency
, bringing it up to production quality in preparation for the RFCGoals:
Issues: (project board)
dyn*
conversion traits
dyn*
.Goals:
Issues: (project board)
dyn*
implementation
IntoDynStar
and friends, or whatever we call them)
Goals:
Issues: (project board)
dyn*
implementation
dyn* Trait
working (basically just covers the cast and running the destructor)dyn* Trait
objects
Goals:
Issues: (project board)
do
notation)dyn*
implementation
dyn* Trait
working (basically just covers the cast and running the destructor)
dyn*
drop glue, currently it's generating invalid LLVM code that I'm debugging.dyn* Trait
objects
Goals:
Issues: (project board)
do
notation)
select!
problems
select!
, and "implicit shared mutability"IntoFuture
(#67644) - Stabilized in Rust 1.64!dyn*
casting traits
dyn*
looks like in MIR
Goals:
must_not_suspend
test case (#97333)
Issues: (project board)
await
returned values
moro
closely and write explanation docsAsyncDrop
select!
in tokio's mini-redis crate and elsewheredyn*
dyn*
dyn*
implementation, start working on it
Goals:
Issues: (project board)
yielding-in-match-guard.rs
work with drop trackingawait
returned values
ReadBuf
API discussions (yak shave towards async IO traits) https://github.com/rust-lang/rust/pull/97015async::{Read, Write}
alternatives https://github.com/nrc/portable-interoperable/tree/master/io-traits#alternatives (still some work to do)Seek
trait https://github.com/nrc/portable-interoperable/tree/master/io-traits#seekdyn*
dyn*
dyn*
implementation in the meantime.dyn*
coercions
Goals:
Issues: (project board)
yielding-in-match-guard.rs
is broken with drop tracking.zirconium.n
maybe working on thisdyn*
dyn*
implementation
dyn*
.Goals:
Issues: (project board)
Goals:
Issues: (project board)
-Zdrop-tracking
-> impl Future
or other traits and write a Github commentIntoFuture
Goals:
Issues: (project board)
-Zdrop-tracking
suggest_adding_lifetime_params
suggestion is not firing on the async cases in the bugReadBuf
API discussions (yak shave towards async IO traits)async::{Read, Write}
alternativesSeek
traitGoals:
Issues: (project board)
suggest_adding_lifetime_params
suggestion is not firing on the async cases in the bug-Zdrop-tracking
ReadBuf
API discussions (yak shave towards async IO traits)
BufRead
async::{Read, Write}
alternatives
Goals:
Issues: (project board)
-Zdrop-tracking
suggest_adding_lifetime_params
suggestion is not firing on the async cases in the bugBufRead
async::{Read, Write}
alternatives
select! {}
's concurrency semantics ("async concurrency III") (link)Goals:
?
Goals:
Issues:
suggest_adding_lifetime_params
suggestion firing on the async cases in the bug
Summary:
Summary: Published the Async Rust in 2022 blog post on Inside Rust. wg-async-foundations is now wg-async.
Summary: Began drafting an RFC on "overconstrained impls" as a precursor for the RPITIT RFC. Continued to hammer out the design for improvements to dyn. Continued progress on the implementation of RPITIT.
Summary: Made progress on the following goals, but time constraints didn't allow me to complete any of them. I will constrain my next sprint to fewer goals to ensure delivery.
Goals:
?
rustc_generator
attribute to annotate fn
s as a placeholder to uplift logic from proc-macroItemKind::Generator
or a new field on functions in type system, with no new syntaxSummary: Progress on bugs and refining goals for polish.
Goals:
Issues: (project board)
(eholk) error[E0391]: cycle detected when computing type of async fn #78649
impl Trait
, which requires type checking, which we were trying to do in the first place. Probably not an easy fix, so shelving for now.(tmandry) E0623 highlights wrong parameter in async fn #74256
suggest_adding_lifetime_params
suggestion firing on the async cases in the bug(pnkfelix) Strange async use …; compiler suggestion #87613
use
injection point(s) to drive suggestions
Summary:
Summary: Tokio-console is seeing healthy user adoption, based on activity on their Discord. Crashdump debugging needs are largely coupled to compiler (not executor) and hopes to get proof-of-concept for "Decode stack of suspended async fns" by end of February.
Goals:
Issues: (project board)
use
injection point(s) to drive suggestions
Goals:
?
size_hint
rustc_generator
attribute to annotate fn
s as a placeholder to uplift logic from proc-macroItemKind::Generator
or a new field on functions in type system, with no new syntaxfor await pat in expr
in proc-macroGoals:
Issues: (project board)
(pnkfelix) Strange async use …; compiler suggestion #87613
use
injection point(s) to drive suggestions(tmandry) E0623 highlights wrong parameter in async fn #74256
(nikomatsakis) pick "Async fn does not compile if lifetime does not appear in bounds (sometimes)" #63033 back up again
[#89734] Unhelpful compiler message when a reference is used inside of an await block #723120 (estebank)
finish review and land
(eholk) error[E0391]: cycle detected when computing type of async fn #78649
(eholk) Dropped variables still included in generator type #57478 (part of #69663)
Goals:
?
size_hint
that require less code than the current approachrustc_generator
attribute to annotate fn
s as a placeholder to uplift logic from proc-macroItemKind::Generator
or a new field on functions in type system, with no new syntaxfor await pat in expr
in proc-macroGoals:
Issues:
.await
ing on sync fn
#66731 (estebank)AssignOp
with new backing data structuresfn main
, and not async fn main
must_not_suspend
was made unstable, which causes problems that may need and MCP to fix: https://github.com/rust-lang/compiler-team/issues/469Goals:
Issues:
.await
ing on sync fn
#66731 (estebank)
must_not_suspend
was made unstable, which causes problems that may need and MCP to fix: https://github.com/rust-lang/compiler-team/issues/469Goals:
Issues:
.await
ing on sync fn
#66731 (estebank).await
or turning fn
into async fn
(if the types are correct and the transform would be valid). Looking at the ticket history, we could get away with adding Span
s to DesugaringKind
pointing at the suggestion places (to avoid changing the crate dep tree).must_not_suspend
until we fix the capture code, both:
async fn main
and to mention the "task-local auto trait" problem – nikomatsakisPin::new(async {})
(PR: #89870)async fn main
and to mention the "task-local auto trait" problem – nikomatsakisInitiatives:
Polish issues:
#[must_not_suspend]
: basic cases implemented, awaiting final review: https://github.com/rust-lang/rust/pull/88865async fn main
and to mention the "task-local auto trait" problem – nikomatsakismust_not_suspend
lint - Gus Wynn
TODO
TODO