> After a few more minutes thought:
> When you upgraded `foo` from 2021 to 2024, `cargo fix` would have had to add a `Leak` bound to the parameter on the method. Removing that bound would be a breaking change. Therefore, the issue could actually be in `bar`. But this also highlights another issue: it's a breaking change to start allowing `!Leak` types to be passed to any generic method of a trait, even with this firewall. That means like `Iterator::map` can't take a closure which has a `!Leak` type in its state, for example.
> But also what is the issue in `bar` if so? In 2021 edition, the interface of any trait you impl coming from a 2024 edition crate is tested under 2024 edition somehow? Does that work? What does the error message say to you?
> My point is not that this is impossible, but that its not easy at all.
https://www.reddit.com/r/rust/comments/16ltgn1/comment/k145i...
No comments yet.