All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Added x86_64-unknown-hermit support #236
- Replace build.rs with link attributes. #205
- Add support for getrandom syscall on DragonFly BSD. #210
- Improve Node.js detection. #215
- Forward
rustc-dep-of-stdto dependencies. #198 - Highlight feature-dependend functionality in documentation using the
doc_cfgfeature. #200
- Multithreaded WASM support. #165
The following (off by default) Cargo features have been added:
"rdrand"- use the RDRAND instruction onno_stdx86/x86_64targets #133"js"- use JavaScript calls onwasm32-unknown-unknown#149- Replaces the
stdwebandwasm-bindgenfeatures (which are removed)
- Replaces the
"custom"- allows a user to specify a custom implementation #109
- Unsupported targets no longer compile #107
- Change/Add
Errorconstants #120 - Only impl
stdtraits when the"std"Cargo feature is specified #106 - Remove official support for Hermit, L4Re, and UEFI #133
- Remove optional
"log"dependency #131 - Update minimum supported Linux kernel to 2.6.32 #153
- Update MSRV to 1.34 #159
- Update
cfg-ifto v1.0. #173 - Implement
std::error::Errorfor theErrortype on additional targets. #169
- Multithreaded WASM support. #171
- Remove use of spin-locks in the
use_filemodule. #125 - Update
wasito v0.9. #126 - Do not read errno value on DragonFlyBSD to fix compilation failure. #129
- VxWorks targets support. #86
- If zero-length slice is passed to the
getrandomfunction, always returnOk(())immediately without doing any calls to the underlying operating system. #104 - Use the
kern.arandomsysctl on NetBSD. #115
- Update wasi dependency from v0.5 to v0.7. #100
- Implement
std-dependent traits for selected targets even ifstdfeature is disabled. (backward compatibility with v0.1.8) #96
- Use the dummy implementation on
wasm32-unknown-unknowneven with the disableddummyfeature. #90
- Fix CSP error for
wasm-bindgen. #92
- Remove
stddependency for opening and reading files. #58 - Use
wasiisntead oflibcon WASI target. #64 - By default emit a compile-time error when built for an unsupported target.
This behaviour can be disabled by using the
dummyfeature. #71
- Explicitly specify types to arguments of 'libc::syscall'. #74
- Support for hermit and l4re. #61
Error::raw_os_errormethod,Error::INTERNAL_STARTandError::CUSTOM_STARTconstants. Uselibcfor retrieving OS error descriptions. #54
- Remove
lazy_staticdependency and use custom structures for lock-free initialization. #51 #52 - Try
getrandom()first on FreeBSD. #57
- Bitrig support. #56
Error::UNKNOWN,Error::UNAVAILABLE. #54
- Minor change of RDRAND AMD bug handling. #48
- Use shared
Fileinstead of shared file descriptor. #44 - Workaround for RDRAND hardware bug present on some AMD CPUs. #43
- Try
getentropyand then fallback to/dev/randomon macOS. #38
- Add support for
x86_64-unknown-uefitarget by using RDRAND with CPUID feature detection. #30
- Fix long buffer issues on Windows and Linux. #31 #32
- Check
EPERMin addition toENOSYSon Linux. #37
- Improve efficiency by sharing file descriptor across threads. #13
- Remove
cloudabi,winapi, andfuchsia-cprngdependencies. #40 - Improve RDRAND implementation. #24
- Don't block during syscall detection on Linux. #26
- Increase consistency with libc implementation on FreeBSD. #36
- Apply
rustfmt. #39
- Update for
wasm32-unknown-wasibeing renamed towasm32-wasi, and for WASI being categorized as an OS.
- Add support for
wasm32-unknown-wasitarget.
- Enable std functionality for CloudABI by default.
Publish initial implementation.
Publish an empty template library.