This parameter type widening RFC, I didn't know about, but I have a remark.
The feature, as implemented, will allow accidental omission of type-hints, will it not? Previously, the implements keyword guaranteed a correctly type-hinted implementation - it's now possible to (purposefully, obviously, in certain rare cases) omit type-hints by accident, making the implements keyword much less (or not any) of a guarantee that the interface is implemented correctly. The addition of an explicit "mixed" or "any" pseudo-type would have made this possible, without losing the guarantee that the implements keyword used to provide - that is, it would have been possible to have this feature for the few cases where it's useful, without affecting safety in the majority of other cases where it's not. I feel like this feature takes a pretty dangerous shortcut by simply removing a constraint check that we used to have - in favor of supporting a few rare cases, we removed a guarantee that interfaces and the implements-keyword has always provided. Those rare cases could have been supported in a safe manner by introducing a "mixed" or "any" type, which would have made the use of this feature explicit - which would have removed the risk of accidental omission of type-hints in the majority of cases. The RFC page doesn't link to any discussion, and the Github thread was shut down after some negative remarks. I didn't see a discussion or a vote here on internals - did I miss something? Where or how did this get discussed and passed? Are these discussions happening somewhere else besides internals now?