fix(deps): update rust crate rand to 0.9.0 #87

Merged
kjuulh merged 1 commits from renovate/all into main 2025-01-28 02:36:19 +01:00
Owner

This PR contains the following updates:

Package Type Update Change
rand (source) dependencies minor 0.8.5 -> 0.9.0

Release Notes

rust-random/rand (rand)

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 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 has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [rand](https://rust-random.github.io/book) ([source](https://github.com/rust-random/rand)) | dependencies | minor | `0.8.5` -> `0.9.0` | --- ### Release Notes <details> <summary>rust-random/rand (rand)</summary> ### [`v0.9.0`](https://github.com/rust-random/rand/blob/HEAD/CHANGELOG.md#090---2025-01-27) [Compare Source](https://github.com/rust-random/rand/compare/0.8.5...0.9.0) ##### Security and unsafe - Policy: "rand is not a crypto library" ([#&#8203;1514](https://github.com/rust-random/rand/issues/1514)) - Remove fork-protection from `ReseedingRng` and `ThreadRng`. Instead, it is recommended to call `ThreadRng::reseed` on fork. ([#&#8203;1379](https://github.com/rust-random/rand/issues/1379)) - Use `zerocopy` to replace some `unsafe` code ([#&#8203;1349](https://github.com/rust-random/rand/issues/1349), [#&#8203;1393](https://github.com/rust-random/rand/issues/1393), [#&#8203;1446](https://github.com/rust-random/rand/issues/1446), [#&#8203;1502](https://github.com/rust-random/rand/issues/1502)) ##### Dependencies - Bump the MSRV to 1.63.0 ([#&#8203;1207](https://github.com/rust-random/rand/issues/1207), [#&#8203;1246](https://github.com/rust-random/rand/issues/1246), [#&#8203;1269](https://github.com/rust-random/rand/issues/1269), [#&#8203;1341](https://github.com/rust-random/rand/issues/1341), [#&#8203;1416](https://github.com/rust-random/rand/issues/1416), [#&#8203;1536](https://github.com/rust-random/rand/issues/1536)); note that 1.60.0 may work for dependents when using `--ignore-rust-version` - Update to `rand_core` v0.9.0 ([#&#8203;1558](https://github.com/rust-random/rand/issues/1558)) ##### Features - Support `std` feature without `getrandom` or `rand_chacha` ([#&#8203;1354](https://github.com/rust-random/rand/issues/1354)) - Enable feature `small_rng` by default ([#&#8203;1455](https://github.com/rust-random/rand/issues/1455)) - Remove implicit feature `rand_chacha`; use `std_rng` instead. ([#&#8203;1473](https://github.com/rust-random/rand/issues/1473)) - Rename feature `serde1` to `serde` ([#&#8203;1477](https://github.com/rust-random/rand/issues/1477)) - Rename feature `getrandom` to `os_rng` ([#&#8203;1537](https://github.com/rust-random/rand/issues/1537)) - Add feature `thread_rng` ([#&#8203;1547](https://github.com/rust-random/rand/issues/1547)) ##### API changes: rand_core traits - Add fn `RngCore::read_adapter` implementing `std::io::Read` ([#&#8203;1267](https://github.com/rust-random/rand/issues/1267)) - Add trait `CryptoBlockRng: BlockRngCore`; make `trait CryptoRng: RngCore` ([#&#8203;1273](https://github.com/rust-random/rand/issues/1273)) - Add traits `TryRngCore`, `TryCryptoRng` ([#&#8203;1424](https://github.com/rust-random/rand/issues/1424), [#&#8203;1499](https://github.com/rust-random/rand/issues/1499)) - Rename `fn SeedableRng::from_rng` -> `try_from_rng` and add infallible variant `fn from_rng` ([#&#8203;1424](https://github.com/rust-random/rand/issues/1424)) - Rename `fn SeedableRng::from_entropy` -> `from_os_rng` and add fallible variant `fn try_from_os_rng` ([#&#8203;1424](https://github.com/rust-random/rand/issues/1424)) - Add bounds `Clone` and `AsRef` to associated type `SeedableRng::Seed` ([#&#8203;1491](https://github.com/rust-random/rand/issues/1491)) ##### API changes: Rng trait and top-level fns - Rename fn `rand::thread_rng()` to `rand::rng()` and remove from the prelude ([#&#8203;1506](https://github.com/rust-random/rand/issues/1506)) - Remove fn `rand::random()` from the prelude ([#&#8203;1506](https://github.com/rust-random/rand/issues/1506)) - Add top-level fns `random_iter`, `random_range`, `random_bool`, `random_ratio`, `fill` ([#&#8203;1488](https://github.com/rust-random/rand/issues/1488)) - Re-introduce fn `Rng::gen_iter` as `random_iter` ([#&#8203;1305](https://github.com/rust-random/rand/issues/1305), [#&#8203;1500](https://github.com/rust-random/rand/issues/1500)) - Rename fn `Rng::gen` to `random` to avoid conflict with the new `gen` keyword in Rust 2024 ([#&#8203;1438](https://github.com/rust-random/rand/issues/1438)) - Rename fns `Rng::gen_range` to `random_range`, `gen_bool` to `random_bool`, `gen_ratio` to `random_ratio` ([#&#8203;1505](https://github.com/rust-random/rand/issues/1505)) - Annotate panicking methods with `#[track_caller]` ([#&#8203;1442](https://github.com/rust-random/rand/issues/1442), [#&#8203;1447](https://github.com/rust-random/rand/issues/1447)) ##### API changes: RNGs - Fix `<SmallRng as SeedableRng>::Seed` size to 256 bits ([#&#8203;1455](https://github.com/rust-random/rand/issues/1455)) - Remove first parameter (`rng`) of `ReseedingRng::new` ([#&#8203;1533](https://github.com/rust-random/rand/issues/1533)) ##### API changes: Sequences - Split trait `SliceRandom` into `IndexedRandom`, `IndexedMutRandom`, `SliceRandom` ([#&#8203;1382](https://github.com/rust-random/rand/issues/1382)) - Add `IndexedRandom::choose_multiple_array`, `index::sample_array` ([#&#8203;1453](https://github.com/rust-random/rand/issues/1453), [#&#8203;1469](https://github.com/rust-random/rand/issues/1469)) ##### API changes: Distributions: renames - Rename module `rand::distributions` to `rand::distr` ([#&#8203;1470](https://github.com/rust-random/rand/issues/1470)) - Rename distribution `Standard` to `StandardUniform` ([#&#8203;1526](https://github.com/rust-random/rand/issues/1526)) - Move `distr::Slice` -> `distr::slice::Choose`, `distr::EmptySlice` -> `distr::slice::Empty` ([#&#8203;1548](https://github.com/rust-random/rand/issues/1548)) - Rename trait `distr::DistString` -> `distr::SampleString` ([#&#8203;1548](https://github.com/rust-random/rand/issues/1548)) - Rename `distr::DistIter` -> `distr::Iter`, `distr::DistMap` -> `distr::Map` ([#&#8203;1548](https://github.com/rust-random/rand/issues/1548)) ##### API changes: Distributions - Relax `Sized` bound on `Distribution<T> for &D` ([#&#8203;1278](https://github.com/rust-random/rand/issues/1278)) - Remove impl of `Distribution<Option<T>>` for `StandardUniform` ([#&#8203;1526](https://github.com/rust-random/rand/issues/1526)) - Let distribution `StandardUniform` support all `NonZero*` types ([#&#8203;1332](https://github.com/rust-random/rand/issues/1332)) - Fns `{Uniform, UniformSampler}::{new, new_inclusive}` return a `Result` (instead of potentially panicking) ([#&#8203;1229](https://github.com/rust-random/rand/issues/1229)) - Distribution `Uniform` implements `TryFrom` instead of `From` for ranges ([#&#8203;1229](https://github.com/rust-random/rand/issues/1229)) - Add `UniformUsize` ([#&#8203;1487](https://github.com/rust-random/rand/issues/1487)) - Remove support for generating `isize` and `usize` values with `StandardUniform`, `Uniform` (except via `UniformUsize`) and `Fill` and usage as a `WeightedAliasIndex` weight ([#&#8203;1487](https://github.com/rust-random/rand/issues/1487)) - Add impl `DistString` for distributions `Slice<char>` and `Uniform<char>` ([#&#8203;1315](https://github.com/rust-random/rand/issues/1315)) - Add fn `Slice::num_choices` ([#&#8203;1402](https://github.com/rust-random/rand/issues/1402)) - Add fn `p()` for distribution `Bernoulli` to access probability ([#&#8203;1481](https://github.com/rust-random/rand/issues/1481)) ##### API changes: Weighted distributions - Add `pub` module `rand::distr::weighted`, moving `WeightedIndex` there ([#&#8203;1548](https://github.com/rust-random/rand/issues/1548)) - Add trait `weighted::Weight`, allowing `WeightedIndex` to trap overflow ([#&#8203;1353](https://github.com/rust-random/rand/issues/1353)) - Add fns `weight, weights, total_weight` to distribution `WeightedIndex` ([#&#8203;1420](https://github.com/rust-random/rand/issues/1420)) - Rename enum `WeightedError` to `weighted::Error`, revising variants ([#&#8203;1382](https://github.com/rust-random/rand/issues/1382)) and mark as `#[non_exhaustive]` ([#&#8203;1480](https://github.com/rust-random/rand/issues/1480)) ##### API changes: SIMD - Switch to `std::simd`, expand SIMD & docs ([#&#8203;1239](https://github.com/rust-random/rand/issues/1239)) ##### Reproducibility-breaking changes - Make `ReseedingRng::reseed` discard remaining data from the last block generated ([#&#8203;1379](https://github.com/rust-random/rand/issues/1379)) - Change fn `SmallRng::seed_from_u64` implementation ([#&#8203;1203](https://github.com/rust-random/rand/issues/1203)) - Allow `UniformFloat::new` samples and `UniformFloat::sample_single` to yield `high` ([#&#8203;1462](https://github.com/rust-random/rand/issues/1462)) - Fix portability of distribution `Slice` ([#&#8203;1469](https://github.com/rust-random/rand/issues/1469)) - Make `Uniform` for `usize` portable via `UniformUsize` ([#&#8203;1487](https://github.com/rust-random/rand/issues/1487)) - Fix `IndexdRandom::choose_multiple_weighted` for very small seeds and optimize for large input length / low memory ([#&#8203;1530](https://github.com/rust-random/rand/issues/1530)) ##### Reproducibility-breaking optimisations - Optimize fn `sample_floyd`, affecting output of `rand::seq::index::sample` and `rand::seq::SliceRandom::choose_multiple` ([#&#8203;1277](https://github.com/rust-random/rand/issues/1277)) - New, faster algorithms for `IteratorRandom::choose` and `choose_stable` ([#&#8203;1268](https://github.com/rust-random/rand/issues/1268)) - New, faster algorithms for `SliceRandom::shuffle` and `partial_shuffle` ([#&#8203;1272](https://github.com/rust-random/rand/issues/1272)) - Optimize distribution `Uniform`: use Canon's method (single sampling) / Lemire's method (distribution sampling) for faster sampling (breaks value stability; [#&#8203;1287](https://github.com/rust-random/rand/issues/1287)) - Optimize fn `sample_single_inclusive` for floats (+~20% perf) ([#&#8203;1289](https://github.com/rust-random/rand/issues/1289)) ##### Other optimisations - Improve `SmallRng` initialization performance ([#&#8203;1482](https://github.com/rust-random/rand/issues/1482)) - Optimise SIMD widening multiply ([#&#8203;1247](https://github.com/rust-random/rand/issues/1247)) ##### Other - Add `Cargo.lock.msrv` file ([#&#8203;1275](https://github.com/rust-random/rand/issues/1275)) - Reformat with `rustfmt` and enforce ([#&#8203;1448](https://github.com/rust-random/rand/issues/1448)) - Apply Clippy suggestions and enforce ([#&#8203;1448](https://github.com/rust-random/rand/issues/1448), [#&#8203;1474](https://github.com/rust-random/rand/issues/1474)) - Move all benchmarks to new `benches` crate ([#&#8203;1329](https://github.com/rust-random/rand/issues/1329), [#&#8203;1439](https://github.com/rust-random/rand/issues/1439)) and migrate to Criterion ([#&#8203;1490](https://github.com/rust-random/rand/issues/1490)) ##### Documentation - Improve `ThreadRng` related docs ([#&#8203;1257](https://github.com/rust-random/rand/issues/1257)) - Docs: enable experimental `--generate-link-to-definition` feature ([#&#8203;1327](https://github.com/rust-random/rand/issues/1327)) - Better doc of crate features, use `doc_auto_cfg` ([#&#8203;1411](https://github.com/rust-random/rand/issues/1411), [#&#8203;1450](https://github.com/rust-random/rand/issues/1450)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjQuMyIsInVwZGF0ZWRJblZlciI6IjM3LjQyNC4zIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
kjuulh added 1 commit 2025-01-28 02:36:13 +01:00
fix(deps): update rust crate rand to 0.9.0
Some checks failed
renovate/artifacts Artifact file update failure
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
c43b4aec82
kjuulh scheduled this pull request to auto merge when all checks succeed 2025-01-28 02:36:13 +01:00
Author
Owner

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path crates/flux-releaser/Cargo.toml --package rand@0.8.5 --precise 0.9.0
    Updating crates.io index
error: failed to select a version for the requirement `rand = "^0.8"`
candidate versions found which didn't match: 0.9.0
location searched: crates.io index
required by package `nkeys v0.4.4`
    ... which satisfies dependency `nkeys = "^0.4.1"` (locked to 0.4.4) of package `nats v0.25.0`
    ... which satisfies dependency `nats = "^0.25.0"` (locked to 0.25.0) of package `flux-releaser v0.1.0 (/tmp/renovate/repos/gitea/kjuulh/flux-releaser/crates/flux-releaser)`

### ⚠️ Artifact update problem Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is. ♻ Renovate will retry this branch, including artifacts, only when one of the following happens: - any of the package files in this branch needs updating, or - the branch becomes conflicted, or - you click the rebase/retry checkbox if found above, or - you rename this PR's title to start with "rebase!" to trigger it manually The artifact failure details are included below: ##### File name: Cargo.lock ``` Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path crates/flux-releaser/Cargo.toml --package rand@0.8.5 --precise 0.9.0 Updating crates.io index error: failed to select a version for the requirement `rand = "^0.8"` candidate versions found which didn't match: 0.9.0 location searched: crates.io index required by package `nkeys v0.4.4` ... which satisfies dependency `nkeys = "^0.4.1"` (locked to 0.4.4) of package `nats v0.25.0` ... which satisfies dependency `nats = "^0.25.0"` (locked to 0.25.0) of package `flux-releaser v0.1.0 (/tmp/renovate/repos/gitea/kjuulh/flux-releaser/crates/flux-releaser)` ```
kjuulh merged commit c43b4aec82 into main 2025-01-28 02:36:19 +01:00
Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: kjuulh/flux-releaser#87
No description provided.