--- tags: weekly-meeting --- # 2022-06-03 Planning meeting ## Triage discussion Conclusion: * `#t-types/nominated` * have triagebot open a new topic each time something is nominated * reminder posted to the topic each 2 weeks until the nomination label is removed * if the issue is marked as release blocking * triagebot posts "T-N days and counting" on a daily basis We can make this reusable for other teams, e.g. for lang team. ## Roadmap and initiative updates ### [GATs](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284878463) Posted a [comment](https://github.com/rust-lang/rust/pull/96709#issuecomment-1129311660) summarizing the concerns ### [TAITs](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284878931) [9 issues left before stabilization](https://github.com/rust-lang/rust/issues?q=is%3Aopen+is%3Aissue+label%3AF-type_alias_impl_trait+assignee%3Aoli-obk), some of which have open PRs already. Several are now blocked on `for<'a> T: 'a` bounds not being satisfied by "themselves" ### [RPIT refactor](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284879563) - Yesterday we were talking with Niko that this may need a meeting to agree on a short/mid term solution/design and to also talk about a long term solution/design - Have a branch new branch for this work, rebased on master on top of some "big" changes by Camile and lazy TAITs from Oli - We are able now to properly remap fns generics ids to RPIT ids in all the cases (hopefully) - We need to add generics from APITs and impl/trait blocks to the RPIT - There are a few failing tests to go ### [a-mir-formality](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284877997) * Have setup a roadmap based on a few spike issues * Have nearly created the skeleton -- still some work to do * Started cleaning up the notation so that it is closer to Rust Shoutouts: * [Will Pierce (pierwill)](https://github.com/pierwill/) for doc updates. * [Domink Stolz (voidc)](https://github.com/voidc) for mir typing skeleton. * [Mario Carneiro (digama0)](https://github.com/digama0) for naming fixes and other contributions. ### [negative impls](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284880276) * working on a [draft RFC](https://hackmd.io/@nikomatsakis/SJxGtCs1c) ### [chalk-ir](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284880630) [Michael Goulet (compiler-errors)](https://github.com/compiler-errors/) made an awesome [PR](https://github.com/rust-lang/rust/pull/97287) that moved TyData to rustc_type_ir and added an Interner. This unblocks some things. Next step is probably RegionData. [Nicholas Nethercote (nnethercote)](https://github.com/nnethercote) opened [#97447](https://github.com/rust-lang/rust/issues/97447), which happens to match the chalk folder structure better. :tada: rso ### [NLL](https://rust-lang.zulipchat.com/#narrow/stream/326132-t-types.2Fmeetings/topic/2022.E2.80.9006.E2.80.9003/near/284881590) Stabilization PR (#95565) has FCP completed. I just need to write a real stabilization post and just get it reviewed (want to also talk to Esteban about diagnostics and make sure he is good with the changes). I also have been trying to diagnose the duplicate errors in [this issue](https://github.com/rust-lang/rust/blob/master/src/test/ui/rfc1623.rs). But it's slow since I haven't really looked at this code much. Recent contributions: * BN made [#97284](https://github.com/rust-lang/rust/issues/97284) PR that restored 'static suggestions ### shallow subtyping * [lcnr](https://github.com/lcnr/) has an in-progress PR that moves the leak-check into the trait resolver ### dyn soundness * [lcnr](https://github.com/lcnr/) was exploring `dyn Trait` and some issues around associated type bindings (like `dyn Trait<Assoc = u32>`) when the trait already has bindings from the supertrait (e.g., `trait Trait: SuperTrait<Assoc = i32>`). We discussed it and came up with kind of plan, but a comprehensible write-up is needed. * This intersected the needs of async fns in traits and required separating `dyn Trait` from `Trait`; this also affects several dyn soundness bugs. ### dyn upcasting * This has been stalled for a while on a minor soundness point. * [Discussed here](https://rust-lang.zulipchat.com/#narrow/stream/144729-t-types/topic/dyn.20upcasting.202021-12)