std: Stabilize the hash module#22480
Conversation
|
(rust_highfive has picked a reviewer for you, use r? to override) |
|
r? @aturon |
|
The diff stat is a bit alarming, but it's 99% due to |
fea7ad7 to
3143c4b
Compare
There was a problem hiding this comment.
The doc comment above here is slightly stale -- some of it should move to the methods, I think.
|
So... I don't know how to meaningfully review the 4+kloc of stage0 fallout here, but the changes to the core module LGTM. Let me know if there's any particular area of fallout that you think wants more scrutiny. |
This commit is an implementation of [RFC 823][rfc] which is another pass over the `std::hash` module for stabilization. The contents of the module were not entirely marked stable, but some portions which remained quite similar to the previous incarnation are now marked `#[stable]`. Specifically: [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0823-hash-simplification.md * `std::hash` is now stable (the name) * `Hash` is now stable * `Hash::hash` is now stable * `Hasher` is now stable * `SipHasher` is now stable * `SipHasher::new` and `new_with_keys` are now stable * `Hasher for SipHasher` is now stable * Many `Hash` implementations are now stable All other portions of the `hash` module remain `#[unstable]` as they are less commonly used and were recently redesigned. This commit is a breaking change due to the modifications to the `std::hash` API and more details can be found on the [RFC][rfc]. Closes rust-lang#22467 [breaking-change]
|
@bors: r+ fbad3bf |
|
@bors: p=1 (important stabilization to land pre-alpha2 if possible) |
|
⌛ Testing commit fbad3bf with merge c77b248... |
|
💔 Test failed - auto-linux-32-opt |
|
⌛ Testing commit f83e23a with merge 68ff044... |
|
💔 Test failed - auto-win-64-opt |
|
💔 Test failed - auto-win-32-nopt-t |
|
💔 Test failed - auto-win-32-opt |
|
💔 Test failed - auto-win-64-nopt-t |
|
💔 Test failed - auto-linux-64-nopt-t |
|
@bors: retry |
This commit is an implementation of [RFC 823][rfc] which is another pass over the `std::hash` module for stabilization. The contents of the module were not entirely marked stable, but some portions which remained quite similar to the previous incarnation are now marked `#[stable]`. Specifically: [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/0823-hash-simplification.md * `std::hash` is now stable (the name) * `Hash` is now stable * `Hash::hash` is now stable * `Hasher` is now stable * `SipHasher` is now stable * `SipHasher::new` and `new_with_keys` are now stable * `Hasher for SipHasher` is now stable * Many `Hash` implementations are now stable All other portions of the `hash` module remain `#[unstable]` as they are less commonly used and were recently redesigned. This commit is a breaking change due to the modifications to the `std::hash` API and more details can be found on the [RFC][rfc]. Closes rust-lang#22467 [breaking-change]
|
⌛ Testing commit f83e23a with merge fe7b8b2... |
|
💔 Test failed - auto-linux-32-opt |
…excrichton This commit has already been merged in rust-lang#21774, but i think it has been accidently overriden by rust-lang#22584 and rust-lang#22480. r? @alexcrichton
This commit is an implementation of RFC 823 which is another pass over
the
std::hashmodule for stabilization. The contents of the module were notentirely marked stable, but some portions which remained quite similar to the
previous incarnation are now marked
#[stable]. Specifically:std::hashis now stable (the name)Hashis now stableHash::hashis now stableHasheris now stableSipHasheris now stableSipHasher::newandnew_with_keysare now stableHasher for SipHasheris now stableHashimplementations are now stableAll other portions of the
hashmodule remain#[unstable]as they are lesscommonly used and were recently redesigned.
This commit is a breaking change due to the modifications to the
std::hashAPIand more details can be found on the RFC.
Closes #22467
[breaking-change]