Upgrade to rand 0.10#161
Conversation
5464edf to
46223f6
Compare
Liam-DeVoe
left a comment
There was a problem hiding this comment.
Thanks Benjamin! Appreciate the great patch.
I found the following patch notes helpful when reviewing this PR:
- https://github.com/rust-random/rand_core/releases/tag/v0.10.0
- https://github.com/rust-random/rand/releases/tag/0.10.0
I also had a long conversation with claude that convinced me the rust ecosystem has implicitly adopted the following policy: say A depends on B and exposes some types from B in its public API. If B releases a breaking version, A is expected to update to the latest B version unconditionally. Unlike Python, where I might support years of old dependency versions (Hypothesis does this, at moderate effort to us as maintainers but great benefit to our users), Rust expects the ecosystem to move to the latest version of its dependencies basically immediately.
I found https://github.com/dtolnay/semver-trick and the "libcpocalypse" mentioned there especially helpful as context.
(I'm sure this is all obvious to long-time rust experts!)
| impl TryRng for HegelRandom { | ||
| type Error = Infallible; | ||
|
|
||
| fn try_next_u32(&mut self) -> Result<u32, Self::Error> { |
There was a problem hiding this comment.
self-note: RngCore (renamed Rng) can't be impl'd anymore. Instead you are meant to impl TryRng with type Error = Infallible. rust-random/rand_core#45
Liam-DeVoe
left a comment
There was a problem hiding this comment.
Forgot one comment! Happy to merge once that's addressed.
Co-authored-by: Liam DeVoe <orionldevoe@gmail.com>
|
Sorry about the coverage build problem. Teething issues on new infra. Will figure this out and have a fix for you shortly. |
|
If you rebase on top of main the coverage job should be working now (sorry I actually fixed this yesterday evening right before dashing out the door and forgot to tell you) |
No description provided.