You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We previously discussed with members of the types team that the stabilization in #164209 is big enough to warrant lang review. Since the FCP on that PR was types-only, @lcnr and I agreed that we should break off an issue for the lang team to FCP separately.
The lang team has agreed to review this as a product-level decision for the language. We trust the types team to handle the details. So the question is this: Do we think the cost of stabilizing the new trait solver is worth it, compared to the cost of not stabilizing it?
I firmly believe the answer is yes, for many of the reasons described at the bottom of the description of #164209. Namely:
keeping the old solver enabled by default results in new crates depending on intentionally broken behavior
we're blocking a bunch of work on the new trait solver being stable
the complexity of maintaining two trait solvers is high
This is an enormous effort, and in any such effort there will be imperfections. I am happy to ship what we have for the sake of the improvements it unlocks in the language.
Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!
cc @rust-lang/lang-advisors: FCP proposed for lang, please feel free to register concerns.
See this document for info about what commands tagged team members can give me.
Huge congratulations to the team working on the new trait solver; this is incredible work.
👍 for the idea of "ship it and keep working", here. I think the types team is making a prudent decision that has clearly taken great care to evaluate the risk of proceeding versus the risk of holding off. Types has the expertise to make that call here, and I'd defer to their judgement.
I am very happy for all the features this will unlock. I'm sure there will be a lot of excitement for those features. I also wish the types team a very well-deserved breather now that they've shipped this. ❤️
I'm very excited to see this major milestone. "Perfection is a process" -- the regressions and work to be done do not concern me, there is always work to be done, and I think this is going to be a major turning point in our ability to deliver on long-blocked Rust improvements. 💜
Thank you for all the work that's gone into this! I'm really excited by all the things that will get unblocked: both features coming and in simplifying contributions to the compiler.
No lang concerns here. While I understand there are differences, I'm happy to trust the experts on those being minor and either in the works or just fixes. (As opposed to, say, changes in-your-face enough that people would update cookbooks or something just because of this stabilization -- of course this will unblock lots of big things that will definitely have those impacts, just in future FCPs.)
What's there to say? It's quite exciting to see this stabilize. And it's exciting to unblock the many things that have been gated on this, such as TAIT, ATPIT, and RTN.
Thanks to @lcnr, to @compiler-errors, and to the many others who have worked to make this possible.
From the lang side, I see our product-level decision here as about accepting the breakage without warning that's part of this stabilization. It's clear, I think, that we should do that, given the many benefits this stabilization brings.
Going forward, our task will be to make effective use of this, and to bring to the language and to our users the expressive and valuable things that are now possible.
Activity
tmandry commentedon Oct 21, 2026
@rfcbot fcp merge lang
rust-rfcbot commentedon Oct 21, 2026
@tmandry has proposed to merge this. The next step is review by the rest of the tagged team members:
No concerns currently listed.
Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!
cc @rust-lang/lang-advisors: FCP proposed for lang, please feel free to register concerns.
See this document for info about what commands tagged team members can give me.
joshtriplett commentedon Oct 21, 2026
Huge congratulations to the team working on the new trait solver; this is incredible work.
👍 for the idea of "ship it and keep working", here. I think the types team is making a prudent decision that has clearly taken great care to evaluate the risk of proceeding versus the risk of holding off. Types has the expertise to make that call here, and I'd defer to their judgement.
I am very happy for all the features this will unlock. I'm sure there will be a lot of excitement for those features. I also wish the types team a very well-deserved breather now that they've shipped this. ❤️
🚢 🦀 🛌
@rfcbot reviewed
nikomatsakis commentedon Oct 21, 2026
@rfcbot reviewed
My comments from our lang doc:
rust-rfcbot commentedon Oct 21, 2026
🔔 This is now entering its final comment period, as per the review above. 🔔
scottmcm commentedon Oct 21, 2026
Thank you for all the work that's gone into this! I'm really excited by all the things that will get unblocked: both features coming and in simplifying contributions to the compiler.
No lang concerns here. While I understand there are differences, I'm happy to trust the experts on those being minor and either in the works or just fixes. (As opposed to, say, changes in-your-face enough that people would update cookbooks or something just because of this stabilization -- of course this will unblock lots of big things that will definitely have those impacts, just in future FCPs.)
traviscross commentedon Oct 21, 2026
What's there to say? It's quite exciting to see this stabilize. And it's exciting to unblock the many things that have been gated on this, such as TAIT, ATPIT, and RTN.
Thanks to @lcnr, to @compiler-errors, and to the many others who have worked to make this possible.
From the lang side, I see our product-level decision here as about accepting the breakage without warning that's part of this stabilization. It's clear, I think, that we should do that, given the many benefits this stabilization brings.
Going forward, our task will be to make effective use of this, and to bring to the language and to our users the expressive and valuable things that are now possible.
@rfcbot reviewed