Update Rust crate rand to 0.10.0#8658
Conversation
PR SummaryMedium Risk Overview Reviewed by Cursor Bugbot for commit f237359. Bugbot is set up for automated code reviews on this repo. Configure here. |
🤖 Augment PR SummarySummary: Updates the workspace Changes: Bumps 🤖 Was this summary useful? React with 👍 or 👎 |
| proptest = { version = "1.7.0", default-features = false, features = ["alloc", "std"] } # `std` or `no_std` are required, `no_std` pulls in `libm` | ||
| quote = { version = "1.0.41", default-features = false } | ||
| rand = { version = "0.9.2", default-features = false } | ||
| rand = { version = "0.10.0", default-features = false } |
There was a problem hiding this comment.
| proptest = { version = "1.7.0", default-features = false, features = ["alloc", "std"] } # `std` or `no_std` are required, `no_std` pulls in `libm` | ||
| quote = { version = "1.0.41", default-features = false } | ||
| rand = { version = "0.9.2", default-features = false } | ||
| rand = { version = "0.10.0", default-features = false } |
There was a problem hiding this comment.
rand 0.10 includes breaking API renames (notably rand::Rng -> rand::RngExt and rand_core::RngCore -> Rng), and this repo has call sites importing rand::Rng/rand::RngCore (e.g. tests/graph/test-data/rust/src/seeding/context.rs). It’s worth confirming those crates compile under 0.10 before merging.
Severity: high
🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #8658 +/- ##
==========================================
- Coverage 62.50% 62.49% -0.01%
==========================================
Files 1318 1318
Lines 134234 134234
Branches 5520 5520
==========================================
- Hits 83906 83895 -11
- Misses 49415 49424 +9
- Partials 913 915 +2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit f237359. Configure here.
| proptest = { version = "1.7.0", default-features = false, features = ["alloc", "std"] } # `std` or `no_std` are required, `no_std` pulls in `libm` | ||
| quote = { version = "1.0.41", default-features = false } | ||
| rand = { version = "0.9.2", default-features = false } | ||
| rand = { version = "0.10.0", default-features = false } |
There was a problem hiding this comment.
rand 0.10 incompatible with rand_distr 0.5.1
High Severity
Bumping rand to 0.10.0 while leaving rand_distr at 0.5.1 causes a dependency split: rand_distr 0.5.1 depends on rand ^0.9 (and therefore rand_core 0.9), while rand 0.10 uses rand_core 0.10. The Distribution trait re-exported through rand_distr ends up bound to a different Rng/RngCore trait than the one provided by rand 0.10, so calls like Bernoulli::sample(rng) and the workspace's own impl Distribution<…> for … blocks no longer type-check.
Reviewed by Cursor Bugbot for commit f237359. Configure here.


This PR contains the following updates:
0.9.2->0.10.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
rust-random/rand (rand)
v0.10.1Compare Source
This release includes a fix for a soundness bug; see #1763.
Changes
make_rngand add#[track_caller](#1761)log(#1763)v0.10.0Compare Source
Changes
rand_chachahas been replaced with a dependency onchacha20. This changes the implementation behindStdRng, but the output remains the same. There may be some API breakage when using the ChaCha-types directly as these are now the ones inchacha20instead ofrand_chacha(#1642).IndexedRandom::choose_multiple->sample,choose_multiple_array->sample_array,choose_multiple_weighted->sample_weighted, structSliceChooseIter->IndexedSamplesand fnsIteratorRandom::choose_multiple->sample,choose_multiple_fill->sample_fill(#1632)Fillbe implemented for element types, not sliceable types (#1652)OsError::raw_os_erroron UEFI targets by returningOption<usize>(#1665)TryRngCore::read_adapter(..) -> RngReadAdapterwith simpler structRngReader(#1669)SeedableRng::from_os_rng,try_from_os_rng(#1674)Clonesupport forStdRng,ReseedingRng(#1677)postcardinstead ofbincodeto test the serde feature (#1693)IteratorRandom::samplewhenamountis much larger than iterator size (#1695)os_rng->sys_rng,OsRng->SysRng,OsError->SysError(#1697)Rng->RngExtas upstreamrand_corehas renamedRngCore->Rng(#1717)Additions
IndexedRandom::choose_iter,choose_weighted_iter(#1632)Xoshiro128PlusPlus,Xoshiro256PlusPlusprngs (#1649)ChaCha8Rng,ChaCha12Rng,ChaCha20Rngbehindchachafeature (#1659)rand::make_rng() -> R where R: SeedableRng(#1734)Removals
ReseedingRng(#1722)small_rng(#1732)Configuration
📅 Schedule: Branch creation - "before 4am every weekday,every weekend" (UTC), Automerge - "before 4am every weekday,every weekend" (UTC).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.