In 1.35, IterMut's Send requires K: Send, but in 1.36-beta it requires K: Sync. Both are auto-derived, so it must be a change in their internals. Obviously, hashbrown is quite different than the old implementation.
https://doc.rust-lang.org/1.35.0/std/collections/hash_map/struct.IterMut.html#impl-Send

https://doc.rust-lang.org/beta/std/collections/hash_map/struct.IterMut.html#impl-Send

Ditto for ValuesMut. I'm not sure if there's any real impact in this, but it should be considered, and perhaps audit for other similar changes.
cc @Amanieu, as discussed on IRC.
In 1.35,
IterMut'sSendrequiresK: Send, but in 1.36-beta it requiresK: Sync. Both are auto-derived, so it must be a change in their internals. Obviously,hashbrownis quite different than the old implementation.https://doc.rust-lang.org/1.35.0/std/collections/hash_map/struct.IterMut.html#impl-Send

https://doc.rust-lang.org/beta/std/collections/hash_map/struct.IterMut.html#impl-Send

Ditto for
ValuesMut. I'm not sure if there's any real impact in this, but it should be considered, and perhaps audit for other similar changes.cc @Amanieu, as discussed on IRC.