Closed
Description
In the process of addressing #94, we realized that some of the changes we want to do would require breaking backwards compatibility. If we are going to release a version 0.2, we should consider other changes to getrandom
.
A potential list is below. @dhardy and @newpavlov feel free to edit this to include your own ideas.
- Only expose the
std
traits if thestd
feature is enabled (see trait impl disappeared without bumping major version #94 and Add back in std-only trait definitions #96)- This is needed for Use getrandom crate rust-lang/rust#62082
- Think about having default features
- What should these be?
-
Rename features to allow for grouping of dependencieswasm-bindgen -> bindgen
, would make it much easier to usejs_sys
orweb_sys
.- Moot, now that Add support for Custom RNGs #109 removed those features.
- The default behavior for
wasm32-unknown-unknown
(with no explicit features). Options are:- Always fail (current implementation)
- Compile error (current 0.2 behavior, see Feature for using CPU-based RNG #84)
- Default to
bindgen
- Cleanup
wasm32
error codes- Implemented in wasm32: Unify error codes and implementations #146
- Custom Randomness (embedded source compatibility #4)
- Can we make a solution that does not require unsafe code for users?
- Feature for CPU randomness (Feature for using CPU-based RNG #84)
- If we add this, then it might make sense to remove explicit support for
hermit
,l4re
, anduefi
and just use this feature instead, as these platforms (especially UEFI) have multiple ways to get randomness.
- If we add this, then it might make sense to remove explicit support for
- Minimum Rust Version
- Minor Cleanups for 0.2 #136 increases the MSRV to 1.33
- Do we want to increase this further? Bumping to 1.34 would let us use
TryInto
, which could be useful. - Update MSRV to 1.34 #159 Bumped to 1.34
- Documentation
- Implementation at Update docs for 0.2 Release #135
If you have suggestions, please comment!
Metadata
Metadata
Assignees
Labels
No labels