I documented the pinyin regression at https://github.com/rust-lang/rust/issues/28854 - this is an unfortunate interaction of “bridge” impls causing a deref coercion to be skipped and the lack of subtyping in trait matching - the code used to work because of a soundness hole.