ACE-RISCV
ACE-RISCV copied to clipboard
Update Rust crate rand to 0.9.0
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.2
Deprecated
- Deprecate
rand::rngs::mockmodule andStepRnggenerator (#1634)
Additions
- Enable
WeightedIndex<usize>(de)serialization (#1646)
v0.9.1
Security and unsafe
Fixes
- Fix feature
simd_supportfor recent nightly rust (#1586)
Changes
- Allow
fn rand::seq::index::sample_weightedandfn IndexedRandom::choose_multiple_weightedto return fewer thanamountresults (#1623), reverting an undocumented change (#1382) to the previous release.
Additions
v0.9.0
Security and unsafe
- Policy: "rand is not a crypto library" (#1514)
- Remove fork-protection from
ReseedingRngandThreadRng. Instead, it is recommended to callThreadRng::reseedon fork. (#1379) - Use
zerocopyto replace someunsafecode (#1349, #1393, #1446, #1502)
Dependencies
- Bump the MSRV to 1.63.0 (#1207, #1246, #1269, #1341, #1416, #1536); note that 1.60.0 may work for dependents when using
--ignore-rust-version - Update to
rand_corev0.9.0 (#1558)
Features
- Support
stdfeature withoutgetrandomorrand_chacha(#1354) - Enable feature
small_rngby default (#1455) - Remove implicit feature
rand_chacha; usestd_rnginstead. (#1473) - Rename feature
serde1toserde(#1477) - Rename feature
getrandomtoos_rng(#1537) - Add feature
thread_rng(#1547)
API changes: rand_core traits
- Add fn
RngCore::read_adapterimplementingstd::io::Read(#1267) - Add trait
CryptoBlockRng: BlockRngCore; maketrait CryptoRng: RngCore(#1273) - Add traits
TryRngCore,TryCryptoRng(#1424, #1499) - Rename
fn SeedableRng::from_rng->try_from_rngand add infallible variantfn from_rng(#1424) - Rename
fn SeedableRng::from_entropy->from_os_rngand add fallible variantfn try_from_os_rng(#1424) - Add bounds
CloneandAsRefto associated typeSeedableRng::Seed(#1491)
API changes: Rng trait and top-level fns
- Rename fn
rand::thread_rng()torand::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_iterasrandom_iter(#1305, #1500) - Rename fn
Rng::gentorandomto avoid conflict with the newgenkeyword in Rust 2024 (#1438) - Rename fns
Rng::gen_rangetorandom_range,gen_booltorandom_bool,gen_ratiotorandom_ratio(#1505) - Annotate panicking methods with
#[track_caller](#1442, #1447)
API changes: RNGs
- Fix
<SmallRng as SeedableRng>::Seedsize to 256 bits (#1455) - Remove first parameter (
rng) ofReseedingRng::new(#1533)
API changes: Sequences
- Split trait
SliceRandomintoIndexedRandom,IndexedMutRandom,SliceRandom(#1382) - Add
IndexedRandom::choose_multiple_array,index::sample_array(#1453, #1469)
API changes: Distributions: renames
- Rename module
rand::distributionstorand::distr(#1470) - Rename distribution
StandardtoStandardUniform(#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
Sizedbound onDistribution<T> for &D(#1278) - Remove impl of
Distribution<Option<T>>forStandardUniform(#1526) - Let distribution
StandardUniformsupport allNonZero*types (#1332) - Fns
{Uniform, UniformSampler}::{new, new_inclusive}return aResult(instead of potentially panicking) (#1229) - Distribution
UniformimplementsTryFrominstead ofFromfor ranges (#1229) - Add
UniformUsize(#1487) - Remove support for generating
isizeandusizevalues withStandardUniform,Uniform(except viaUniformUsize) andFilland usage as aWeightedAliasIndexweight (#1487) - Add impl
DistStringfor distributionsSlice<char>andUniform<char>(#1315) - Add fn
Slice::num_choices(#1402) - Add fn
p()for distributionBernoullito access probability (#1481)
API changes: Weighted distributions
- Add
pubmodulerand::distr::weighted, movingWeightedIndexthere (#1548) - Add trait
weighted::Weight, allowingWeightedIndexto trap overflow (#1353) - Add fns
weight, weights, total_weightto distributionWeightedIndex(#1420) - Rename enum
WeightedErrortoweighted::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::reseeddiscard remaining data from the last block generated (#1379) - Change fn
SmallRng::seed_from_u64implementation (#1203) - Allow
UniformFloat::newsamples andUniformFloat::sample_singleto yieldhigh(#1462) - Fix portability of distribution
Slice(#1469) - Make
Uniformforusizeportable viaUniformUsize(#1487) - Fix
IndexdRandom::choose_multiple_weightedfor very small seeds and optimize for large input length / low memory (#1530)
Reproducibility-breaking optimisations
- Optimize fn
sample_floyd, affecting output ofrand::seq::index::sampleandrand::seq::SliceRandom::choose_multiple(#1277) - New, faster algorithms for
IteratorRandom::chooseandchoose_stable(#1268) - New, faster algorithms for
SliceRandom::shuffleandpartial_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_inclusivefor floats (+~20% perf) (#1289)
Other optimisations
Other
- Add
Cargo.lock.msrvfile (#1275) - Reformat with
rustfmtand enforce (#1448) - Apply Clippy suggestions and enforce (#1448, #1474)
- Move all benchmarks to new
benchescrate (#1329, #1439) and migrate to Criterion (#1490)
Documentation
Configuration
📅 Schedule: 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.
⚠️ 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: security-monitor/Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path security-monitor/rust-crates/riscv_cove_tap/Cargo.toml --workspace
error: failed to acquire package cache lock
Caused by:
failed to open: /home/ubuntu/.cargo/.package-cache
Caused by:
failed to create directory `/home/ubuntu/.cargo`
Caused by:
File exists (os error 17)