Skip to content

Conversation

@projectorigin-renovate
Copy link
Contributor

@projectorigin-renovate projectorigin-renovate bot commented Jan 27, 2025

This PR contains the following updates:

Package Type Update Change
rand (source) dependencies minor 0.8.50.9.0

Release Notes

rust-random/rand (rand)

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)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, 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 has been generated by Renovate Bot.

@projectorigin-renovate projectorigin-renovate bot enabled auto-merge (squash) January 27, 2025 14:17
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 4 times, most recently from e76362e to 4c3ff1f Compare February 12, 2025 09:19
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 25f6e25 to e9a9425 Compare February 24, 2025 09:20
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 3 times, most recently from edb52d4 to 56c44a8 Compare March 18, 2025 09:20
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from c62a972 to 8deb41d Compare March 20, 2025 10:18
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 3 times, most recently from d3e2939 to 2e121ed Compare April 10, 2025 09:18
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 1c788c6 to a49da78 Compare May 9, 2025 09:22
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from de8c6da to a4b74c7 Compare May 20, 2025 09:24
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 2ac6dc9 to 03e65ba Compare June 3, 2025 13:39
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from f28dac8 to 9a7784f Compare June 11, 2025 09:26
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 4 times, most recently from e00226f to a8ed067 Compare July 17, 2025 09:23
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 4 times, most recently from c17b55a to 56d1818 Compare August 11, 2025 14:26
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 27917fd to b53521a Compare September 4, 2025 09:23
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from dc78a12 to 5484278 Compare October 2, 2025 10:22
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 2 times, most recently from 186eb6a to 4a34491 Compare October 16, 2025 13:35
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 3 times, most recently from 3df33d0 to 469b1ed Compare October 27, 2025 10:26
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 3 times, most recently from b45c1ad to 3993ec5 Compare November 18, 2025 09:26
@projectorigin-renovate projectorigin-renovate bot force-pushed the renovate/rand-0.x branch 3 times, most recently from 9a112ad to d8cdcb5 Compare November 25, 2025 09:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant