Skip to content

chore(deps): update rust crate rand_core to 0.10.0 - #26

Open
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/rand_core-0.x
Open

chore(deps): update rust crate rand_core to 0.10.0#26
renovate[bot] wants to merge 1 commit into
mainfrom
renovate/rand_core-0.x

Conversation

@renovate

@renovate renovate Bot commented Jun 15, 2026

Copy link
Copy Markdown

This PR contains the following updates:

Package Type Update Change
rand_core (source) dependencies minor 0.6.20.10.0

Release Notes

rust-lang-nursery/rand (rand_core)

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

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

Changes

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

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: (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.

@greptile-apps

greptile-apps Bot commented Jun 15, 2026

Copy link
Copy Markdown

PR author is in the excluded authors list.

@changeset-bot

changeset-bot Bot commented Jun 15, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 73cb8f9

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@wave-bugbot

wave-bugbot Bot commented Jun 16, 2026

Copy link
Copy Markdown

🟢 WAVE BugBot — clear

No confident findings on the changed lines.

Local review · $0 inference · wave-dispatch

@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch from 93ad6ae to 73cb8f9 Compare July 22, 2026 05:10
@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch from 73cb8f9 to f4d43a4 Compare August 6, 2026 03:22

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 3 potential issues.

Open in Devin Review

Comment thread sdk/rust/Cargo.toml Outdated
urlencoding = "2" # 0.5.1 — wallet_hook(privy) URL-encodes the wallet_id path segment
p256 = { version = "0.13", features = ["pkcs8", "ecdsa"] } # 0.6.2 — CDP-JWT (ES256) signing
rand_core = "0.6" # 0.6.2 — nonce randomness for CDP-JWT
rand_core = "0.10" # 0.6.2 — nonce randomness for CDP-JWT

@devin-ai-integration devin-ai-integration Bot Aug 6, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔴 Rust SDK no longer builds after the random-number library upgrade

The random-number library is upgraded to a version whose randomness source no longer exists (rand_core = "0.10" at sdk/rust/Cargo.toml:18) while the signing code still asks for that removed source, so the Rust SDK fails to build at all.
Impact: Anyone depending on or publishing the Rust client gets a broken package — no requests can be signed or sent.

Removed OsRng/RngCore items in rand_core 0.10 vs. the SDK's usage

sdk/rust/src/lib.rs:22-23 does use rand_core::{OsRng, RngCore}; OsRng.fill_bytes(&mut nonce_bytes); to build the CDP-JWT nonce. rand_core 0.10 removed OsRng (and the os_rng/getrandom support) entirely and renamed RngCore to Rng, so both imports resolve to nothing. Additionally, p256 = "0.13" (sdk/rust/Cargo.toml:17) is built against the rand_core 0.6 trait family, so even after fixing the import the two crates would not share RNG traits. Either keep rand_core = "0.6" (matching the accompanying comment and p256 0.13), or migrate the nonce generation to getrandom/rand and upgrade p256 accordingly.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment thread sdk/rust/Cargo.toml Outdated
urlencoding = "2" # 0.5.1 — wallet_hook(privy) URL-encodes the wallet_id path segment
p256 = { version = "0.13", features = ["pkcs8", "ecdsa"] } # 0.6.2 — CDP-JWT (ES256) signing
rand_core = "0.6" # 0.6.2 — nonce randomness for CDP-JWT
rand_core = "0.10" # 0.6.2 — nonce randomness for CDP-JWT

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Dependency change to the published client is not recorded in the changelog

A user-facing dependency requirement of the published Rust client is changed (rand_core = "0.10" at sdk/rust/Cargo.toml:18) without adding an entry under the Unreleased section of the changelog, which the repository contract requires.
Impact: Consumers of the SDK get an undocumented dependency change.

Repository rule

AGENTS.md states: "Conventional Commit titles; update CHANGELOG.md (Unreleased) for user-facing changes." The ## [Unreleased] section of CHANGELOG.md is empty in this PR.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Comment thread sdk/rust/Cargo.toml Outdated
Comment on lines +15 to +18
base64 = "0.22" # 0.5.1 — wallet_hook(privy) needs Basic auth encoding
urlencoding = "2" # 0.5.1 — wallet_hook(privy) URL-encodes the wallet_id path segment
p256 = { version = "0.13", features = ["pkcs8", "ecdsa"] } # 0.6.2 — CDP-JWT (ES256) signing
rand_core = "0.6" # 0.6.2 — nonce randomness for CDP-JWT
rand_core = "0.10" # 0.6.2 — nonce randomness for CDP-JWT

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔍 No lockfile or CI build for the Rust SDK to catch dependency drift

There is no Cargo.lock committed under sdk/rust/, and the change here is dependency-only, so nothing in the repo pins or verifies the resolved rand_core version. If CI does not run cargo build for sdk/rust, a bad requirement would only surface at publish time. Worth confirming a Rust build gate exists.

(Refers to lines 12-18)

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@macroscopeapp

macroscopeapp Bot commented Aug 6, 2026

Copy link
Copy Markdown

Approvability

Verdict: Not approved

Macroscope's review found this PR not approvable — This one-line dependency update affects the published Rust SDK's existing CDP-JWT signing path, while the unchanged code appears incompatible with the upgraded rand_core API and no Rust build gate verifies the result. The change also raises consumer compatibility and changelog concerns in a file owned by the streaming team.

Not approved because:

  • Credit balance exhausted. Approvability relies on correctness review in order to determine eligibility

Review your spending limits in Billing settings. You can add or adjust custom eligibility rules. Learn more.

@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch 2 times, most recently from ac26190 to 00f55a3 Compare August 7, 2026 13:26

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

Open in Devin Review

Comment thread sdk/rust/Cargo.toml Outdated
urlencoding = "2" # 0.5.1 — wallet_hook(privy) URL-encodes the wallet_id path segment
p256 = { version = "0.13", features = ["pkcs8", "ecdsa"] } # 0.6.2 — CDP-JWT (ES256) signing
rand_core = "0.6" # 0.6.2 — nonce randomness for CDP-JWT
rand_core = "0.10" # 0.6.2 — nonce randomness for CDP-JWT

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔍 No CHANGELOG entry for the dependency change of a published crate

AGENTS.md asks for a CHANGELOG.md Unreleased entry for user-facing changes. A dependency major bump in a published crate (wave-dispatch) changes the resolved dependency graph for consumers, so it is arguably user-facing; the Unreleased section is currently empty. Worth confirming the repo's convention for dependency-only PRs (e.g. Renovate-generated) before requiring an entry.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch from 00f55a3 to e69221b Compare August 14, 2026 17:23

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Devin Review found 1 new potential issue.

Open in Devin Review

Comment thread sdk/rust/Cargo.toml Outdated
urlencoding = "2" # 0.5.1 — wallet_hook(privy) URL-encodes the wallet_id path segment
p256 = { version = "0.13", features = ["pkcs8", "ecdsa"] } # 0.6.2 — CDP-JWT (ES256) signing
rand_core = "0.6" # 0.6.2 — nonce randomness for CDP-JWT
rand_core = "0.10" # 0.6.2 — nonce randomness for CDP-JWT

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔍 Stale inline version comment and MSRV/edition implications of the bump

The trailing comment still reads # 0.6.2 — nonce randomness for CDP-JWT, which refers to the SDK feature version rather than the crate version, so it is not inconsistent by itself. More relevant: rand_core 0.10 requires edition 2024 and MSRV 1.85, while sdk/rust/Cargo.toml:4 declares edition = "2021". Consuming a 2024-edition dependency is allowed, but the effective MSRV of the published wave-dispatch crate silently rises to 1.85; if the project documents or CI-tests an older toolchain, that needs updating alongside this bump.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch from e69221b to c358a4d Compare August 26, 2026 23:35
@codeant-ai

codeant-ai Bot commented Aug 26, 2026

Copy link
Copy Markdown

Your free trial PR review limit of 300 PRs has been reached. Please upgrade your plan to continue using CodeAnt AI.

@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch from c358a4d to 6206fbf Compare September 3, 2026 08:13
@codeant-ai

codeant-ai Bot commented Sep 3, 2026

Copy link
Copy Markdown

Your free trial PR review limit of 300 PRs has been reached. Please upgrade your plan to continue using CodeAnt AI.

@renovate renovate Bot changed the title chore(deps): update rust crate rand_core to 0.10 chore(deps): update rust crate rand_core to 0.10.0 Sep 3, 2026
@renovate
renovate Bot force-pushed the renovate/rand_core-0.x branch from 6206fbf to 9e16ad2 Compare September 3, 2026 18:17
@codeant-ai

codeant-ai Bot commented Sep 3, 2026

Copy link
Copy Markdown

Your free trial PR review limit of 300 PRs has been reached. Please upgrade your plan to continue using CodeAnt AI.

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.

0 participants