Skip to content

fix(deps): update rust crate rand to 0.10 - #883

Merged
maxjoehnk merged 2 commits into
mainfrom
renovate/rand-0.x
Sep 27, 2026
Merged

maxjoehnk merged 2 commits into
mainfrom
renovate/rand-0.x

Conversation

@renovate

@renovate renovate Bot commented Feb 26, 2025 •

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Type Update Change
rand (source) dependencies minor 0.8 → 0.10

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

rust-random/rand (rand)

v0.10.3

Compare Source

Fixes
  • Fix WeightedIndex panic when the sum of float weights is infinite; return Error::Overflow instead (#​1808)
  • Fix spurious Error::NonFinite from Uniform::new_inclusive on large finite float ranges such as 0.0..=f64::MAX (#​1821)
  • Fix possible panic due to sampling a deserialized Uniform<char> (#​1831)
Changes
  • Report exact remaining lengths from WeightedIndex::weights() and reduce overhead when reading weights (#​1838)

v0.10.2

Compare Source

Fixes
  • Fix possible memory safety violation due to deserialization of UniformChar from bad source (#​1790)
Changes
  • Document required output order of fn partial_shuffle and apply #[must_use] (#​1769)
  • Avoid usage of unsafe in contexts where non-local memory corruption could invalidate contract (#​1791)

v0.10.1

Compare Source

This release includes a fix for a soundness bug; see #​1763.

Changes
  • Document panic behavior of make_rng and add #[track_caller] (#​1761)
  • Deprecate feature log (#​1763)

v0.10.0

Compare Source

Changes
  • The dependency on rand_chacha has been replaced with a dependency on chacha20. This changes the implementation behind StdRng, but the output remains the same. There may be some API breakage when using the ChaCha-types directly as these are now the ones in chacha20 instead of rand_chacha (#​1642).
  • Rename fns IndexedRandom::choose_multiple -> sample, choose_multiple_array -> sample_array, choose_multiple_weighted -> sample_weighted, struct SliceChooseIter -> IndexedSamples and fns IteratorRandom::choose_multiple -> sample, choose_multiple_fill -> sample_fill (#​1632)
  • Use Edition 2024 and MSRV 1.85 (#​1653)
  • Let Fill be implemented for element types, not sliceable types (#​1652)
  • Fix OsError::raw_os_error on UEFI targets by returning Option<usize> (#​1665)
  • Replace fn TryRngCore::read_adapter(..) -> RngReadAdapter with simpler struct RngReader (#​1669)
  • Remove fns SeedableRng::from_os_rng, try_from_os_rng (#​1674)
  • Remove Clone support for StdRng, ReseedingRng (#​1677)
  • Use postcard instead of bincode to test the serde feature (#​1693)
  • Avoid excessive allocation in IteratorRandom::sample when amount is much larger than iterator size (#​1695)
  • Rename os_rng -> sys_rng, OsRng -> SysRng, OsError -> SysError (#​1697)
  • Rename Rng -> RngExt as upstream rand_core has renamed RngCore -> Rng (#​1717)
Additions
  • Add fns IndexedRandom::choose_iter, choose_weighted_iter (#​1632)
  • Pub export Xoshiro128PlusPlus, Xoshiro256PlusPlus prngs (#​1649)
  • Pub export ChaCha8Rng, ChaCha12Rng, ChaCha20Rng behind chacha feature (#​1659)
  • Fn rand::make_rng() -> R where R: SeedableRng (#​1734)
Removals

v0.9.5

Compare Source

What's Changed

Full Changelog: rust-random/rand@0.9.4...0.9.5

v0.9.4

Compare Source

Fixes

Full Changelog: rust-random/rand@0.9.3...0.9.4

v0.9.3

Compare Source

v0.9.2

Compare Source

Deprecated
  • Deprecate rand::rngs::mock module and StepRng generator (#​1634)
Additions
  • Enable WeightedIndex<usize> (de)serialization (#​1646)

v0.9.1

Compare Source

Security and unsafe
  • Revise "not a crypto library" policy again (#​1565)
  • Remove zerocopy dependency from rand (#​1579)
Fixes
  • Fix feature simd_support for recent nightly rust (#​1586)
Changes
  • Allow fn rand::seq::index::sample_weighted and fn IndexedRandom::choose_multiple_weighted to return fewer than amount results (#​1623), reverting an undocumented change (#​1382) to the previous release.
Additions
  • Add rand::distr::Alphabetic distribution. (#​1587)
  • Re-export rand_core (#​1604)

v0.9.0

Compare Source

Security and unsafe
  • Policy: "rand is not a crypto library" (#​1514)
  • Remove fork-protection from ReseedingRng and ThreadRng. Instead, it is recommended to call ThreadRng::reseed on fork. (#​1379)
  • Use zerocopy to replace some unsafe code (#​1349, #​1393, #​1446, #​1502)
Dependencies
Features
  • Support std feature without getrandom or rand_chacha (#​1354)
  • Enable feature small_rng by default (#​1455)
  • Remove implicit feature rand_chacha; use std_rng instead. (#​1473)
  • Rename feature serde1 to serde (#​1477)
  • Rename feature getrandom to os_rng (#​1537)
  • Add feature thread_rng (#​1547)
API changes: rand_core traits
  • Add fn RngCore::read_adapter implementing std::io::Read (#​1267)
  • Add trait CryptoBlockRng: BlockRngCore; make trait CryptoRng: RngCore (#​1273)
  • Add traits TryRngCore, TryCryptoRng (#​1424, #​1499)
  • Rename fn SeedableRng::from_rng -> try_from_rng and add infallible variant fn from_rng (#​1424)
  • Rename fn SeedableRng::from_entropy -> from_os_rng and add fallible variant fn try_from_os_rng (#​1424)
  • Add bounds Clone and AsRef to associated type SeedableRng::Seed (#​1491)
API changes: Rng trait and top-level fns
  • Rename fn rand::thread_rng() to rand::rng() and remove from the prelude (#​1506)
  • Remove fn rand::random() from the prelude (#​1506)
  • Add top-level fns random_iter, random_range, random_bool, random_ratio, fill (#​1488)
  • Re-introduce fn Rng::gen_iter as random_iter (#​1305, #​1500)
  • Rename fn Rng::gen to random to avoid conflict with the new gen keyword in Rust 2024 (#​1438)
  • Rename fns Rng::gen_range to random_range, gen_bool to random_bool, gen_ratio to random_ratio (#​1505)
  • Annotate panicking methods with #[track_caller] (#​1442, #​1447)
API changes: RNGs
  • Fix <SmallRng as SeedableRng>::Seed size to 256 bits (#​1455)
  • Remove first parameter (rng) of ReseedingRng::new (#​1533)
API changes: Sequences
  • Split trait SliceRandom into IndexedRandom, IndexedMutRandom, SliceRandom (#​1382)
  • Add IndexedRandom::choose_multiple_array, index::sample_array (#​1453, #​1469)
API changes: Distributions: renames
  • Rename module rand::distributions to rand::distr (#​1470)
  • Rename distribution Standard to StandardUniform (#​1526)
  • Move distr::Slice -> distr::slice::Choose, distr::EmptySlice -> distr::slice::Empty (#​1548)
  • Rename trait distr::DistString -> distr::SampleString (#​1548)
  • Rename distr::DistIter -> distr::Iter, distr::DistMap -> distr::Map (#​1548)
API changes: Distributions
  • Relax Sized bound on Distribution<T> for &D (#​1278)
  • Remove impl of Distribution<Option<T>> for StandardUniform (#​1526)
  • Let distribution StandardUniform support all NonZero* types (#​1332)
  • Fns {Uniform, UniformSampler}::{new, new_inclusive} return a Result (instead of potentially panicking) (#​1229)
  • Distribution Uniform implements TryFrom instead of From for ranges (#​1229)
  • Add UniformUsize (#​1487)
  • Remove support for generating isize and usize values with StandardUniform, Uniform (except via UniformUsize) and Fill and usage as a WeightedAliasIndex weight (#​1487)
  • Add impl DistString for distributions Slice<char> and Uniform<char> (#​1315)
  • Add fn Slice::num_choices (#​1402)
  • Add fn p() for distribution Bernoulli to access probability (#​1481)
API changes: Weighted distributions
  • Add pub module rand::distr::weighted, moving WeightedIndex there (#​1548)
  • Add trait weighted::Weight, allowing WeightedIndex to trap overflow (#​1353)
  • Add fns weight, weights, total_weight to distribution WeightedIndex (#​1420)
  • Rename enum WeightedError to weighted::Error, revising variants (#​1382) and mark as #[non_exhaustive] (#​1480)
API changes: SIMD
  • Switch to std::simd, expand SIMD & docs (#​1239)
Reproducibility-breaking changes
  • Make ReseedingRng::reseed discard remaining data from the last block generated (#​1379)
  • Change fn SmallRng::seed_from_u64 implementation (#​1203)
  • Allow UniformFloat::new samples and UniformFloat::sample_single to yield high (#​1462)
  • Fix portability of distribution Slice (#​1469)
  • Make Uniform for usize portable via UniformUsize (#​1487)
  • Fix IndexdRandom::choose_multiple_weighted for very small seeds and optimize for large input length / low memory (#​1530)
Reproducibility-breaking optimisations
  • Optimize fn sample_floyd, affecting output of rand::seq::index::sample and rand::seq::SliceRandom::choose_multiple (#​1277)
  • New, faster algorithms for IteratorRandom::choose and choose_stable (#​1268)
  • New, faster algorithms for SliceRandom::shuffle and partial_shuffle (#​1272)
  • Optimize distribution Uniform: use Canon's method (single sampling) / Lemire's method (distribution sampling) for faster sampling (breaks value stability; #​1287)
  • Optimize fn sample_single_inclusive for floats (+~20% perf) (#​1289)
Other optimisations
  • Improve SmallRng initialization performance (#​1482)
  • Optimise SIMD widening multiply (#​1247)
Other
Documentation
  • Improve ThreadRng related docs (#​1257)
  • Docs: enable experimental --generate-link-to-definition feature (#​1327)
  • Better doc of crate features, use doc_auto_cfg (#​1411, #​1450)

v0.8.8

Compare Source

What's Changed

Full Changelog: rust-random/rand@0.8.7...0.8.8

v0.8.7

Compare Source

What's Changed

Full Changelog: rust-random/rand@0.8.6...0.8.7

v0.8.6

Compare Source

What's Changed

This release back-ports a fix from v0.10. See also #​1763.

Changes
  • Drop the experimental simd_support feature.

New Contributors

Full Changelog: rust-random/rand@0.8.5...0.8.6


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ 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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 7 times, most recently from d8866f1 to 9f1969f Compare March 1, 2025 18:12
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 3ef717c to 68f125d Compare March 11, 2025 15:23
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 4 times, most recently from 99da2b9 to 115b428 Compare April 5, 2025 02:37
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 3 times, most recently from 9fbaef7 to 0619ba7 Compare April 10, 2025 18:54
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 0619ba7 to eb9ccef Compare May 15, 2025 20:14
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from eb9ccef to 7ba72dd Compare May 24, 2025 00:08
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 7ba72dd to 8bb7f3f Compare June 18, 2025 22:33
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 8bb7f3f to f91a23d Compare July 2, 2025 11:57
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 10 times, most recently from d7bd894 to 7cc950b Compare August 11, 2025 15:03
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 7cc950b to 9fdb870 Compare August 13, 2025 17:49
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 7f75364 to 038591d Compare September 14, 2025 18:48
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 4 times, most recently from 5ae0c5f to 9a27977 Compare January 15, 2026 19:27
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 9a27977 to 14ef66e Compare January 18, 2026 16:24
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 6ec34c9 to 7cfe532 Compare February 8, 2026 17:31
@renovate renovate Bot changed the title fix(deps): update rust crate rand to 0.9 fix(deps): update rust crate rand to 0.10 Feb 8, 2026
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 7cfe532 to 800d4b8 Compare February 25, 2026 10:42
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 800d4b8 to c332258 Compare March 13, 2026 11:02
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from c332258 to d3c64ae Compare April 11, 2026 12:31
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from d3c64ae to dbdbcbb Compare May 18, 2026 12:51
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from dbdbcbb to e99a1f4 Compare July 2, 2026 09:55
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from e99a1f4 to 74126ec Compare July 20, 2026 21:06
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 4b62128 to bdb639f Compare August 12, 2026 03:39
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from bdb639f to c216c07 Compare August 26, 2026 16:07
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from c216c07 to 0c62b31 Compare September 3, 2026 00:53
@renovate
renovate Bot force-pushed the renovate/rand-0.x branch from 0c62b31 to f61726f Compare September 20, 2026 10:18
@renovate

renovate Bot commented Sep 27, 2026

Copy link
Copy Markdown
Contributor Author

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@maxjoehnk
maxjoehnk merged commit 82d6208 into main Sep 27, 2026
12 of 13 checks passed
@maxjoehnk
maxjoehnk deleted the renovate/rand-0.x branch September 27, 2026 14:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant