Since #36815, using SipHasher::new_with_keys gives a warning:
warning: use of deprecated item: use `DefaultHasher` instead, #[warn(deprecated)] on by default
But DefaultHasher does not have a new_with_keys method or anything similar. It looks like this functionality was deprecated without replacement. Assuming the libs team does not want to revisit this decision, the deprecation message should be changed to… something.
Right now, the easiest "fix" for code using this method is to use #[allow(deprecated)]. Since the method is marked #[stable] it’s not going away any time soon, so this is quite safe. But of course, recommending #[allow(deprecated)] in a deprecation message would defeat the point of deprecation.
Perhaps a "proper" fix would be to maintain a (non-deprecated) copy of SipHasher on crates.io?
One notable user of this method is phf. CC @sfackler
Since #36815, using
SipHasher::new_with_keysgives a warning:But
DefaultHasherdoes not have anew_with_keysmethod or anything similar. It looks like this functionality was deprecated without replacement. Assuming the libs team does not want to revisit this decision, the deprecation message should be changed to… something.Right now, the easiest "fix" for code using this method is to use
#[allow(deprecated)]. Since the method is marked#[stable]it’s not going away any time soon, so this is quite safe. But of course, recommending#[allow(deprecated)]in a deprecation message would defeat the point of deprecation.Perhaps a "proper" fix would be to maintain a (non-deprecated) copy of
SipHasheron crates.io?One notable user of this method is
phf. CC @sfackler