You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Problematic/blocked changes (more likely to hit v2.0 than v1.0):
Can we merge BlockRng64 and BlockRng with impl<R: BlockRngCore<Item = u64>> RngCore for BlockRng<R>? No; firstly because Rust does not yet recognise that R: BlockRngCore<Item = u32> is distinct from R: BlockRngCore<Item = u64> and secondly because BlockRng64 has a half_used field. See Reduce block code #34.
Can we have impl<R: RngCore> RngCore for &mut R? No; it conflicts with impl<R: RngCore + ?Sized> TryRngCore for R since Rust does not yet support overlapping blanket impls (e.g. specialisation). See Let RngCore: TryRngCore<Error = Infallible> #45.
This issue tracks breaking changes for
rand_corev0.10 and other potential changes for v1.0.Breaking changes scheduled for v0.10:
rand_corerand#1668lewithutils#38RngCore: TryRngCore<Error = Infallible>#45?Sizedtypes inRng*: TryRng*blanket impls #51(Try)RngCoreto(Try)Rng#54core::error::Errorbound forTryRng::Error#58Problematic/blocked changes (more likely to hit v2.0 than v1.0):
BlockRng64andBlockRngwithimpl<R: BlockRngCore<Item = u64>> RngCore for BlockRng<R>?No; firstly because Rust does not yet recognise thatSee Reduce block code #34.R: BlockRngCore<Item = u32>is distinct fromR: BlockRngCore<Item = u64>and secondly becauseBlockRng64has ahalf_usedfield.UnwrapMutwithUnwrapErr<&mut Self>?It appears not since we don't haveSee Letimpl<R: TryRngCore> TryRngCore for &mut R(see next item).RngCore: TryRngCore<Error = Infallible>#45, Remove fn unwrap_mut #53.impl<R: RngCore> RngCore for &mut R?No; it conflicts withSee Letimpl<R: RngCore + ?Sized> TryRngCore for Rsince Rust does not yet support overlapping blanket impls (e.g. specialisation).RngCore: TryRngCore<Error = Infallible>#45.Other possible changes:
Seedtrait rand#1670blockmodule revisions. Little motivation in my opinion.